Java Mail - enviando email com java
Autor: Flávio Henrique | Publicado: 2009-08-22T08:52:00-07:00

Nesse poste vou mostrar como enviar email a parti  de um codigo java.Inicialmente devemos baixar a API JavaMail disponibilizada pela SUN aqui.Agora vamos criar um projeto java no Netbeans:Vá em:  Arquivo -> Novo projeto -> java -> aplicativo javadê um nome ao seu projeto e finalize.Feito isso devemos agora importa para o projeto as bibliotecas da API Java Mail. Basta selecionar o projeto clicar com o botão direito -> propriedades. Na janela de propriedades selecione bibliotecas, na aba Compilar que aparece ao lado clique em adicionar jar ou se preferir crie uma biblioteca e adicione essa biblioteca, localize os jars da API que fica dentro do diretorio lib, além dos jars desse diretorio é preciso adicionar também o jar mail.jar que fica dentro do diretorio onde esta localizado o diretorio lib. Depois clique em ok. Pronto todos os  jars necessário já estão dentro do seu projeto.A baixo temos a classe responsavel por enviar o email:import java.util.Date;import java.util.Properties;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;public class EmailSender {private String HOST = "smtp.gmail.com";private String from;private String to;private String subject;private String body;public EmailSender() {}public EmailSender( String to, String from, String subject, String body) {    this.from = from;    this.to = to;    this.subject = subject;    this.body = body;}public void sendMail(String senha,String to, String from,String subject,String body) throws MessagingException{  Properties props = System.getProperties();//      definindo o protocolo de transporte como smtp  props.put("mail.transport.protocol", "smtp");//      adicionando o host pelo qual vai ser enviado o email  props.put("mail.smtp.host", HOST);//smtp do gmail//      adicionado a porta pela qual vai ser enviado o email no host  props.put("mail.smtp.port", "465"); //porta do smtp do gmail  props.put("mail.smtp.socketFactory.port", "465"); //mesma porta para o socket//    definindo o protocolo para o socket  props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");  props.put("mail.smtp.socketFactory.fallback", "false");//      criando a sessão para o host  Session session = Session.getDefaultInstance(props, null);//      criando a menssagen para a sessão criada  Message msg = new MimeMessage(session);//      atribuido os email from e to da menssagen  msg.setFrom(new InternetAddress(from));  msg.setRecipients(Message.RecipientType.TO,    InternetAddress.parse(to, false));//      adicionando o titulo do email  msg.setSubject(subject);//      adicinando o corpo do email  msg.setText(body);//      definindo a data da menssagen  msg.setSentDate(new Date());//      inciando o processo de envio  Transport tr;      try {          tr = session.getTransport("smtp"); //define smtp para transporte          tr.connect(HOST, from, senha);          msg.saveChanges();          //envio da mensagem          tr.sendMessage(msg, msg.getAllRecipients());          tr.close();      } catch (Exception e) {          // TODO Auto-generated catch block          System.out.println(">> Erro: Envio Mensagem");          e.printStackTrace();      }  System.out.println("Message enviada OK.");}}se alguém estiver interessado em ver a aplicação completa basta enviar um email, para o endereço abaixo pedido, que eu envio.flavio.henso@gmail.comObrigado pela atenção e até próxima.