初学JavaMail,写了一个小程序!!!

来源:互联网 发布:域名如何转让 编辑:程序博客网 时间:2024/04/28 07:35

 1.先将activation.jar和mail.jar两个jar包copy到%java_home%//jdk1.6.0/jre/lib/ext下
2。代码如下:package JMailTest;
/**
 *
 * @author Gavin Johnson
 * @Time 12/20/2006 17:35
 *
 */
import javax.mail.*;
//import javax.activation.*;
import javax.mail.internet.*;
import java.util.Properties;

 class EmailAuthenticator extends Authenticator {
 private String m_username=null;
 private String m_userpass=null;
 void setUserName(String username){
  m_username=username;
 }
 void setUserPass(String userpass){
  m_userpass=userpass;
 }
 EmailAuthenticator (String username,String userpass)
 {
  super();
  setUserName(username);
  setUserPass(userpass);
 }
 public PasswordAuthentication getPasswordAuthentication(){
  return new PasswordAuthentication(m_username,m_userpass);
  }

}
public class newSendemail
{
 public static void main(String args[])
 {
  String host="smtp.163.com";
  String from="from@163.com";
  String to="to@126.com";
  String username="yourname";
  String password="yourpassword";
  EmailAuthenticator mailAuthenticator =new EmailAuthenticator(username,password);
  try{
   Properties props=System.getProperties();
   props.put("mail.smtp.host", host);
   props.put("mail.smtp.auth", "true");
   Session session=Session.getInstance(props,(Authenticator)mailAuthenticator);
   MimeMessage message=new MimeMessage(session);
   message.setFrom(new InternetAddress(from));
   message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
   message.setSubject("你好JavaMail");
   message.setText("宝宝收到邮件了吗?这个小程序真是有意思啊!!呵呵呵呵");
   message.saveChanges();
   Transport transport=session.getTransport("smtp");
   transport.connect(host, username, password);
   transport.sendMessage(message, message.getAllRecipients());
   transport.close();
   System.out.println("消息已经发送成功!");
   }catch(Exception e){
   e.printStackTrace();
  }
  
  
 }
 }

 

 

注意:1。修改下面五个变量的值。      
                String host="smtp.163.com";
  String from="from@163.com";
  String to="to@126.com";
  String username="yourname";
  String password="yourpassword";
      2。这个小程序可以实现不同邮件服务器之间发送邮件(我刚刚测试过的!!)
      3。最简单的测试方法就是把from和to都添为你自己的邮箱地址
希望我的这第一篇在csdn上发表的文章能帮助正在苦苦摸索的兄弟们!!!!