Java发送邮件
简易发送邮件实例(Java版)
一,介绍:
>最近学习了jsp和Servlet,正好有例子讲解,于是动手做了尝试,现在记录笔记。
>这是基于javaMail的Java邮件发送,使用activation.jar和mail.jar两个jar包。
>实现通过网易126邮箱服务器stmp.126.com使用自己的账号和密码登陆验证。获取 session后进行邮件的发送。
二,环境:
>JDK,Tomcat,IDE(myeclipse),还有两个jar包需要自己配置。
>jar包下载:
>最近学习了jsp和Servlet,正好有例子讲解,于是动手做了尝试,现在记录笔记。
>这是基于javaMail的Java邮件发送,使用activation.jar和mail.jar两个jar包。
>实现通过网易126邮箱服务器stmp.126.com使用自己的账号和密码登陆验证。获取 session后进行邮件的发送。
二,环境:
>JDK,Tomcat,IDE(myeclipse),还有两个jar包需要自己配置。
>jar包下载:
三,代码:
SendEmailServlet:
SendEmailServlet:
package web; import java.io.IOException; import java.io.PrintWriter; 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; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * * @author XHS_12302 * @version 1.0 * @date 2017_08_17 */ @SuppressWarnings("serial") public class SendEmailServlet extends HttpServlet { /** * The doGet method of the servlet. <br> * * This method is called when a form has its tag value method equals to get. * * @param request the request send by the client to the server * @param response the response send by the server to the client * @throws ServletException if an error occurred * @throws IOException if an error occurred */ public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String result; String pwd="********";//这个是邮箱密码,如果有授权码,则填写授权码 String to="xhsgg12302@outlook.com"; String from="xhsgg12302@126.com"; Properties props = new Properties(); // 参数配置 props.setProperty("mail.transport.protocol", "smtp"); // 使用的协议(JavaMail规范要求) props.setProperty("mail.smtp.host", "smtp.126.com"); // 发件人的邮箱的 SMTP 服务器地址 props.setProperty("mail.smtp.auth", "true"); /*props.setProperty("mail.smtp.port", "465"); props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); props.setProperty("mail.smtp.socketFactory.fallback", "false"); props.setProperty("mail.smtp.socketFactory.port", "465");*/ //根据配置创建会话对象,用于和邮件服务区. Session mailsn=Session.getDefaultInstance(props); //使Debug模式为真,可以查看交互消息。 mailsn.setDebug(true); try { MimeMessage message=new MimeMessage(mailsn); //设置消息 message.setFrom(new InternetAddress(from)); message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)); message.setSubject("XHS_12302!"); message.setText("HelloWorld,this is a jsp Email!"); message.saveChanges(); // Transport transport = mailsn.getTransport("smtp"); transport.connect("smtp.126.com", from, pwd); transport.sendMessage(message, message.getAllRecipients()); transport.close(); result="Sent message successfully......"; } catch (MessagingException e) { // TODO: handle exception e.printStackTrace(); result="Error:unable to send message..."; } response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">"); out.println("<HTML>"); out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>"); out.println(" <BODY>"); out.print(result); out.println(" </BODY>"); out.println("</HTML>"); out.flush(); out.close(); } }
四,截图:
联系邮箱:xhsgg12302@outlook.com
2017_08_17