【Java】发送激活邮件

来源:互联网 发布:接外包的网站知乎 编辑:程序博客网 时间:2024/06/10 04:45

   前段时间学习网上商城项目,在用户注册的时候有一个咱们经常遇到的一个功能,就是发送激活邮件。在日常生活中,咱们注册一个用户时也时常用到。所以,总结下来,算是一个常用代码的积累吧。。

 

一、搭建邮箱服务器

 

1、安装邮箱服务器

 

<<eyoumailserversetup.exe>>

 

2、修改域名

工具——服务器设置——shop.com


3、注册账号

账号——新建账号


 

二、安装客户端软件(接收和发送邮件)

Foxmail

配置发送和接收邮件的服务器(localhost本地)


 

三、编码实现发送邮件

1、手动复制mail.jaractivation.jarlib

<<mail.jar>>

<<activation.jar>>

2、删除EE5.0中自带发送邮件的jar

windows——preferences——LibrarySets——Java EE5.0

javax中的mailactivation


 

3、创建邮件发送工具类

<span style="font-family:FangSong_GB2312;font-size:14px;color:#333333;"><strong>package cn.itcast.shop.user.utils;import java.util.Properties;import javax.mail.Authenticator;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.PasswordAuthentication;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.AddressException;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeMessage.RecipientType;/* * 邮件发送工具类 */public class MailUtils {    /*     * 发送邮件的方法     * @param to:收件人     * @param code:激活码     */    public static void sendMail(String to,String code){        /*         * 1.获得一个Session对象         * 2.创建一个代表邮件的对象Message         * 3.发送邮件Transport         */        //1.获得连接对象        Properties props=new Properties();        props.setProperty("mail.host","localhost");        Session session=Session.getInstance(props,new Authenticator(){            @Override            protected PasswordAuthentication getPasswordAuthentication() {                return new PasswordAuthentication("service@shop.com","111");            }        });        //2.创建邮件对象        Message message=new MimeMessage(session);        //设置发件人        try {            message.setFrom(new InternetAddress("service@shop.com"));            //设置收件人            message.addRecipient(RecipientType.TO, new InternetAddress(to));            //抄送:CC   密送:BCC            //设置标题            message.setSubject("来自购物天堂贤达商城的官方激活邮件");            //设置邮件正文            message.setContent("<h1>购物天堂贤达商城官方激活邮件!点下面链接完成激活操作!</h1><h3><a href='http://192.168.21.75:8080/shop/user_active.action?code="+code+"'>http://192.168.21.75:8080/shop/user_active.action?code="+code+"</a></h3>","text/html;charset=UTF-8");            //3.发送邮件            Transport.send(message);        } catch (AddressException e) {            e.printStackTrace();        } catch (MessagingException e) {            e.printStackTrace();        }    }        public static void main(String[] args){        sendMail("ccc@shop.com","11111111111111");    }}</strong></span>

4、在SSH中输入相应的代码

以实现发送邮件工具类中的方法

 

   总结

   学习即将进入第四个年头,越来越意识到积累一些常用的代码是非常有必要的。在了解整个框架的前提下,这些代码会大大提高咱们的工作效率,网上商城是一个很好的实例,希望在学习的过程中不仅仅是对Java的一个入门,还应该有一些常用代码的积累。。


2 0
原创粉丝点击