首页>代码>java协同办公OA自动化办公系统>/Java项目本地部署搭建实战java协同办公OA系统源码/codes/src/main/java/cn/gson/oasys/common/PushoutMail.java
package cn.gson.oasys.common;



import java.util.Date;
import java.util.Properties;

import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class PushoutMail {

	public PushoutMail() {}

	// 发件人的 邮箱 和 密码(替换为自己的邮箱和密码)
	public static String myEmailAccount = "962239776@qq.com";
    public static String myEmailPassword = "ntogbdqtuieybdje";
    
 // 网易163邮箱的 SMTP 服务器地址为: smtp.163.com
 //qq  smtp.qq.com
    public static String myEmailSMTPHost = "smtp.qq.com";
    
 // 收件人邮箱(替换为自己知道的有效邮箱)
    public static String receiveMailAccount = "1533047354@qq.com";

    public static void main(String[] args) {
    	// 1. 创建参数配置, 用于连接邮件服务器的参数配置
        Properties props = new Properties();                    // 参数配置
        props.setProperty("mail.transport.protocol", "smtp");   // 使用的协议(JavaMail规范要求)
        props.setProperty("mail.smtp.host", myEmailSMTPHost);   // 发件人的邮箱的 SMTP 服务器地址
        props.setProperty("mail.smtp.auth", "true");            // 需要请求认证
    	
       // 开启 SSL 安全连接。
        // SMTP 服务器的端口 (非 SSL 连接的端口一般默认为 25, 可以不添加, 如果开启了 SSL 连接,
        //                  需要改为对应邮箱的 SMTP 服务器的端口, 具体可查看对应邮箱服务的帮助,
        //                  QQ邮箱的SMTP(SLL)端口为465或587, 其他邮箱自行去查看)
        final String smtpPort = "465";
        props.setProperty("mail.smtp.port", smtpPort);
        props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
        props.setProperty("mail.smtp.socketFactory.fallback", "false");
        props.setProperty("mail.smtp.socketFactory.port", smtpPort);
        
    	
     // 2. 根据配置创建会话对象, 用于和邮件服务器交互
        Session session = Session.getDefaultInstance(props);
        session.setDebug(true);                                 // 设置为debug模式, 可以查看详细的发送 log
        
        // 3. 创建一封邮件
        MimeMessage message;
		try {
			message = createMimeMessage(session, myEmailAccount, receiveMailAccount);
			 // 4. 根据 Session 获取邮件传输对象
	        Transport transport = session.getTransport();
	        
	        // 5. 使用 邮箱账号 和 密码 连接邮件服务器, 这里认证的邮箱必须与 message 中的发件人邮箱一致, 否则报错
	        transport.connect(myEmailAccount, myEmailPassword);

	     // 6. 发送邮件, 发到所有的收件地址, message.getAllRecipients() 获取到的是在创建邮件对象时添加的所有收件人, 抄送人, 密送人
	        transport.sendMessage(message, message.getAllRecipients());
	     
	        // 7. 关闭连接
	        transport.close();
		
		} catch (Exception e) {
			e.printStackTrace();
		}
        
       
        
	}
    
    
    public static MimeMessage createMimeMessage(Session session, String sendMail, String receiveMail) throws Exception {
        // 1. 创建一封邮件
        MimeMessage message = new MimeMessage(session);

        // 2. From: 发件人(昵称有广告嫌疑,避免被邮件服务器误认为是滥发广告以至返回失败,请修改昵称)
        message.setFrom(new InternetAddress(sendMail, "魔方", "UTF-8"));

        // 3. To: 收件人(可以增加多个收件人、抄送、密送)
        message.setRecipient(MimeMessage.RecipientType.TO, new InternetAddress(receiveMail, "XX用户", "UTF-8"));

        // 4. Subject: 邮件主题(标题有广告嫌疑,避免被邮件服务器误认为是滥发广告以至返回失败,请修改标题)
        message.setSubject("888打折钜惠", "UTF-8");

        // 5. Content: 邮件正文(可以使用html标签)(内容有广告嫌疑,避免被邮件服务器误认为是滥发广告以至返回失败,请修改发送内容)
        message.setContent("zw用户你好,今天下午进行项目验收", "text/html;charset=UTF-8");

        // 6. 设置发件时间
        message.setSentDate(new Date());

        // 7. 保存设置
        message.saveChanges();

        return message;
    }

    
}

最近下载更多
zolscy  LV24 2024年11月23日
微信网友_7223624756105216  LV2 2024年10月25日
lqzixi  LV4 2024年10月9日
educationAAA  LV11 2024年10月6日
zxhjy5  LV6 2024年9月24日
微信网友_7044194812350464  LV8 2024年9月14日
唐唐丶  LV34 2024年9月12日
2775645521  LV7 2024年8月25日
krispeng  LV14 2024年8月12日
最近浏览更多
ningrong 4月17日
暂无贡献等级
2310108201  LV10 3月27日
fantesy  LV17 3月24日
liqiangqiang 3月19日
暂无贡献等级
YonderSkey 3月18日
暂无贡献等级
汪汪1230  LV5 3月17日
269647013 3月16日
暂无贡献等级
docnnxxy688 3月16日
暂无贡献等级
暂无贡献等级
SZEPEZS  LV9 3月4日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友