package mailsender;
import javax.mail.*;
import javax.mail.internet.*;
public class Main {
public static void main(String[] args) throws Exception {
String smtpHost = "";
String smptPort = "";
String smtpUser = "";
String smtpPassword = "";
MailSender ms = new MailSender(smtpHost, smtpPort, smtpUser, smtpPassword);
ms.send("diego.ziquinatti@ecore.com.br", "Hello", "Testando email");
System.out.println("Enviado com sucesso!");
}
static class MailSender {
private String smtpHost;
private String smtpPort;
private PopupAuthenticator authenticator;
public MailSender(String smtpHost, String smtpPort, String smtpUser, String smtpPassword) {
this.smtpHost = smtpHost;
this.smtpPort = smtpPort;
authenticator = new PopupAuthenticator(smtpUser, smtpPassword);
}
public void send(String to, String subject, String content) throws AddressException, MessagingException {
// Create a mail session
java.util.Properties props = new java.util.Properties();
props.put("mail.smtp.host", smtpHost);
props.put("mail.smtp.port", smtpPort);
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.user", "login");
props.put("mail.smtp.password", "password");
// Create the session object
Session session = Session.getDefaultInstance(props, authenticator);
// Construct the message
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(authenticator.getUser()));
msg.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
msg.setSubject(subject);
msg.setText(content);
// Send the message
Transport.send(msg);
}
}
static class PopupAuthenticator extends Authenticator {
private String user;
private String password;
public PopupAuthenticator(String user, String password) {
this.user = user;
this.password = password;
}
@Override
public PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(getUser(), getPassword());
}
public String getUser() {
return user;
}
public String getPassword() {
return password;
}
}
}