Java利用stmp协议实现简单邮件发送功能

项目结构如下:

Java利用stmp协议实现简单邮件发送功能_第1张图片

实现邮件发送的基本jar包:

Mail.java:

package com.wx.utils;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Properties;

import javax.mail.Address;
import javax.mail.Message;
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;
/**
 * 
 * Description:邮件群发核心类
 * @author Administrator
 * @date 2017年11月19日下午6:09:25
 */
public class Mail extends HttpServlet{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1799582803909189350L;

	@Override
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		try {
			//设置字符编码
			request.setCharacterEncoding("utf-8");
			response.setCharacterEncoding("utf-8");
			response.setContentType("text/html;charset=utf-8");
			
			//收件人
			String name=request.getParameter("m-name");
			//主题
			String topic=request.getParameter("m-topic");
			//正文
			String content=request.getParameter("c-content");
			
			//设置邮箱用户名
			String username="[email protected]";
			//设置邮箱密码
			String password="jyzydby960524";
			
			//读取邮件发送协议
			Properties props = new Properties();
			//设置邮箱协议
			props.put("mail.transport.protocol", "smtp");
			//设置邮箱主机
			props.put("mail.smtp.host", "smtp.163.com");
			//设置邮箱验证
			props.put("mail.smtp.auth", "true");
			
			//创建一个邮箱会话
			Session session = Session.getInstance(props);
			MimeMessage message = new MimeMessage(session);
			//ujqvaquelvzjhfch  tlygmlxzcdwkgabc
			//设置邮箱的来源
			Address toAddress = new InternetAddress(username);
			message.setFrom(toAddress);
			//设置接收者
			message.setRecipients(Message.RecipientType.TO, name);
			//设置主题
			message.setSubject(topic);
			//设置内容
			message.setText(content);
			//设置保存
			message.saveChanges();
			
			
			//创建发送工具
			Transport ts =session.getTransport();
			//发送工具连接发送者
			ts.connect(username, password);
			//发送消息
			ts.sendMessage(message, message.getAllRecipients());
			ts.close();
			
			PrintWriter pw =response.getWriter();
			pw.print("发送成功");
			pw.close();
			
			
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}

}



index.jsp:


<%@ page contentType="text/html; charset=UTF-8" %>

  
    Java开发邮件群发系统
	 
	
	
	
  
  
  
    
    
Java开发邮件群发系统-汪祥

收件人:

主 题:

正 文:

jsp代码中有两张图片,自己去找一下,在项目结构中可以看到


注意:这个项目只是简单实现了邮件发送的功能,这里有一个小问题:就是发送的邮件会被接收方当作垃圾邮件处理,所以要去垃圾邮件中找。




你可能感兴趣的:(Javaee)