Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Java - Mengirim Email

Untuk mengirim email menggunakan Aplikasi Java Anda cukup sederhana tetapi untuk memulainya Anda harus memiliki JavaMail API dan Java Activation Framework (JAF) diinstal pada mesin Anda.

Unduh dan unzip file-file ini, di direktori tingkat atas yang baru dibuat Anda akan menemukan sejumlah file jar untuk kedua aplikasi. Anda perlu menambahkan mail.jar dan activation.jar file di CLASSPATH Anda.

Kirim Email Sederhana

Berikut adalah contoh untuk mengirim e-mail sederhana dari mesin Anda. Diasumsikan bahwa localhost . Anda terhubung ke Internet dan cukup mampu untuk mengirim email.

Contoh

// File Name SendEmail.java

import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;

public class SendEmail {

   public static void main(String [] args) {    
      // Recipient's email ID needs to be mentioned.
      String to = "[email protected]";

      // Sender's email ID needs to be mentioned
      String from = "[email protected]";

      // Assuming you are sending email from localhost
      String host = "localhost";

      // Get system properties
      Properties properties = System.getProperties();

      // Setup mail server
      properties.setProperty("mail.smtp.host", host);

      // Get the default Session object.
      Session session = Session.getDefaultInstance(properties);

      try {
         // Create a default MimeMessage object.
         MimeMessage message = new MimeMessage(session);

         // Set From: header field of the header.
         message.setFrom(new InternetAddress(from));

         // Set To: header field of the header.
         message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));

         // Set Subject: header field
         message.setSubject("This is the Subject Line!");

         // Now set the actual message
         message.setText("This is actual message");

         // Send message
         Transport.send(message);
         System.out.println("Sent message successfully....");
      } catch (MessagingException mex) {
         mex.printStackTrace();
      }
   }
}

Kompilasi dan jalankan program ini untuk mengirim email sederhana

Keluaran

$ java SendEmail
Sent message successfully....

Jika Anda ingin mengirim email ke beberapa penerima, maka metode berikut akan digunakan untuk menentukan beberapa ID email −

void addRecipients(Message.RecipientType type, Address[] addresses)
   throws MessagingException

Berikut adalah deskripsi parameter

Kirim Email HTML

Berikut adalah contoh untuk mengirim email HTML dari mesin Anda. Di sini diasumsikan bahwa localhost . Anda terhubung ke Internet dan cukup mampu untuk mengirim email.

Contoh ini sangat mirip dengan yang sebelumnya, kecuali di sini kita menggunakan metode setContent() untuk menyetel konten yang argumen keduanya adalah "teks/html" untuk menentukan bahwa konten HTML disertakan dalam pesan.

Dengan menggunakan contoh ini, Anda dapat mengirim konten HTML sebesar yang Anda suka.

Contoh

// File Name SendHTMLEmail.java

import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;

public class SendHTMLEmail {

   public static void main(String [] args) {
      // Recipient's email ID needs to be mentioned.
      String to = "[email protected]";

      // Sender's email ID needs to be mentioned
      String from = "[email protected]";

      // Assuming you are sending email from localhost
      String host = "localhost";

      // Get system properties
      Properties properties = System.getProperties();

      // Setup mail server
      properties.setProperty("mail.smtp.host", host);

      // Get the default Session object.
      Session session = Session.getDefaultInstance(properties);

      try {
         // Create a default MimeMessage object.
         MimeMessage message = new MimeMessage(session);

         // Set From: header field of the header.
         message.setFrom(new InternetAddress(from));

         // Set To: header field of the header.
         message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));

         // Set Subject: header field
         message.setSubject("This is the Subject Line!");

         // Send the actual HTML message, as big as you like
         message.setContent("<h1>This is actual message</h1>", "text/html");

         // Send message
         Transport.send(message);
         System.out.println("Sent message successfully....");
      } catch (MessagingException mex) {
         mex.printStackTrace();
      }
   }
}

Kompilasi dan jalankan program ini untuk mengirim email HTML

Keluaran

$ java SendHTMLEmail
Sent message successfully....

Kirim Lampiran dalam Email

Berikut adalah contoh untuk mengirim email dengan lampiran dari mesin Anda. Di sini diasumsikan bahwa localhost . Anda terhubung ke internet dan cukup mampu untuk mengirim email.

Contoh

// File Name SendFileEmail.java

import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;

public class SendFileEmail {

   public static void main(String [] args) {     
      // Recipient's email ID needs to be mentioned.
      String to = "[email protected]";

      // Sender's email ID needs to be mentioned
      String from = "[email protected]";

      // Assuming you are sending email from localhost
      String host = "localhost";

      // Get system properties
      Properties properties = System.getProperties();

      // Setup mail server
      properties.setProperty("mail.smtp.host", host);

      // Get the default Session object.
      Session session = Session.getDefaultInstance(properties);

      try {
         // Create a default MimeMessage object.
         MimeMessage message = new MimeMessage(session);

         // Set From: header field of the header.
         message.setFrom(new InternetAddress(from));

         // Set To: header field of the header.
         message.addRecipient(Message.RecipientType.TO,new InternetAddress(to));

         // Set Subject: header field
         message.setSubject("This is the Subject Line!");

         // Create the message part 
         BodyPart messageBodyPart = new MimeBodyPart();

         // Fill the message
         messageBodyPart.setText("This is message body");
         
         // Create a multipar message
         Multipart multipart = new MimeMultipart();

         // Set text message part
         multipart.addBodyPart(messageBodyPart);

         // Part two is attachment
         messageBodyPart = new MimeBodyPart();
         String filename = "file.txt";
         DataSource source = new FileDataSource(filename);
         messageBodyPart.setDataHandler(new DataHandler(source));
         messageBodyPart.setFileName(filename);
         multipart.addBodyPart(messageBodyPart);

         // Send the complete message parts
         message.setContent(multipart );

         // Send message
         Transport.send(message);
         System.out.println("Sent message successfully....");
      } catch (MessagingException mex) {
         mex.printStackTrace();
      }
   }
}

Kompilasi dan jalankan program ini untuk mengirim email HTML

Keluaran

$ java SendFileEmail
Sent message successfully....

Bagian Otentikasi Pengguna

Jika diperlukan untuk memberikan ID pengguna dan Kata Sandi ke server email untuk tujuan otentikasi, maka Anda dapat mengatur properti ini sebagai berikut −

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

Mekanisme pengiriman email lainnya akan tetap seperti yang dijelaskan di atas.


java

  1. Operator Jawa
  2. Komentar Jawa
  3. Java untuk setiap Loop
  4. String Jawa
  5. Antarmuka Jawa
  6. Kelas Anonim Java
  7. Java mencoba-dengan-sumber daya
  8. Anotasi Jawa
  9. Pernyataan Jawa
  10. Vektor Jawa