“细雨梦回鸡塞远,小楼吹彻玉笙寒”

现在做的项目有做到流程审批,到下一节点时,会给节点的负责人发送邮件通知。流程都是手写的代码,没有用到流程引擎。

正文

其实通过QQ邮箱或者163邮箱发邮件,代码都是一样的,区别只是这两个邮箱用的协议不一样。这里我用两个方法分别记录通过163和QQ邮箱发送邮件的例子。
通过QQ邮箱

//参数是收件人地址
public static void sendMail(String addressee) throws AddressException, MessagingException {Properties properties = new Properties();properties.put("mail.transport.protocol", "smtp");// 连接协议properties.put("mail.smtp.host", "smtp.qq.com");// 主机名properties.put("mail.smtp.port", 465);// 端口号properties.put("mail.smtp.auth", "true");properties.put("mail.smtp.ssl.enable", "true");// 设置是否使用ssl安全连接 ---一般都使用properties.put("mail.debug", "true");// 设置是否显示debug信息 true 会在控制台显示相关信息// 得到会话对象Session session = Session.getInstance(properties);// 获取邮件对象Message message = new MimeMessage(session);// 设置发件人邮箱地址message.setFrom(new InternetAddress("xxx@qq.com"));// 设置收件人邮箱地址message.setRecipients(Message.RecipientType.TO, new InternetAddress[]{new InternetAddress(addressee)});// 设置邮件标题message.setSubject("您有新的流程工单需要处理!");// 设置邮件内容message.setText("尊敬的XXX,您有新的流程需要处理,请及时处理!请勿回复此邮件。");// 得到邮差对象Transport transport = session.getTransport();// 连接自己的邮箱账户transport.connect("xxx@qq.com", "xxx");// 密码为QQ邮箱开通的stmp服务后得到的客户端授权码// 发送邮件transport.sendMessage(message, message.getAllRecipients());transport.close();}

通过163邮箱发送

//参数是收件人地址
public static void sendMail(String addressee) throws AddressException, MessagingException {// 发件人账号和密码String MY_EMAIL_ACCOUNT = "xxx@163.com";String MY_EMAIL_PASSWORD = "xxx";// 密码,是你自己的设置的授权码// SMTP服务器(这里用的163 SMTP服务器)String MEAIL_163_SMTP_HOST = "smtp.163.com";String SMTP_163_PORT = "25";// 端口号,这个是163使用到的;QQ的应该是465或者875// 收件人String RECEIVE_EMAIL_ACCOUNT = addressee;Properties p = new Properties();p.setProperty("mail.smtp.host", MEAIL_163_SMTP_HOST);p.setProperty("mail.smtp.port", SMTP_163_PORT);p.setProperty("mail.smtp.socketFactory.port", SMTP_163_PORT);p.setProperty("mail.smtp.auth", "true");p.setProperty("mail.smtp.socketFactory.class", "SSL_FACTORY");Session session = Session.getInstance(p, new Authenticator() {// 设置认证账户信息@Overrideprotected PasswordAuthentication getPasswordAuthentication() {return new PasswordAuthentication(MY_EMAIL_ACCOUNT, MY_EMAIL_PASSWORD);}});session.setDebug(true);MimeMessage message = new MimeMessage(session);// 发件人message.setFrom(new InternetAddress(MY_EMAIL_ACCOUNT));// 收件人message.setRecipients(Message.RecipientType.TO, RECEIVE_EMAIL_ACCOUNT);//抄送人message.setRecipients(Message.RecipientType.CC, MY_EMAIL_ACCOUNT);//主题message.setSubject("流程工单");// 内容message.setContent("您好,您有新的流程需要处理!", "text/html;charset=UTF-8");message.setSentDate(new Date());message.saveChanges();Transport.send(message);}

Java使用163和QQ邮箱发邮件相关推荐

  1. 简单的Java代码实现给QQ邮箱发邮件

    一.前期准备 准备两个qq邮箱号,本例使用的是自己的两个邮箱 syc582535560@foxmail.com    2212444549@qq.com 下载javax.mail.jar  jar包 ...

  2. JAVA代码给QQ邮箱发邮件

    通过java代码给qq邮箱发邮件 使用发送邮箱所需要2个jar包 activation.jar    mail.jar 下载链接:https://pan.baidu.com/s/1YA3jgmUNzW ...

  3. 利用jmail qq邮箱发邮件 报错 解决方法

    利用java的jmail,登录qq邮箱发邮件时遇到下面几个问题,分享一下解决方法. 1. qq需要使用ssl  解决方法:使用有ssl安全认证的代码 <span style="font ...

  4. python使用qq邮箱发邮件

    发现QQ邮箱是个变态的东西...普通网上的教程根本无法搞定这个问题 于是写了这个,用于帮助大家使用python发邮件遇到的问题 第一步: 开启QQ第三方登录,参考文章 https://jingyan. ...

  5. Postfix配置QQ邮箱发邮件

    配置QQ邮箱发邮件 1.这里使用了QQ邮箱的SMTP,需要做以下配置 2.qq邮箱通过生成授权码来设置密码  3.关闭服务器的sendmail服务,开启postfix服务 4.创建证书文件  root ...

  6. 【Python用QQ邮箱发邮件】

    学习目标:Python用QQ邮箱发邮件 学习内容: 1:到入库 import smtplib from email.message import EmailMessage from datetime ...

  7. java 给qq邮箱发邮件_用java写一个给自己QQ邮箱发一封电子邮件的程序

    首先,需要各位去java官网下载JavaMail mail.jar 和JAF activaton.jar,本程序使用的分别是1.4.5和1.1.1版本,在这里也给大家贴上链接,点击打开链接 接下来大家 ...

  8. php怎么查看qq邮箱,thinkphp实现163、QQ邮箱收发邮件的方法

    用了很长时间去一步一步摸索,终于先在163 网易邮箱上测试成功了,下面就把这个过程分享给大家. 在进入正题这前先看下网易(163)邮箱的服务器地址和端口号: 一.前期准备 使用网易邮箱,当然要注册个账 ...

  9. javaMai+Springl实现给QQ邮箱发邮件(带附件,html格式)

    以前的时候想着java发邮件很简单,因为当时使用的是outlook实现的,有兴趣的可以去看看之前的两篇博客文章,1.使用java底层实现邮件的发送(含测试,源码)   和 2.使用Spring实现邮件 ...

最新文章

  1. 高通5G开始挤牙膏?骁龙865+发布,性能小幅提升,一加听了要笑,魅族看了会流泪...
  2. WinDBG调试dNet程序总结
  3. python中的函数、生成器的工作原理
  4. 三个表格居中纵向html,前端技巧集:图与表三步垂直居中
  5. 西天取经为节约成本该裁掉哪位?
  6. hibernate的缓存技术使用
  7. [zz]写在KVM (Kernel-based Virtual Machine) 安装成功后
  8. 用动态规划解决最长公共子序列问题 C语言,动态规划之最长公共子序列问题 C++实现...
  9. Linux 音频驱动
  10. 华为手机浏览器不支持PUT提交方式的解决方案
  11. h3c交换机怎么设置虚拟服务器,H3C交换机配置 | 如何实现两个网段主机与外部通信...
  12. vue v-for实现多行等分布局-三等分
  13. win10系统魔兽世界无法连接服务器地址,win10系统魔兽世界无法启动3d加速怎么解决...
  14. python读word表格_python 读word 的表格
  15. Keras中那些学习率衰减策略
  16. vlan是什么?如何划分vlan?如何实现vlan?使用vlan的优点!
  17. 感谢csdn 2021年中秋月饼礼盒
  18. A Mutex must not be copied after first use. 是什么(nocopy)
  19. 华为 5G 欧洲崛起!
  20. Unity 模型尺寸自适应

热门文章

  1. VOC2007格式数据集制作
  2. Parallel Scavenge收集器:吞吐量优先
  3. java中兴参与实参的区别,中兴axon30和30pro区别 参数配置对比谁性价比更高
  4. C#上位机基础学习_基于SOCKET实现与PLC服务器的TCP通信(二)
  5. 给领导当司机是什么体验?
  6. postman测试接口出现404
  7. java 判断当天_java判断一个时间是否是今天的方法
  8. cuda安装出现 Log file not open. Segmentation fault (core dumped) 错误
  9. c++ https indy_在C++Builder中安装Indy 10.2.3详细步骤
  10. NEXUS 6P刷机安装Edxposed