javaMail

来源:互联网 发布:ipad pro办公软件 编辑:程序博客网 时间:2024/06/11 04:46

用java发邮件是一个十分简单的事情,javax.email包就是用来发电子邮件的,但是今天我介绍的方式更加简单。

首先你需要导入两个JAR包mail.jar和commons-email-1.5.jar,这两个jar包在 网上一搜就有。

package mailDemo;
import org.apache.commons.mail.DefaultAuthenticator;
import org.apache.commons.mail.Email;
import org.apache.commons.mail.SimpleEmail;
public class sendMail {
 public static void sendM()throws Exception{
 Email email = new SimpleEmail();
 email.setHostName("smtp.qq.com");//设置邮箱服务器,我这用的是qq的
 email.setSmtpPort(465);//设置邮箱服务器端口号
 email.setAuthenticator(new DefaultAuthenticator("",""));//你的qq账号和授权码
//登录你的qq邮箱,进入账号设置,获得SMTP授权,得到授权码
 email.setSSLOnConnect(true);
 email.setFrom("");//你的账号,邮件从这里发出去
 email.setSubject("发个邮件试试看!");//邮件的标题
 email.setMsg("我就想试试能不能发出去");//邮件的内容
 email.addTo("");//发给谁
 email.send();
 }
 public static void main(String[] args) {
  try {
   sendMail.sendM();
  } catch (Exception e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }
}

把上述代码拷贝到你的的项目中,导入用到的jar包,把空缺处填写完整就可以点击运行了。

下面附上用javax.email写的

public static boolean sendMail(String email, String emailMsg) {
  
  String from = "";     // 邮件发送人的邮件地址
  String to = email;           // 邮件接收人的邮件地址
  final String username = "";   //发件人的邮件帐户
  final String password = "";        //发件人的邮件密码

  //定义Properties对象,设置环境信息
  Properties props = new Properties();
  //设置邮件服务器的地址
  props.setProperty("mail.transport.protocol", "smtp");//设置发送邮件使用的协议
  props.setProperty("mail.smtp.host", "smtp.qq.com"); // 指定的smtp服务器
  props.setProperty("mail.smtp.auth", "true");
  //创建Session对象,session对象表示整个邮件的环境信息
  Session session = Session.getInstance(props);
  //设置输出调试信息
  session.setDebug(true);
  try {
   //Message的实例对象表示一封电子邮件
   MimeMessage message = new MimeMessage(session);
   //设置发件人的地址
   message.setFrom(new InternetAddress(from));
   //设置主题
   message.setSubject("用户激活");
   //设置邮件的文本内容
   //message.setText("Welcome to JavaMail World!");
   message.setContent(emailMsg,"text/html;charset=utf-8");//
   //从session的环境中获取发送邮件的对象
   Transport transport=session.getTransport();
   //连接邮件服务器
   transport.connect("smtp.qq.com",25, username, password);
   //设置收件人地址,并发送消息
   transport.sendMessage(message,new Address[]{new InternetAddress(to)});
   transport.close();
   return true;
  } catch (MessagingException e) {
   e.printStackTrace();
   return false;
  }
 }

今天注册CSDN,开始写我的第一个博客,以后每周会写一篇博客,来记录学习过程。原本我有自己的网站,wangjinlong.xin,但是没有人浏览,感觉不爽,就没写东西了。


原创粉丝点击