Java发送邮件程序

近期项目组有个需求,需要使用java程序发送邮件,所以就总结了一下,具体见下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
package com.ixmsoft.apsa.utils;
import  java.util.Properties;
import  javax.mail.Message;
import  javax.mail.Session;
import  javax.mail.Transport;
import  javax.mail.internet.InternetAddress;
import  javax.mail.internet.MimeMessage;
public class Sendmail {
     /**
      * @param args
      * @throws Exception 
      */
     public static void main(String[] args) throws Exception {
         
         Properties prop = new Properties();
         prop.setProperty( "mail.host" "smtp.ixmsoft.com" );
         prop.setProperty( "mail.transport.protocol" "smtp" );
         prop.setProperty( "mail.smtp.auth" "true" );
         // 使用JavaMail发送邮件的5个步骤
         //1 、创建session
         Session session = Session.getInstance(prop);
         // 开启Session的debug模式,这样就可以查看到程序发送Email的运行状态
         session.setDebug( true );
         //2 、通过session得到transport对象
         Transport ts = session.getTransport();4 /16/20164/16/20164/16/20164/16/2016
         //3 、使用邮箱的用户名和密码连上邮件服务器,发送邮件时,发件人需要提交邮箱的用户名和密码给smtp服务器,用户名和密码都通过验证之后才能够正常发送邮件给收件人。
         ts.connect( "authsmtp.ixmsoft.com" ,25,  "username" "password" );
         //4 、创建邮件
         Message message = createSimpleMail(session);
         //5 、发送邮件
         ts.sendMessage(message, message.getAllRecipients());
         ts.close();
     }
     
     /**
     * @Method: createSimpleMail
     * @Description: 创建一封只包含文本的邮件
     *
     * @param session
     * @ return
     * @throws Exception
     */ 
     public static MimeMessage createSimpleMail(Session session)
             throws Exception {
         // 创建邮件对象
         MimeMessage message = new MimeMessage(session);
         // 指明邮件的发件人
         message.setFrom(new InternetAddress( "from@ixmsoft.com" ));
         // 指明邮件的收件人,现在发件人和收件人是一样的,那就是自己给自己发
         message.setRecipient(Message.RecipientType.TO, new InternetAddress( "recei@ixmsoft.com" ));
         // 邮件的标题
         message.setSubject( "只包含文本的简单邮件" );
         // 邮件的文本内容
         message.setContent( "你好啊!" "text/html;charset=UTF-8" );
         // 返回创建好的邮件对象
         return  message;
     }
}