Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvSpMlSub 294 of 322 menu
◀ ▶

Тема и отправитель в Java

Метод setSubject у MimeMessage попадает в заголовок Subject. Отправитель задается через setFrom с InternetAddress: второй аргумент конструктора - человекочитаемое имя рядом с адресом.

Полный пример с чтением темы и адреса из принятого письма:

import com.icegreen.greenmail.util.GreenMail; import com.icegreen.greenmail.util.ServerSetupTest; import jakarta.mail.Message; import jakarta.mail.Session; import jakarta.mail.Transport; import jakarta.mail.internet.InternetAddress; import jakarta.mail.internet.MimeMessage; import java.util.Properties; public class Main { public static void main(String[] args) throws Exception { GreenMail server = new GreenMail(ServerSetupTest.SMTP); server.start(); server.setUser("reader@local.test", "reader", "pass"); Properties props = new Properties(); props.put("mail.smtp.host", "127.0.0.1"); props.put( "mail.smtp.port", String.valueOf(server.getSmtp().getPort()), ); props.put("mail.smtp.auth", "false"); Session session = Session.getInstance(props); MimeMessage letter = new MimeMessage(session); letter.setFrom(new InternetAddress("desk@local.test", "Help Desk")); letter.setRecipient( Message.RecipientType.TO, new InternetAddress("reader@local.test"), ); letter.setSubject("Ticket update"); letter.setText("Your request was assigned."); Transport.send(letter); MimeMessage saved = server.getReceivedMessages()[0]; System.out.println(saved.getSubject()); System.out.println(saved.getFrom()[0].toString()); server.stop(); } }

Первая строка вывода - Ticket update. Вторая содержит имя и адрес отправителя в формате, который формирует почтовый API для заголовка From.

Отправьте письмо от имени "Store Bot" с адреса bot@local.test и с темой "Receipt". Выведите тему и строку getFrom первого принятого сообщения.

Смените тему на "Reminder: payment", тело оставьте коротким английским предложением. Убедитесь по выводу, что в ящике лежит новая тема.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить