java编程之--邮件发送例子

一、邮件在软件开发领域应用

1、会员注册时候的邮箱验证,防止机器人注册

2、忘记登录账号密码的时候,使用邮箱找回口令

3.、会员过生日的时候的生日贺卡

4、电商推荐系统进行商品系统的推广

二、邮件发送例子以腾讯QQ邮箱为例

备注:这是核心代码,使用maven进行管理,可以自己进行模块封装

package demo.tt;

import java.util.Date;

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;

/**

 * java邮件发送测试例子

 * <dependency>

    <groupId>com.sun.mail</groupId>

   <artifactId>javax.mail</artifactId>

    <version>1.5.5</version>

   </dependency>

 */

public class App 

{

    public static void main( String[] args ) throws Exception

    {

         System.out.println( "Hello World!" );

         //

        /*QQ邮箱 POP3 和 SMTP 服务器地址设置如下:

                      邮箱 POP3服务器(端口995) SMTP服务器(端口465或587)

        qq.com pop.qq.com      smtp.qq.com

        SMTP服务器需要身份验证。*/

        

         test2();

         

         test1();

    }

    

    /**

     * java邮件发送例子

     * @author QQ:525354786,gaojingsong

     * @throws Exception

     */

    public static void test2() throws Exception{

    Properties props = new Properties();   

         props.put("mail.smtp.port", 25);   

        

         Session session = Session.getInstance(props);  

         session.setDebug(true);  

         // 由邮件会话新建一个消息对象  

         Message message = new MimeMessage(session); 

         //设置邮件  

         InternetAddress from = new InternetAddress("[email protected]");  

         // 设置发件人  

         message.setFrom(from); 

         

         //设置收件人,并设置其接收类型为TO 

         InternetAddress toWhere = new InternetAddress("[email protected]");  

         message.setRecipient(Message.RecipientType.TO, toWhere);  

         

         // 设置主题  

         message.setSubject("XXXXXXXXXX---test2");  

         // 设置信件内容  

         message.setText("Hello,TestMail");  

         // 设置发信时间  

         message.setSentDate(new Date());  

         // 发送邮件并存储邮件信息

         Transport transport = session.getTransport("smtp");

         

        

         // 以smtp方式登录邮箱,第一个参数是发送邮件用的邮件服务器SMTP地址,

         //第二个参数为用户名,第三个参数为密码  

         transport.connect("smtp.qq.com", "[email protected]", "XXXXX"); 

         // 发送邮件,其中第二个参数是所有已设好的收件人地址  

         transport.sendMessage(message, message.getAllRecipients());  

         transport.close();  

   }

    /**

     * java邮件发送例子

     * @author QQ:525354786,gaojingsong

     * @throws Exception

     */

    public static void test1() throws Exception{

    Properties props = new Properties();   

         props.put("mail.smtp.host", "smtp.qq.com");   

         props.put("mail.smtp.port", 25);   

         props.setProperty("mail.transport.protocol", "smtp");  

         Session session = Session.getInstance(props);  

         session.setDebug(true);  

         // 由邮件会话新建一个消息对象  

         Message message = new MimeMessage(session); 

         //设置邮件  

         InternetAddress from = new InternetAddress("[email protected]");  

         // 设置发件人  

         message.setFrom(from); 

         

         //设置收件人,并设置其接收类型为TO 

         InternetAddress toWhere = new InternetAddress("[email protected]");  

         message.setRecipient(Message.RecipientType.TO, toWhere);  

         

         // 设置主题  

         message.setSubject("XXXXXXXXXX==test1");  

         // 设置信件内容  

         message.setText("Hello,TestMail");  

         // 设置发信时间  

         message.setSentDate(new Date());  

          

         Transport transport = session.getTransport();  

         //第一个参数是用户名,第二个参数为密码  

         transport.connect("[email protected]", "XXXXX");

         // 发送邮件,其中第二个参数是所有已设好的收件人地址  

         transport.sendMessage(message, message.getAllRecipients());  

         transport.close();  

    }

}

猜你喜欢

转载自gaojingsong.iteye.com/blog/2280895