Java发送简单email:SimpleEmail

一、准备工作 添加依赖

<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.5.5</version>
</dependency>
   
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.4</version>
</dependency>

二、使用网易邮箱为例 1 、设置POP3/SMTP/IMAP:

 

 

2.获取授权码

 

 

三、代码

无附件简单邮件

public static void main(String[] args) {
      try {
           //简单邮箱的核心对象
           SimpleEmail simpleEmail = new SimpleEmail();
           //设置发送邮箱的服务信息
           simpleEmail.setSmtpPort(25);//网易邮箱端口号,按照所用的邮箱灵活更换对应端口
           simpleEmail.setHostName("smtp.163.com");//服务器,例:smtp.qq.com
           / /设置发件人邮箱的安全验证:用户名、”授权码“
           simpleEmail.setAuthentication("XXX163@163.com", "xxx");
           simpleEmail.setFrom("xxx163@163.com");//发件人邮箱
           simpleEmail.addTo("yyy@qq.com");//收件人邮箱
           simpleEmail.addCc("xxx163@163.com");//抄送:报错554时,排除低俗信息,抄送自己可解决
          //邮件内容
          simpleEmail.setSubject("Test");//标题
          simpleEmail.setMsg("hello world");//正文
          simpleEmail.setCharset("utf-8");//编码格式
          simpleEmail.setSentDate(new Date());//发送时间
 
         //发送
         simpleEmail.send();
   } catch (EmailException e) {
         e.printStackTrace();
   }
}

 

带附件邮件

public static void main(String[] args) {
   try {
       MultiPartEmail multiPartEmail = new MultiPartEmail();
       multiPartEmail.setSmtpPort(587);//qq端口
       multiPartEmail.setHostName("smtp.qq.com");//服务器
       //发件人验证:用户名,授权码
       multiPartEmail.setAuthentication("xxx@qq.com", "aaaaaa");
       multiPartEmail.setFrom("xxx@qq.com");//发件人邮箱
       multiPartEmail.addTo("yyy@qq.com");//收件人邮箱
       //邮件信箱
       multiPartEmail.setSubject("您好!");//标题
       multiPartEmail.setMsg("收到请回答!");//正文
       multiPartEmail.setCharset("utf-8");//字符集
//设置添加附件
       EmailAttachment emailAttachment = new EmailAttachment();
       //设置文件地址
       emailAttachment.setPath("D:\\xx.png");//文件所在磁盘位置及文件名
       //设置格式
       emailAttachment.setDescription(EmailAttachment.ATTACHMENT);
       emailAttachment.setName("tempsnip.png");//邮箱显示文件名
       
       //加载到邮件中
       multiPartEmail.attach(emailAttachment);
       //发送时间
       multiPartEmail.setSentDate(new Date());
       //发送
       multiPartEmail.send();
  } catch (EmailException e) {
       e.printStackTrace();
  }
}
​

 

posted @ 2022-01-15 16:34  壮灬哥  阅读(304)  评论(0编辑  收藏  举报