ระบบอีเมลอัตโนมัติได้รับความนิยมโดยเฉพาะในหมู่นักการตลาด ช่วยให้พวกเขาสามารถส่งอีเมลที่สร้างไว้ล่วงหน้าไปยังกลุ่มเป้าหมายโดยอัตโนมัติตามเวลาที่กำหนด

การส่งอีเมลด้วย Java
บทความนี้จะครอบคลุมประเด็นต่างๆ ที่ระบุด้านล่าง:
- ไลบรารี Java สำหรับการส่งอีเมล
- วิธีเขียนโค้ดเพื่อสร้างและส่งอีเมลใน Java
- การส่งอีเมลที่เก็บไว้จากแผ่นดิสก์ใน Java
- การส่งอีเมลเป็นกลุ่ม
ไลบรารี Java สำหรับการส่งอีเมล
เราจะใช้ [ไลบรารีอีเมล Java] ซึ่งช่วยให้คุณใช้ตรรกะทางธุรกิจของคุณในการจัดการอีเมลโดยไม่ต้องรู้เกี่ยวกับการเขียนโปรแกรมเครือข่ายหรือข้อกำหนดด้านรูปแบบ สามารถติดตั้งไลบรารี Java สำหรับการส่งอีเมลได้โดยตรงโดยใช้การกำหนดค่า Maven ดังที่ระบุด้านล่าง:
<repository>
<id>ConholdateJavaAPI</id>
<name>Conholdate Java API</name>
<url>https://releases.conholdate.com/java/repo</url>
</repository>
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>23.6</version>
<type>pom</type>
</dependency>
สำหรับการกำหนดค่าเกี่ยวกับเฟรมเวิร์ก Java อื่นๆ โปรดไปที่ releases.conholdate.com
วิธีเขียนโค้ดเพื่อสร้างและส่งอีเมลใน Java
ไลบรารีอีเมล Java ส่งข้อความอีเมลผ่านเซิร์ฟเวอร์ SMTP เพื่อจัดส่ง ระบุผู้ส่ง ผู้รับ หัวเรื่อง และเนื้อหาข้อความโดยใช้อ็อบเจ็กต์ String ในส่วนนี้ เราจะพูดถึงวิธีเขียนตัวอย่างโค้ดใน Java เพื่อส่งอีเมลที่มีข้อความธรรมดาและเนื้อหา HTML
รหัส Java เพื่อส่งอีเมลพร้อมข้อความธรรมดา
ต่อไปนี้เป็นขั้นตอนในการสร้างและส่งอีเมลด้วย SMTP:
- สร้างวัตถุของคลาส MailMessage
- ระบุหัวเรื่อง เนื้อหา ที่อยู่ของผู้ส่ง และผู้รับ
- สร้างวัตถุของคลาส SmtpClient
- ตั้งค่าโฮสต์ พอร์ต ชื่อผู้ใช้ รหัสผ่าน และตัวเลือกความปลอดภัย
- เรียกวิธี SmtpClient.send(MailMessage arg) เพื่อส่งข้อความอีเมล
ตัวอย่างโค้ดด้านล่างแสดงวิธีสร้างและส่งข้อความอีเมลพร้อมข้อความธรรมดา:
// ประกาศข้อความเป็นอินสแตนซ์ MailMessage
MailMessage msg = new MailMessage();
// ตั้งค่าช่องจากและถึงและเนื้อหาข้อความธรรมดา
msg.setFrom(MailAddress.to_MailAddress("sender@sender.com"));
msg.getTo().add("receiver@receiver.com");
msg.setBody("This is a Plain Text Body");
// สร้างอินสแตนซ์ของคลาส SmtpClient
SmtpClient client = new SmtpClient();
// ระบุเซิร์ฟเวอร์โฮสต์เมลของคุณ ชื่อผู้ใช้ รหัสผ่าน หมายเลขพอร์ต และตัวเลือกความปลอดภัย
client.setHost("mail.server.com");
client.setUsername("username");
client.setPassword("password");
client.setPort(587);
client.setSecurityOptions(SecurityOptions.SSLExplicit);
try {
// Client.Send จะส่งข้อความนี้
client.send(msg);
System.out.println("Message sent");
} catch (Exception ex) {
System.err.println(ex);
client.close();
client.dispose();
}
client.close();
client.dispose();
การส่งอีเมลด้วยเนื้อหา HTML
ต่อไปนี้เป็นขั้นตอนในการส่งข้อความอีเมลที่มีเนื้อหา HTML:
- สร้างวัตถุของคลาส MailMessage
- ระบุหัวเรื่อง เนื้อหา ที่อยู่ของผู้ส่ง และผู้รับ
- ตั้งค่าเนื้อหาของอีเมลโดยใช้วิธี MailMessage.setHtmlBody(String value)
- สร้างวัตถุของคลาส SmtpClient
- ตั้งค่าโฮสต์ พอร์ต ชื่อผู้ใช้ รหัสผ่าน และตัวเลือกความปลอดภัย
- เรียกวิธี SmtpClient.send(MailMessage arg) เพื่อส่งข้อความอีเมล
ตัวอย่างโค้ดด้านล่างแสดงวิธีการส่งข้อความอีเมลด้วยเนื้อหา HTML
// ประกาศข้อความเป็นอินสแตนซ์ MailMessage
MailMessage msg = new MailMessage();
// ใช้คุณสมบัติ MailMessage เช่น ระบุผู้ส่ง ผู้รับ ข้อความ และ HtmlBody
msg.setFrom(MailAddress.to_MailAddress("newcustomeronnet@gmail.com"));
msg.setTo(MailAddressCollection.to_MailAddressCollection("asposetest123@gmail.com"));
msg.setSubject("Test subject");
msg.setHtmlBody("<html><body>This is the HTML body</body></html>");
// สร้างอินสแตนซ์ของคลาส SmtpClient
SmtpClient client = new SmtpClient();
// ระบุเซิร์ฟเวอร์โฮสต์เมลของคุณ ชื่อผู้ใช้ รหัสผ่าน หมายเลขพอร์ต และตัวเลือกความปลอดภัย
client.setHost("mail.server.com");
client.setUsername("username");
client.setPassword("password");
client.setPort(587);
client.setSecurityOptions(SecurityOptions.SSLExplicit);
try {
// Client.Send จะส่งข้อความนี้
client.send(msg);
System.out.println("Message sent");
} catch (Exception ex) {
System.err.println(ex);
client.close();
client.dispose();
}
client.close();
client.dispose();
การส่งอีเมลที่เก็บไว้จากแผ่นดิสก์ใน Java
ไลบรารีอีเมล Java ช่วยให้คุณสามารถโหลดไฟล์ EML(Outlook Express Electronic Mail) จากแผ่นดิสก์และส่งผ่าน SMTP
ขั้นตอนการส่งข้อความอีเมล์ที่จัดเก็บไว้จากแผ่นดิสก์มีดังต่อไปนี้:
- สร้างวัตถุของคลาส MailMessage โดยใช้เมธอด MailMessage.load(String path)
- สร้างวัตถุของคลาส SmtpClient
- ตั้งค่าโฮสต์ พอร์ต ชื่อผู้ใช้ รหัสผ่าน และตัวเลือกความปลอดภัย
- เรียกวิธี SmtpClient.send(MailMessage arg) เพื่อส่งข้อความอีเมล
ตัวอย่างโค้ดด้านล่างสาธิตวิธีการส่งอีเมลที่จัดเก็บไว้จากแผ่นดิสก์ใน Java
// โหลดไฟล์ EML ในคลาส MailMessage
MailMessage message = MailMessage.load(dataDir + "test.eml");
// สร้างอินสแตนซ์ของคลาส SmtpClient
SmtpClient client = new SmtpClient();
// ระบุเซิร์ฟเวอร์โฮสต์เมลของคุณ ชื่อผู้ใช้ รหัสผ่าน หมายเลขพอร์ต และตัวเลือกความปลอดภัย
client.setHost("mail.server.com");
client.setUsername("username");
client.setPassword("password");
client.setPort(587);
client.setSecurityOptions(SecurityOptions.SSLExplicit);
try {
// Client.Send จะส่งข้อความนี้
client.send(msg);
System.out.println("Message sent");
} catch (Exception ex) {
System.err.println(ex);
client.close();
client.dispose();
}
client.close();
client.dispose();
รหัส Java เพื่อส่งอีเมลจำนวนมาก
ต่อไปนี้เป็นขั้นตอนในการเขียนโค้ด Java เพื่อส่งอีเมลจำนวนมาก:
- สร้างออบเจ็กต์หลายรายการของคลาส MailMessage และระบุพารามิเตอร์หรือคุณสมบัติที่จำเป็น
- สร้างวัตถุของคลาส MailMessageCollection
- เพิ่มออบเจ็กต์ข้อความอีเมล (ตามที่สร้างในขั้นตอนที่ 1) ลงในคอลเลกชันโดยใช้วิธี MailMessageCollection.addItem()
- สร้างวัตถุของคลาส SmtpClient and set the host, port, username, and password.
- ส่งอีเมลโดยใช้วิธี SmtpClient.send(MailMessageCollection arg)
ตัวอย่างโค้ดด้านล่างสาธิตวิธีการส่งอีเมลจำนวนมากโดยใช้ Java
// สร้าง SmtpClient เป็นไคลเอ็นต์ และระบุเซิร์ฟเวอร์ พอร์ต ชื่อผู้ใช้ และรหัสผ่าน
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password");
// สร้างอินสแตนซ์ของคลาส MailMessage และระบุถึง จาก หัวข้อ และข้อความ
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?");
// สร้างอินสแตนซ์ของคลาส MailMessageCollection และเพิ่มวัตถุ MailMessage
MailMessageCollection manyMsg = new MailMessageCollection();
manyMsg.addItem(message1);
manyMsg.addItem(message2);
manyMsg.addItem(message3);
try {
// ส่งข้อความเป็นกลุ่ม
client.send(manyMsg);
System.out.println("Message sent");
} catch (Exception ex) {
System.err.println(ex);
client.close();
client.dispose();
}
client.close();
client.dispose();
รับใบอนุญาตฟรี
คุณสามารถรับ ใบอนุญาตชั่วคราวฟรี เพื่อทดลองใช้ API โดยไม่มีข้อจำกัดในการประเมิน
สรุป
ในบทความนี้ คุณได้รับความรู้เกี่ยวกับวิธีการเขียนโค้ดสำหรับการส่งอีเมลใน Java โดยใช้ไลบรารี Java สำหรับการส่งอีเมล ในตอนแรก คุณได้เรียนรู้วิธีส่งอีเมลด้วยข้อความธรรมดาหรือเนื้อหา HTML โดยทางโปรแกรม หลังจากนั้น คุณได้เห็นวิธีการส่งอีเมลจำนวนมากและการส่งอีเมลที่เก็บไว้จากแผ่นดิสก์โดยใช้ Java
คุณสามารถไปที่ เอกสาร เพื่อสำรวจคุณสมบัติอื่น ๆ
สุดท้ายนี้ เราขอแนะนำให้คุณคอยติดตามการอัปเดตเป็นประจำที่ conholdate.com
ถามคำถาม
คุณสามารถแจ้งให้เราทราบคำถามหรือข้อสงสัยของคุณได้ใน ฟอรั่ม ของเรา