Я использую javax mail library , который я считаю очень полезным.
Пример кода:
import javax.mail.*;
private void javaxMailExample() {
// Set protocol.
String protocol = "imaps";
// Set properties.
Properties props = new Properties();
props.setProperty("mail.store.protocol", protocol);
props.setProperty("mail.imaps.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.setProperty("mail.imaps.socketFactory.fallback", "false");
props.setProperty("mail.imaps.port", "993");
props.setProperty("mail.imaps.socketFactory.port", "993");
// Set outlook session.
Session session = Session.getDefaultInstance(props, null);
Store store = session.getStore(protocol);
// Connect to session.
store.connect("imap-mail.outlook.com", "email@domain.com", "password");
// Read messages.
Folder inbox = store.getFolder("INBOX");
inbox.open(Folder.READ_WRITE);
Message message = inbox.getMessages()[inbox.getMessages().length - 1];
См. Пример SMTP.