求一个java 发送Email的例子,我在网上找了很多,但是都好像不行,有的需要申请付费邮箱,有很多是javaee1.4的才行。不知道谁有支持1.5及以上的例子。谢谢。

解决方案 »

  1.   

    http://www.blogjava.net/wangfun/archive/2009/04/15/265748.html
      

  2.   

    新浪的支持smtp。网易的老邮箱也支持smtp,新的就不支持了。
    package oilwellapp.util; 
    import java.util.Date;
    import java.util.Properties;
    import javax.mail.Address;
    import javax.mail.Authenticator;
    import javax.mail.Message;
    import javax.mail.PasswordAuthentication;
    import javax.mail.Session;
    import javax.mail.Transport;
    import javax.mail.internet.InternetAddress;
    import javax.mail.internet.MimeMessage;public class SendMail {
     private String host = "smtp.sina.com"; private String username = "用户名"; private String password = "密码";// private String mail_head_name = "this is head of this mail name";// private String mail_head_value = "this is head of this mail value"; private String mail_to = "***@sina.com"; private String mail_from = "***@sina.com";// private String mail_subject = "注册信息";// private String mail_body = "恭喜您注册成功!";// private String personalName = "我的邮件";
     public SendMail() {
     } /**
      * 此段代码用来发送普通电子邮件
      */
     public void send(String personalName,String mail_subject,String mail_body) /*throws SendMailException*/ {
      try {
       Properties props = new Properties(); // 获取系统环境
       Authenticator auth = new Email_Autherticator(); // 进行邮件服务器用户认证
                props.put("mail.smtp.host", host);
       props.put("mail.smtp.auth", "true");
       Session session = Session.getDefaultInstance(props, auth);
       // 设置session,和邮件服务器进行通讯。
       MimeMessage message = new MimeMessage(session);
       message.setContent("Hello", "text/plain"); // 设置邮件格式
       message.setSubject(mail_subject); // 设置邮件主题
       message.setText(mail_body,"ISO-2022-JP"); // 设置邮件正文
       //message.setHeader(mail_head_name, mail_head_value); // 设置邮件标题
       message.setSentDate(new Date()); // 设置邮件发送日期
       Address address = new InternetAddress(mail_from, personalName);
       message.setFrom(address); // 设置邮件发送者的地址
       Address toAddress = new InternetAddress(mail_to); // 设置邮件接收方的地址
       message.addRecipient(Message.RecipientType.TO, toAddress);
       Transport.send(message); // 发送邮件
       System.out.println("send ok!");
      } catch (Exception ex) {
       ex.printStackTrace();
      // throw new SendMailException(ex.getMessage());
       System.out.println("send no!");
      }
     } /**
      * 用来进行服务器对用户的认证
      */
     public class Email_Autherticator extends Authenticator {
      public Email_Autherticator() {
       super();
      }  public Email_Autherticator(String user, String pwd) {
       super();
       username = user;
       password = pwd;
      }  public PasswordAuthentication getPasswordAuthentication() {
       return new PasswordAuthentication(username, password);
      }
     }// public static void main(String[] args) {
    //  SendMail sendmail = new SendMail();
    //   try {
    //   sendmail.send("Wdfdfd@$$^%%&^*&^*^&(&*)(_)45852211458521454fhgdfg#$%&^&*^552424");        
    //   }
    //   catch (Exception  ex) {
    //   }
    // }}