java代码发送邮件工具类
2017-10-19 09:23
441 查看
邮件发送工具类:public class EmailUtils {public static void sendEmail(Notice notice,String email) {String myAccount = "你的发件邮箱";String myPass = "写你自己的授权码";//授权码// 发件人邮箱的 SMTP 服务器地址, 必须准确, 不同邮件服务器地址不同, 一般(只是一般, 绝非绝对)格式为: smtp.xxx.com// 网易163邮箱的 SMTP 服务器地址为: smtp.163.comString SMTPHost = "smtp.qq.com";// 1. 创建参数配置, 用于连接邮件服务器的参数配置Properties props = new Properties(); // 参数配置props.setProperty("mail.transport.protocol", "smtp"); // 使用的协议(JavaMail规范要求)props.setProperty("mail.smtp.host", SMTPHost); // 发件人的邮箱的 SMTP 服务器地址props.setProperty("mail.smtp.auth", "true"); // 需要请求认证props.setProperty("mail.smtp.starttls.enable", "true");// 2. 根据配置创建会话对象, 用于和邮件服务器交互Session session = Session.getDefaultInstance(props);session.setDebug(false); // 设置为debug模式, 可以查看详细的发送 logtry {// 3. 创建一封邮件MimeMessage message = createMsg(session, myAccount, email,notice);// 4. 根据 Session 获取邮件传输对象Transport transport = session.getTransport();//5. 连接邮箱服务器transport.connect(myAccount,myPass);// 记住这个密码是授权码// 6. 发送邮件, 发到所有的收件地址, message.getAllRecipients() 获取到的是在创建邮件对象时添加的所有收件人,// 抄送人, 密送人transport.sendMessage(message, message.getAllRecipients());// 7. 关闭连接transport.close();}catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}/*** 创建一封激活信息的邮件** @param session* 和服务器交互的会话* @param sendMail* 发件人邮箱* @param user* 用户对象*/private static MimeMessage createMsg(Session session, String sendMail,String email, Notice notice) 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(email, "UTF-8"));// 4. Subject: 邮件主题message.setSubject("公告通知", "UTF-8");String ip = InetAddress.getLocalHost().getHostAddress();// 5. Content: 邮件正文(可以使用html标签)message.setContent("您好,您有最新公告!<br/>"+notice.getTitle()+"<br/>"+notice.getContent(),"text/html;charset=UTF-8");// 6. 设置发件时间message.setSentDate(new Date());// 7. 保存设置message.saveChanges();return message;}}
相关文章推荐
- 基于java mail.jar邮件发送,最详细代码和讲解
- java 发送邮件 email相关操作代码测试,生成复杂格式邮件,发送邮件相关操作(键人岐)
- 使用java代码实现邮件的发送
- java实现邮件发送功能工具类
- Java发送邮件工具类
- Java实现QQ邮件发送邮件工具类
- java代码发送邮件
- java代码实现邮件发送
- java代码使用QQ邮箱发送邮件
- JAVA代码发送邮件示例和解释
- java邮件发送代码编写
- Java实现基于SMTP发送邮件的工具类
- 工具类:java 邮件发送
- java实现简单邮件发送代码
- java发送邮件工具类
- 邮件发送工具类 SendMail.java
- java发送邮件完整实例 java邮件工具类
- Spring进阶—如何用Java代码实现邮件发送(二)
- Java MailUtils邮件发送工具类 支持附件
- Java 发送邮件代码