Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> प्रोग्रामिंग

JSP पेज का उपयोग करके अटैचमेंट के साथ ईमेल कैसे भेजें?

निम्न आपकी मशीन से अटैचमेंट के साथ ईमेल भेजने का एक उदाहरण है:

उदाहरण: SendAttachmentEmail.jsp

<%@ page import="java.io.*,java.util.*,javax.mail.*" %>
<%@ page import="javax.mail.internet.*,javax.activation.*" %>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%
    String result;
    // प्राप्तकर्ता का ईमेल आईडी उल्लेख करना आवश्यक
    String to = "abcd@gmail.com";
    // प्रेषक का ईमेल आईडी उल्लेख करना आवश्यक
    String from = "mcmohd@gmail.com";
    // मान लें कि आप लोकलहोस्ट से ईमेल भेज रहे हैं
    String host = "localhost";
    
    // सिस्टम प्रॉपर्टीज ऑब्जेक्ट प्राप्त करें
    Properties properties = System.getProperties();
    // मेल सर्वर सेटअप करें
    properties.setProperty("mail.smtp.host", host);
    
    // डिफ़ॉल्ट Session ऑब्जेक्ट प्राप्त करें
    Session mailSession = Session.getDefaultInstance(properties);
    
    try {
        // डिफ़ॉल्ट MimeMessage ऑब्जेक्ट बनाएं
        MimeMessage message = new MimeMessage(mailSession);
        // From: हेडर फील्ड सेट करें
        message.setFrom(new InternetAddress(from));
        // To: हेडर फील्ड सेट करें
        message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
        // Subject: हेडर फील्ड सेट करें
        message.setSubject("This is the Subject Line!");
        
        // संदेश भाग बनाएं
        BodyPart messageBodyPart = new MimeBodyPart();
        // संदेश भरें
        messageBodyPart.setText("This is message body");
        
        // मल्टीपार्ट संदेश बनाएं
        Multipart multipart = new MimeMultipart();
        // टेक्स्ट संदेश भाग सेट करें
        multipart.addBodyPart(messageBodyPart);
        
        // भाग दो अटैचमेंट है
        messageBodyPart = new MimeBodyPart();
        String filename = "file.txt";
        DataSource source = new FileDataSource(filename);
        messageBodyPart.setDataHandler(new DataHandler(source));
        messageBodyPart.setFileName(filename);
        multipart.addBodyPart(messageBodyPart);
        
        // पूर्ण संदेश भाग भेजें
        message.setContent(multipart);
        
        // संदेश भेजें
        Transport.send(message);
        String title = "Send Email";
        result = "Sent message successfully....";
    } catch (MessagingException mex) {
        mex.printStackTrace();
        result = "Error: unable to send message....";
    }
%>
<html>
<head>
    <title>Send Attachment Email using JSP</title>
</head>
<body>
    <center>
        <h1>Send Attachment Email using JSP</h1>
    </center>
    <p align="center">
        <% out.println("Result: " + result + "\n"); %>
    </p>
</body>
</html>

उपयोगकर्ता प्रमाणीकरण भाग

यदि ईमेल सर्वर के लिए प्रमाणीकरण उद्देश्य से यूजर आईडी और पासवर्ड प्रदान करना आवश्यक है, तो आप इन प्रॉपर्टीज को निम्नानुसार सेट कर सकते हैं:

props.setProperty("mail.user", "myuser");
props.setProperty("mail.password", "mypwd");

आउटपुट

Send Attachment Email using JSP
Result: Sent message successfully....

महत्वपूर्ण नोट्स

  • निर्भरताएं: JavaMail API (mail.jar) और JavaBeans Activation Framework (activation.jar) आवश्यक हैं। Java 6+ में activation शामिल है।
  • SMTP सर्वर: "localhost" एक चल रहे SMTP सर्वर की मानता है। उत्पादन के लिए वास्तविक SMTP होस्ट (उदाहरण: smtp.gmail.com पोर्ट 587 TLS के साथ) का उपयोग करें।
  • सुरक्षा: उत्पादन में हार्डकोडेड क्रेडेंशियल्स से बचें; JNDI मेल सत्र या कॉन्फ़िगरेशन फ़ाइलों का उपयोग करें।
  • बड़ी फ़ाइलें: बड़ी अटैचमेंट्स के लिए स्ट्रीमिंग पर विचार करें (JavaMail बड़े डेटा को मेमोरी में बफर करता है)।
  • अपवाद हैंडलिंग: विशिष्ट अपवादों (AuthenticationFailedException, SendFailedException) को पकड़ें बेहतर त्रुटि रिपोर्टिंग के लिए।
  1. ईमेल कैसे भेजें ईमेल कैसे भेजें

    क्या आप एक ईमेल भेजना चाहते हैं और नहीं जानते कि कहां से शुरू करें? या शायद आप जानते हैं कि ईमेल कैसे भेजते हैं लेकिन बेहतर ईमेल तैयार करने के लिए कुछ टिप्स चाहते हैं। हम यहां मदद के लिए हैं। ईमेल कैसे भेजें एक साधारण काम लग सकता है, लेकिन शानदार ईमेल भेजना नहीं है। अगली बार जब आप ईमेल के माध्यम से

  1. Google Pay से ईमेल द्वारा पैसे भेजें: चरण-दर-चरण गाइड Google Pay से ईमेल द्वारा पैसे भेजें: चरण-दर-चरण गाइड

    इलेक्ट्रॉनिक भुगतान 1871 में वेस्टर्न यूनियन द्वारा मनी ट्रांसफर पेश करने के बाद से एक लंबा सफर तय कर चुके हैं। ऑनलाइन भुगतान सेवाएं अब आम हो गई हैं, और TransUnion द्वारा प्रायोजित और The Economist Intelligence Unit द्वारा किए गए एक हालिया रिपोर्ट में पाया गया है कि किसी कंपनी के व्यवसाय से बाहर जान

  1. SendGrid API के साथ ईमेल न्यूज़लेटर भेजें: पूर्ण चरण-दर-चरण ट्यूटोरियल SendGrid API के साथ ईमेल न्यूज़लेटर भेजें: पूर्ण चरण-दर-चरण ट्यूटोरियल

    वर्षों से, क्विंसी लार्सन ने freeCodeCamp के Mail for Good प्लेटफॉर्म के माध्यम से एक साप्ताहिक ईमेल न्यूज़लेटर भेजा, जो Amazon SES द्वारा संचालित है। हाल ही में उन्होंने इस प्रक्रिया को SendGrid पर स्थानांतरित कर दिया। इस लेख में, मैं आपको दिखाऊंगा कि मैंने इसे पूरा करने के लिए एक टूल कैसे बनाया।