1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
| import java.io.*;
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
@WebServlet("/emailtest")
public class emailtest extends HttpServlet {
private static final long serialVersionUID = 1;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
InternetAddress[] address = null ;
String mailServer = "smtp.gmail.com";
String From = "myemail@gmail.com";
String To = "myemail@yahoo.com.tw";
String error="";
String Subject = "這是一封測試信";
String messageText = "您的密碼是@#$#$\n建議盡速更改您的密碼";
try {
Properties props = System.getProperties();
props.put("mail.host",mailServer);
props.put("mail.transport.protocol","smtp");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.socketFactory.port", "587");
props.put("mail.smtp.socketFactory.class", "javax.net.SocketFactory");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "587");
props.put("mail.smtp.ssl.enable", "false");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.ssl.trust", "smtp.gmail.com");
Authenticator auth = new javax.mail.Authenticator() {
String userName="帳號";
String password = "密碼";
protected PasswordAuthentication getPasswordAuthentication(){
return new PasswordAuthentication(userName, password);
}
};
Session mailSession = javax.mail.Session.getInstance(props,auth);
mailSession.setDebug(false);
MimeMessage msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress(From));
address = InternetAddress.parse(To,false);
msg.setRecipients(Message.RecipientType.TO, address);
msg.setSubject(Subject,"Big5");
msg.setSentDate(new Date());
msg.setText(messageText, "Big5");
Transport.send(msg);
System.out.println("成功傳送");
error="email.jsp?error=sucess";
}
catch (MessagingException mex) {
System.out.println("發生錯誤,例外物件的型別為[");
System.out.println(mex.toString());
System.out.println("]");
error="email.jsp?error="+"mex.toString()";
}
response.sendRedirect(error);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
|