Для начала вам нужен SMTP-сервер . Необходимо иметь возможность отправлять электронные письма. Точно так же, как вам нужен HTTP-сервер для обслуживания веб-сайта. Очевидно, у вас уже есть HTTP-сервер (с сервлет-контейнером), но у вас еще не настроен SMTP-сервер.
Вы можете использовать SMTP-сервер, связанный с вашей собственной существующей учетной записью электронной почты, такой как ваш провайдер или общедоступные почтовые ящики, такие как Gmail, Yahoo и т. Д. Подробную информацию о подключении SMTP можно найти в их документации. Обычно вам просто нужно знать имя хоста и номер порта . имя пользователя / пароль такие же, как и у вашей учетной записи электронной почты.
Имя хоста и номер порта должны быть установлены как свойства SMTP для JavaMail:
Properties properties = new Properties();
properties.put("mail.transport.protocol", "smtp");
properties.put("mail.smtp.host", "smtp.example.com"); // smtp.gmail.com?
properties.put("mail.smtp.port", "25");
Имя пользователя / пароль следует использовать в Authenticator
следующим образом:
properties.put("mail.smtp.auth", "true");
Authenticator authenticator = new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("yourusername", "yourpassword");
}
};
Тогда вы можете получить почтовый сеанс следующим образом:
Session session = Session.getDefaultInstance(properties, authenticator);
С учётной записью вашего интернет-провайдера или общедоступных почтовых ящиков вы, тем не менее, можете использовать собственный адрес в поле From
электронного письма и, как правило, также количество электронных писем, которые вам разрешено отправлять через определенные промежутки времени. Если вы хотите обойти это, вам нужно установить собственный SMTP-сервер, например Apache James , основанный на Java, или Microsoft Exchange и так далее.
В конце концов, я предлагаю вам пройти курс JavaMail , чтобы вы лучше поняли.