SendMailUsingAuthentication.java
上传用户:szzhhli
上传日期:2022-02-01
资源大小:1k
文件大小:2k
源码类别:

Email客户端

开发平台:

Java

  1. //one need to configure 1. SMTP_AUTH_USER, 2. SMTP_AUTH_PWD in SMTPAuthenticator inner class; beside changing the 3. SMTP //server URL in GetProperties()
  2. //change 1. emailMsgTxt, 2. receiver in the postMail() to send different messages to different people
  3. package CheckIPAddress;
  4. import javax.mail.*;
  5. import javax.mail.internet.*;
  6. import java.util.*;
  7. import java.io.*;
  8. public class SendMailUsingAuthentication
  9. {
  10. MimeMessage msg = null;
  11. //change host as needed
  12. private Properties getProperties()
  13. {
  14. final String SMTP_HOST_NAME = "smtp.gmail.com"; //change host as needed
  15. Properties p = new Properties();    
  16. p.put("mail.smtp.host", SMTP_HOST_NAME);//Set the host smtp address
  17. p.put("mail.smtp.starttls.enable","true");
  18. p.put( "mail.smtp.auth", "true"); //validate user
  19. return p;
  20. }
  21. public SendMailUsingAuthentication() throws MessagingException
  22. {
  23. final String emailSubjectTxt  = "Your Password of new Registration";
  24. Session session = Session.getInstance(getProperties(), 
  25. new Authenticator() //one need to configure 1. SMTP_AUTH_USER, 2. SMTP_AUTH_PWD
  26. {
  27. private final String SMTP_AUTH_USER = "saurabhcbk";
  28. private final String SMTP_AUTH_PWD  = "saurabh123";
  29. public PasswordAuthentication getPasswordAuthentication() 
  30. {
  31. return new PasswordAuthentication(SMTP_AUTH_USER, SMTP_AUTH_PWD); 
  32. }
  33. }
  34. );//validate user and create a session
  35. msg = new MimeMessage(session);
  36. msg.setSubject(emailSubjectTxt);
  37. }
  38. public int postMail( String receiver, String message ) 
  39. {
  40. int status=0;
  41. try
  42. {
  43. msg.setText(message); //email message body or content
  44. msg.setRecipient(Message.RecipientType.TO, new InternetAddress(receiver)); //receiver mail id
  45. Transport.send(msg);
  46. System.out.println("Receiver: "+receiver+ "Message: " + msg.getContent()+" at "+ new java.util.Date().toString());
  47. status=1;
  48. }
  49. catch(Exception sendingError)
  50. {
  51. System.out.println("Sending mail has been failed");
  52. }
  53. return status;
  54. }
  55. }