zoukankan      html  css  js  c++  java
  • 工具类学习-java实现邮件发送激活码

    问题:用java实现服务器发送激活码到用户邮件。

    步骤一:如果是个人的话,确保在本地安装邮件服务器(易邮服务器)和邮件客户端(foxmail)。

    步骤二:导入jar包  mail.jar,其他的需要什么协议导什么jar。

    package cn.itcast.store.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 {
    
        public static void sendMail(String email, String emailMsg)
                throws AddressException, MessagingException {
            // 1.创建一个程序与邮件服务器会话对象 Session
    
            Properties props = new Properties();
            //设置发送的协议
            //props.setProperty("mail.transport.protocol", "SMTP");
            
            //设置发送邮件的服务器
            //props.setProperty("mail.host", "smtp.126.com");
            //props.setProperty("mail.smtp.auth", "true");// 指定验证为true
    
            // 创建验证器
            Authenticator auth = new Authenticator() {
                public PasswordAuthentication getPasswordAuthentication() {
                    //设置发送人的帐号和密码
                    return new PasswordAuthentication("admin", "admin@store.com");
                }
            };
    
            Session session = Session.getInstance(props, auth);
    
            // 2.创建一个Message,它相当于是邮件内容
            Message message = new MimeMessage(session);
    
            //设置发送者
            message.setFrom(new InternetAddress("admin@store.com"));
    
            //设置发送方式与接收者
            message.setRecipient(RecipientType.TO, new InternetAddress(email)); 
    
            //设置邮件主题
            message.setSubject("用户激活");
            // message.setText("这是一封激活邮件,请<a href='#'>点击</a>");
    
            String url="http://localhost:8080/MyTomcat/UserServlet?method=active&code="+emailMsg;
            String content="<h1>来自购物天堂的激活邮件!激活请点击以下链接!</h1><h3><a href='"+url+"'>"+url+"</a></h3>";
            //设置邮件内容
            message.setContent(content, "text/html;charset=utf-8");
    
            // 3.创建 Transport用于将邮件发送
            Transport.send(message);
        }
        public static void main(String[] args) throws AddressException, MessagingException {
            MailUtils.sendMail("aaa@store.com", "abcdefg");
        }
    }
  • 相关阅读:
    thread_Semaphore信号量
    c 语言文本文件判断是否到达结尾的问题
    c语言快速排序算法(转)
    c语言双向循环链表
    gtk+学习笔记(八)
    c语言循环链表的问题
    linux c获取本地时间
    gtk+学习笔记(七)
    gtk+学习笔记(六)
    gtk+学习笔记(五)
  • 原文地址:https://www.cnblogs.com/ends-earth/p/10804965.html
Copyright © 2011-2022 走看看