发送邮件

来源:互联网 发布:网络销售红酒骗局 编辑:程序博客网 时间:2024/05/17 01:12
package com.util;import java.util.Properties;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import javax.mail.internet.MimeUtility;import org.springframework.mail.javamail.JavaMailSenderImpl;import org.springframework.mail.javamail.MimeMessageHelper;/** * 邮件工具类 * javax.mail-1.5.6.jar * @author zm * */public class MailUtil {    private static Object obj = new Object();        /**     * 发送邮件1     * @param to 接收人邮件地址     * @param subject    标题     * @param text    内容     * @return     */    public static boolean sendHtml(String to, String subject, String html) {        try {            synchronized (obj) {                // 发送器                    JavaMailSenderImpl sender = new JavaMailSenderImpl();                    sender.setHost(Constant.SYS_EMAIL_HOST);  //smtp.exmail.qq.com                  sender.setPort(25); // 默认就是25                    sender.setUsername(Constant.SYS_EMAIL_NAME);                     sender.setPassword(Constant.SYS_EMAIL_PASSWORD);                    sender.setDefaultEncoding("UTF-8");                    // 配置文件对象                    Properties props = new Properties();                        props.put("mail.smtp.auth", "true"); // 是否进行验证                    Session session = Session.getInstance(props);                    sender.setSession(session); // 为发送器指定会话                                        MimeMessage mail = sender.createMimeMessage();                    MimeMessageHelper helper = new MimeMessageHelper(mail);                    helper.setTo(to); // 发送给谁                    helper.setSubject(subject); // 标题                    helper.setFrom(new InternetAddress(MimeUtility.encodeText("中国")+"<"+Constant.SYS_EMAIL_NAME+">")); // 来自                    // 邮件内容,第二个参数指定发送的是HTML格式                    helper.setText(html,true);                    sender.send(mail); // 发送              }        } catch (Exception e) {            e.printStackTrace();            return false;        }        return true;    }        /**     * 发送邮件2     * @param to 接收人邮件地址     * @param subject    标题     * @param text    内容     * @return     */    public static boolean sendText(String to, String subject, String text) {        Transport transport = null;        try {            synchronized (obj) {                // 发送邮件初始化                Properties props = new Properties();                // 设置SMTP主机                props.put("mail.smtp.host", Constant.SYS_EMAIL_HOST);                // 设置SMTP属性验证                props.put("mail.smtp.auth", true);                // 获得邮件会话对象                Session session = Session.getDefaultInstance(props);                session.setDebug(false);                // 创建MIME邮件对象                MimeMessage message = new MimeMessage(session);                message.setFrom(new InternetAddress(MimeUtility.encodeText("中国")+"<"+Constant.SYS_EMAIL_NAME+">"));                // 创建SMTP邮件协议发送对象                transport = session.getTransport("smtp");                transport.connect((String) props.get("mail.smtp.host"), Constant.SYS_EMAIL_NAME, Constant.SYS_EMAIL_PASSWORD);                                message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));                message.setSubject(subject);                message.setText(text);                transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));            }        } catch (Exception e) {            e.printStackTrace();            return false;        } finally {            try {                if (transport != null) {                    transport.close();                }            } catch (MessagingException e) {                e.printStackTrace();                return false;            }        }        return true;    }}


0 0
原创粉丝点击