Чтобы проконтролировать ответ Джона, вот пример отправки письма с использованием simple-java-mail .
Идея состоит в том, что вам не нужно знать обо всех технических (вложенных) частях, составляющих электронную почту. В этом смысле он во многом похож на обыкновенную электронную почту Apache, за исключением того, что Simple Java Mail немного проще, чем почтовый API Apache при работе с вложениями и встроенными изображениями. Почтовое средство Spring работает также хорошо, но немного неудобно в использовании (например, для него требуется анонимный внутренний класс), и, конечно, вам нужна зависимость от Spring, которая дает вам гораздо больше, чем простая библиотека почтовых сообщений, так как она была разработана на ее основе быть решением МОК.
Простая Java Mail, кстати, является оберткой вокруг JavaMail API.
final Email email = new Email();
email.setFromAddress("lollypop", "lolly.pop@somemail.com");
email.setSubject("hey");
email.addRecipient("C. Cane", "candycane@candyshop.org", RecipientType.TO);
email.addRecipient("C. Bo", "chocobo@candyshop.org", RecipientType.BCC);
email.setText("We should meet up! ;)");
email.setTextHTML("<img src='cid:wink1'><b>We should meet up!</b><img src='cid:wink2'>");
// embed images and include downloadable attachments
email.addEmbeddedImage("wink1", imageByteArray, "image/png");
email.addEmbeddedImage("wink2", imageDatesource);
email.addAttachment("invitation", pdfByteArray, "application/pdf");
email.addAttachment("dresscode", odfDatasource);
new Mailer("smtp.host.com", 25, "username", "password").sendMail(email);
// or alternatively, pass in your own traditional MailSession object.
new Mailer(preconfiguredMailSession).sendMail(email);