Buat dan Kirim Email Outlook Java

Aspose.Email for Java adalah API pemrosesan email andal yang menyediakan semua fitur dasar dan lanjutan untuk manajemen email. Ini memungkinkan Anda membuat pesan email Outlook, membaca email yang ada, dan mengonversi pesan MSG, EML, PST, OST, MBOX, dan MHT ke format lain dari dalam aplikasi Java Anda. Pada artikel ini, saya akan mendemonstrasikan beberapa fitur dasar namun penting tentang cara membuat dan mengirim email Outlook menggunakan Java.

Saya akan membahas fitur berikut untuk membuat dan mengirim email dalam artikel ini:

Java Email API - Instalasi

Aspose.Email for Java dapat diunduh dari bagian Unduhan atau diinstal menggunakan konfigurasi Maven berikut.

Gudang:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Ketergantungan:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>20.3</version>
    <classifier>jdk16</classifier>
</dependency>

Buat Pesan Email Outlook menggunakan Java

Aspose.Email for Java memungkinkan Anda membuat pesan email dan menyimpannya dalam format email yang Anda inginkan termasuk EML, EMLX, MSG, dan MHTML. Berikut adalah langkah-langkah untuk membuat pesan email dan menyimpannya sebagai file.

  • Buat instance dari kelas MailMessage.
  • Atur properti pesan seperti Subject, Body, To, CC, dll.
  • Tambahkan lampiran jika diperlukan.
  • Simpan pesan email dalam format yang Anda inginkan menggunakan metode MailMessage.save().

Contoh kode berikut menunjukkan cara membuat pesan email Outlook menggunakan Java.

MailMessage message = new MailMessage();

// Tetapkan subjek pesan, isi dan informasi pengirim
message.setSubject("New message created by Aspose.Email for .NET");
message.setBody("This is the body of the email.");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));

// Tambahkan Ke penerima dan penerima CC
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));

// Tambah lampiran
message.getAttachments().addItem(new Attachment("word.docx"));

// Simpan pesan dalam format EML, EMLX, MSG dan MHTML
message.save("EmailMessage.eml", SaveOptions.getDefaultEml());
message.save("EmailMessage.emlx", SaveOptions.createSaveOptions(MailMessageSaveType.getEmlxFormat()));
message.save("EmailMessage.msg", SaveOptions.getDefaultMsgUnicode());
message.save("EmailMessage.mhtml", SaveOptions.getDefaultMhtml());

Buat Email dengan Tubuh HTML menggunakan Java

Pada contoh sebelumnya, kami hanya membuat email teks biasa dan menyimpannya sebagai file email. Namun, sebagian besar email saat ini dibuat dengan badan HTML untuk mengatur dan menyajikan konten email dengan baik. Dalam hal ini, tag HTML digunakan untuk menentukan tata letak email. Mari kita lihat cara membuat email dengan badan HTML menggunakan Aspose.Email for Java.

Contoh kode berikut menunjukkan cara membuat email dengan badan HTML menggunakan Java.

MailMessage message = new MailMessage();

// Tetapkan subjek pesan, isi dan informasi pengirim
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));

// Tambahkan Ke penerima dan penerima CC
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false)); 

// Simpan pesan dalam format EML, EMLX, MSG dan MHTML
message.save("EmailMessage.eml", SaveOptions.getDefaultEml()); 

Buat Email dengan Encoding Tertentu menggunakan Java

Aspose.Email for Java juga memungkinkan Anda menyetel penyandian teks yang diinginkan untuk pesan email. Standar pengkodean digunakan untuk memberi tahu aplikasi email atau browser tentang cara menafsirkan karakter di badan email. Berikut langkah-langkah membuat email dengan standar encoding tertentu.

Contoh kode berikut menunjukkan cara membuat email dengan standar penyandian tertentu menggunakan Java.

MailMessage message = new MailMessage();

// Tetapkan subjek pesan, isi dan informasi pengirim
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));

// Tentukan pengkodean 
message.setBodyEncoding(Charset.forName("US-ASCII"));

// Tambahkan Ke penerima dan penerima CC
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false)); 

// Simpan pesan dalam format EML, EMLX, MSG dan MHTML
message.save("EmailMessage.eml", SaveOptions.getDefaultEml()); 

Kirim Email Outlook menggunakan Java

Setelah Anda membuat email, Anda dapat mengirimkannya ke penerima menggunakan Simple Mail Transfer Protocol (SMTP). Berikut langkah-langkah mengirim pesan email menggunakan Aspose.Email for Java.

  • Buat pesan email baru atau muat yang sudah ada menggunakan kelas MailMessage.
  • Buat instance dari kelas SmtpClient dan atur host, nama pengguna, kata sandi, dan portnya.
  • Kirim email menggunakan metode SmtpClient.send().

Contoh kode berikut menunjukkan cara mengirim email melalui klien SMTP di Java.

MailMessage message = new MailMessage();

// Tetapkan subjek pesan, badan, dan informasi pengirim
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));

// Tentukan pengkodean 
message.setBodyEncoding(Charset.forName("US-ASCII"));

// Tambahkan Ke penerima dan penerima CC
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false)); 

// Buat instance Kelas SmtpClient
SmtpClient client = new SmtpClient();

// Tentukan server host surat Anda, Nama Pengguna, Kata Sandi, Port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);

try
{
	// Client.Send akan mengirimkan pesan ini
	client.send(message); 
}

catch (Exception ex)
{
	ex.printStackTrace();
}

Kirim Email Secara Asinkron menggunakan Java

Aspose.Email for Java juga memungkinkan Anda mengirim email secara asinkron. Untuk ini, Anda dapat menggunakan metode SmtpClient.beginSend(). Contoh kode berikut menunjukkan cara mengirim email secara asinkron menggunakan Java.

MailMessage message = new MailMessage();

// Tetapkan subjek pesan, isi dan informasi pengirim
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));

// Tentukan pengkodean 
message.setBodyEncoding(Charset.forName("US-ASCII"));

// Tambahkan Ke penerima dan penerima CC
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false)); 

// Buat instance Kelas SmtpClient
SmtpClient client = new SmtpClient();

// Tentukan server host surat Anda, Nama Pengguna, Kata Sandi, Port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);

try
{
	// Client.beginSend akan mengirimkan pesan ini
	client.beginSend(message); 
}

catch (Exception ex)
{
	ex.printStackTrace();
}

Kirim Email dengan Tanda Terima Baca menggunakan Java

Anda juga dapat menambahkan permintaan tanda terima baca ke pesan email. Fitur ini memungkinkan Anda menerima notifikasi setelah email diterima. Berikut adalah langkah-langkah untuk membuat dan mengirimkan pesan email yang berisi permintaan read receipt.

Contoh kode berikut menunjukkan cara mengirim email yang berisi tanda terima baca menggunakan Java.

MailMessage message = new MailMessage();

// Tetapkan subjek pesan, badan, dan informasi pengirim
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));

// Tetapkan opsi pemberitahuan
message.setDeliveryNotificationOptions(DeliveryNotificationOptions.OnSuccess);
message.getHeaders().add("Return-Receipt-To", "from@domain.com");
message.getHeaders().add("Disposition-Notification-To", "from@domain.com"); 

// Tambahkan ke penerima 
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false)); 

// Buat instance Kelas SmtpClient
SmtpClient client = new SmtpClient();

// Tentukan server host surat Anda, Nama Pengguna, Kata Sandi, Port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);

try
{
	// Client.Send akan mengirimkan pesan ini
	client.send(message);
}

catch (Exception ex)
{
	ex.printStackTrace();
}

Kirim Email Massal menggunakan Java

Mungkin ada kasus ketika Anda perlu mengirim banyak email yang berbeda. Dalam hal ini, Anda cukup menambahkan semua pesan email ke objek MailMessageCollection dan meneruskannya ke klien SMTP untuk dikirim. Contoh kode berikut menunjukkan cara mengirim email massal menggunakan Java.

// Buat instance kelas MailMessage dan tentukan Ke, Dari, Subjek, dan Pesan
MailMessage message1 = new MailMessage("msg1@from.com", "msg1@to.com", "Subject1", "message1, how are you?");
MailMessage message2 = new MailMessage("msg1@from.com", "msg2@to.com", "Subject2", "message2, how are you?");
MailMessage message3 = new MailMessage("msg1@from.com", "msg3@to.com", "Subject3", "message3, how are you?");

// Buat instance MailMessageCollection dan tambahkan pesan email ke dalamnya
MailMessageCollection manyMsg = new MailMessageCollection();
manyMsg.addItem(message1);
manyMsg.addItem(message2);
manyMsg.addItem(message3);		

// Buat SmtpClient dan tentukan server, port, nama pengguna, dan kata sandi
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password");
 
try
{  
	// Kirim pesan
	client.send(manyMsg); 
}
catch (Exception ex)
{
	  ex.printStackTrace();
}

Demo Langsung

Kesimpulan

Dalam posting ini, saya telah menunjukkan kepada Anda cara membuat pesan email Outlook dan menyimpannya sebagai format EML, MSG, dan MTH menggunakan Java. Selain itu, berbagai cara pengiriman email di Java menggunakan klien STMP juga dibahas. Anda dapat mempelajari lebih lanjut tentang [Java Email Library] Aspose19 menggunakan dokumentasi.

Lihat juga

Buat Pesan Outlook dan Kirim Email menggunakan C#Ambil Email dari Server POP3 dengan PythonDapatkan Daftar Kontak dari Microsoft Exchange Server di C#
Dapatkan Daftar Kontak dari Microsoft Exchange Server di JavaImpor Kontak dari Gmail di C#Impor Kontak Gmail di Java
Pindahkan Email ke Folder di Microsoft Exchange Server di C#Pindahkan Email ke Folder di Microsoft Exchange Server di JavaParse File PST Outlook dengan Python
Baca Email dari Kotak Surat Bersama di Exchange Server di C#Baca Email dari Kotak Surat Bersama di Exchange Server di JavaBaca File MS Outlook PST di C# .NET
Baca File MS Outlook PST di JavaBaca File Outlook MSG dalam C#Bekerja dengan Percakapan di MS Exchange Server di C#
Bekerja dengan Percakapan di Server MS Exchange di JavaTulis dan Baca Pesan di Penyimpanan Thunderbird di C#Tulis dan Baca Pesan di Thunderbird Storage di Java
Tulis dan Baca Pesan di Penyimpanan Thunderbird dengan PythonKirim Email melalui SMTP dengan PythonBaca Email dari Exchange Server di C#