zoukankan      html  css  js  c++  java
  • java发送邮件完整实例 java邮件工具类

    http://yuncode.net/code/c_552a2e2dc593894

    package com.srie.mail;
    
    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;
    
    public class SendmailUtil {
        
        // 设置服务器
        private static String KEY_SMTP = "mail.smtp.host";
        private static String VALUE_SMTP = "10.1.4.125";
        // 服务器验证
        private static String KEY_PROPS = "mail.smtp.auth";
        private static boolean VALUE_PROPS = true;
        // 发件人用户名、密码
        private String SEND_USER = "wangshengdong@itc.cr";
        private String SEND_UNAME = "wangshengdong";
        private String SEND_PWD = "a";
        // 建立会话
        private MimeMessage message;
        private Session s;
     
        /*
         * 初始化方法
         */
        public SendmailUtil() {
            Properties props = System.getProperties();
            props.setProperty(KEY_SMTP, VALUE_SMTP);
            props.put(KEY_PROPS, "true");
            //props.put("mail.smtp.auth", "true");
            s =  Session.getDefaultInstance(props, new Authenticator(){
                  protected PasswordAuthentication getPasswordAuthentication() {
                      return new PasswordAuthentication(SEND_UNAME, SEND_PWD);
                  }});
            s.setDebug(true);
            message = new MimeMessage(s);
        }
     
        /**
         * 发送邮件
         * 
         * @param headName
         *            邮件头文件名
         * @param sendHtml
         *            邮件内容
         * @param receiveUser
         *            收件人地址
         */
        public void doSendHtmlEmail(String headName, String sendHtml,
                String receiveUser) {
            try {
                // 发件人
                InternetAddress from = new InternetAddress(SEND_USER);
                message.setFrom(from);
                // 收件人
                InternetAddress to = new InternetAddress(receiveUser);
                message.setRecipient(Message.RecipientType.TO, to);
                // 邮件标题
                message.setSubject(headName);
                String content = sendHtml.toString();
                // 邮件内容,也可以使纯文本"text/plain"
                message.setContent(content, "text/html;charset=GBK");
                message.saveChanges();
                Transport transport = s.getTransport("smtp");
                // smtp验证,就是你用来发邮件的邮箱用户名密码
                transport.connect(VALUE_SMTP, SEND_UNAME, SEND_PWD);
                // 发送
                transport.sendMessage(message, message.getAllRecipients());
                transport.close();
                System.out.println("send success!");
            } catch (AddressException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (MessagingException e) {
                e.printStackTrace();
            }
        }
     
        public static void main(String[] args) {
            SendmailUtil se = new SendmailUtil();
            se.doSendHtmlEmail("邮件头文件名", "邮件内容", "wangshengdong@itc.cr");
        }
    
    }
  • 相关阅读:
    cstring string 比较之二(学习笔记)
    转 大话设计模式学习笔记(思维导图) 更新中
    转 十三种设计模式的思维导图
    (转)关于栈、堆、静态存储区最大可分配大小的探讨 海量之一
    如何学习网络协议(学习笔记)
    境界篇:linux 驱动开发的境界(学习笔记)
    b.关于vc编程境界的讨论
    关于编程境界的小结
    Java异常(一) Java异常简介及其架构
    多线程简单阐述
  • 原文地址:https://www.cnblogs.com/stono/p/6170715.html
Copyright © 2011-2022 走看看