Автоматизация электронной почты стала популярной, особенно среди маркетологов. Это позволяет им автоматически отправлять готовые электронные письма своей целевой аудитории в запланированное время.

Как написать код для отправки писем на 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 для отправки электронных писем с обычным текстом
Ниже приведены шаги для создания и отправки сообщения электронной почты с обычным текстом:
- Создайте объект класса MailMessage.
- Укажите тему, тело, адреса отправителя и получателя.
- Создайте объект класса SmtpClient.
- Установите хост, порт, имя пользователя, пароль и параметры безопасности.
- Вызов метода SmtpClient.send(MailMessage arg) для отправки сообщения электронной почты.
В приведенном ниже примере кода показано, как создать и отправить сообщение электронной почты с обычным текстом:
// Declare msg as MailMessage instance | |
MailMessage msg = new MailMessage(); | |
// Set From and To field and Plain text body | |
msg.setFrom(MailAddress.to_MailAddress("sender@sender.com")); | |
msg.getTo().add("receiver@receiver.com"); | |
msg.setBody("This is a Plain Text Body"); | |
// Create an instance of SmtpClient class | |
SmtpClient client = new SmtpClient(); | |
// Specify your mailing host server, Username, Password, Port # and Security option | |
client.setHost("mail.server.com"); | |
client.setUsername("username"); | |
client.setPassword("password"); | |
client.setPort(587); | |
client.setSecurityOptions(SecurityOptions.SSLExplicit); | |
try { | |
// Client.Send will send this message | |
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 (строковое значение).
- Создайте объект класса SmtpClient.
- Установите хост, порт, имя пользователя, пароль и параметры безопасности.
- Вызов метода SmtpClient.send(MailMessage arg) для отправки сообщения электронной почты.
В приведенном ниже примере кода показано, как отправить сообщение электронной почты с телом HTML.
// Declare msg as MailMessage instance | |
MailMessage msg = new MailMessage(); | |
// Use MailMessage properties like specify sender, recipient, message and 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>"); | |
// Create an instance of SmtpClient class | |
SmtpClient client = new SmtpClient(); | |
// Specify your mailing host server, Username, Password, Port # and Security option | |
client.setHost("mail.server.com"); | |
client.setUsername("username"); | |
client.setPassword("password"); | |
client.setPort(587); | |
client.setSecurityOptions(SecurityOptions.SSLExplicit); | |
try { | |
// Client.Send will send this message | |
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.
// Load an EML file in MailMessage class | |
MailMessage message = MailMessage.load(dataDir + "test.eml"); | |
// Create an instance of SmtpClient class | |
SmtpClient client = new SmtpClient(); | |
// Specify your mailing host server, Username, Password, Port # and Security option | |
client.setHost("mail.server.com"); | |
client.setUsername("username"); | |
client.setPassword("password"); | |
client.setPort(587); | |
client.setSecurityOptions(SecurityOptions.SSLExplicit); | |
try { | |
// Client.Send will send this message | |
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. и установите хост, порт, имя пользователя и пароль.
- Отправка электронной почты с помощью метода SmtpClient.send(MailMessageCollection arg).
В приведенном ниже примере кода показано, как массово отправлять электронные письма с помощью Java.
// Create SmtpClient as client and specify server, port, user name and password | |
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password"); | |
// Create instances of MailMessage class and Specify To, From, Subject and Message | |
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?"); | |
// Create an instance of MailMessageCollection class and add MailMessage objects | |
MailMessageCollection manyMsg = new MailMessageCollection(); | |
manyMsg.addItem(message1); | |
manyMsg.addItem(message2); | |
manyMsg.addItem(message3); | |
try { | |
// Send Message in bulk | |
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 для получения регулярных обновлений.
Задайте вопрос
Вы можете сообщить нам о своих вопросах или запросах на нашем форуме.