zoukankan      html  css  js  c++  java
  • 一个简单的邮件发送

    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 MySendMessag2 {
    /**
    * 邮件发送
    */
    public static void send()
    {
    //会话属性设置
    Properties properties=new Properties();
    //身份验证协议设置
    properties.setProperty("mail.smtp.auth", "true");
    //发送协议设置
    properties.setProperty("mail.transport.protocol", "smtp");
    //设置主机服务器
    properties.setProperty("mail.host", "smtp.qq.com");
    //建立会话机制,注入属性
    Session session=Session.getInstance(properties,new Authenticator() {

    @Override
    protected PasswordAuthentication getPasswordAuthentication() {
    //邮箱密码设置
    return new PasswordAuthentication("用户名", "密码");
    }
    });
    //信息的建立
    Message message=new MimeMessage(session);
    //发送方的邮箱的设置
    try {
    message.setFrom(new InternetAddress("发送方地址"));
    } catch (AddressException e) {
    System.out.println("发送方邮箱设置失败");
    e.printStackTrace();
    } catch (MessagingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    //设置主题
    try {
    message.setSubject("美好的主题");
    } catch (MessagingException e1) {
    System.out.println("主题设置有误");
    e1.printStackTrace();
    }
    try {//设置发送内容,将格式设置为html或文本格式,编码为UTF-8
    message.setContent("<a color='red' href='www.baidu.com'>你</a>","text/html;charset=UTF-8 " );
    } catch (MessagingException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
    }



    //接收方邮箱的设置,可以同时有多个接收方,有抄送(cc)和密送(bcc),收件人
    try {//按收件人发送给接收方一,接收方二
    message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(
    "接收方一,“接收方2”"));
    } catch (AddressException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (MessagingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    //跟踪发送信息
    session.setDebug(true);

    //发送信息开始
    try {
    Transport.send(message);
    } catch (MessagingException e) {
    System.out.println("发送失败");
    e.printStackTrace();
    }

    }



    /**
    * @param args
    */
    public static void main(String[] args) {

    send();
    }

    }

  • 相关阅读:
    EclipseTool_v1.0.4(eclipse整合开发工具)
    51单片机堆栈深入剖析
    3.进程
    解决卡巴斯基安装失败的一个方法.
    9.串口操作之API篇 ReadFile WriteFile CloseHandle 及总结
    2.内核对象之<创建和关闭内核对象,跨进程共享>
    1.内核对象之<什么是内核对象,使用计数及安全性>
    TeeChart使用小技巧之 点击Series显示名称
    TeeChart使用小技巧之 曲线分页显示,轴分别显示日期
    8.串口操作之API篇 PurgeComm ClearCommError
  • 原文地址:https://www.cnblogs.com/mengziHEHE/p/3196847.html
Copyright © 2011-2022 走看看