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

浙公网安备 33010602011771号