当前位置: 代码迷 >> Web前端 >> 怎的使用Spring发邮件?(转)
  详细解决方案

怎的使用Spring发邮件?(转)

热度:276   发布时间:2012-10-29 10:03:53.0
怎样使用Spring发邮件?(转)
怎样使用Spring发邮件?(转)
关键字: spring 邮件
关于Spring的邮件发送的功能演示:
(我把程序中一些敏感的地方替换成了其他的文字,直接调试肯定不行,只是给大家一个参考)
  需要用到的jar包是
  spring-context.jar
  mail.jar
  spring-core.jar
  activation.jar
  commons-logging.jar
  这些是程序必须要用到的包。

1:简单邮件
Java代码
简单邮件中是可以实现邮件群发的功能的,区别是收件人可以是一个数组。  
   package com;  
   import org.springframework.mail.SimpleMailMessage;  
   import org.springframework.mail.javamail.JavaMailSenderImpl;  
   /** 
     * 本类测试简单邮件 
     * @author sunny 
     * 
     */ 
   public class SingleMailSend {  
public static void main(String args[]){  
JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();  
//设定mail server  
senderImpl.setHost("192.168.1.1");  
senderImpl.setUsername("username");  
senderImpl.setPassword("password");  
   
   
//建立邮件消息  
SimpleMailMessage mailMessage = new SimpleMailMessage();  
//设置收件人,寄件人  
       //String[] array = new String[]  {"sun111@163.com","sun222@sohu.com"};  
//mailMessage.setTo(array);  
mailMessage.setTo("sun111@163.com");  
mailMessage.setFrom("webadmin@163.com");  
mailMessage.setSubject("测试邮件群发!");  
mailMessage.setText("测试我的简单邮件发送机制!!");  
   
//发送邮件  
senderImpl.send(mailMessage);  
   
System.out.println("邮件发送成功.....");  
  }  
   } 

简单邮件中是可以实现邮件群发的功能的,区别是收件人可以是一个数组。
    package com;
    import org.springframework.mail.SimpleMailMessage;
    import org.springframework.mail.javamail.JavaMailSenderImpl;
    /**
      * 本类测试简单邮件
      * @author sunny
      *
      */
    public class SingleMailSend {
public static void main(String args[]){
  JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();
  //设定mail server
  senderImpl.setHost("192.168.1.1");
  senderImpl.setUsername("username");
  senderImpl.setPassword("password");
 
 
  //建立邮件消息
  SimpleMailMessage mailMessage = new SimpleMailMessage();
  //设置收件人,寄件人
        //String[] array = new String[]  {"sun111@163.com","sun222@sohu.com"};
  //mailMessage.setTo(array);
  mailMessage.setTo("sun111@163.com");
  mailMessage.setFrom("webadmin@163.com");
  mailMessage.setSubject("测试邮件群发!");
  mailMessage.setText("测试我的简单邮件发送机制!!");
 
  //发送邮件
  senderImpl.send(mailMessage);
 
  System.out.println("邮件发送成功.....");
   }
    }



2:HTML邮件的发送
 
Java代码
package com;  
    import javax.mail.internet.MimeMessage;  
    import org.springframework.mail.javamail.JavaMailSenderImpl;  
    import org.springframework.mail.javamail.MimeMessageHelper;  
    /** 
     * 本类测试html邮件 
     * @author sunny 
     * 
     */ 
    public class HTMLMailDemo {  
/** 
  * @param args 
  */ 
public static void main(String[] args) throws Exception{  
  JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();  
    
  //设定mail server  
  senderImpl.setHost("192.168.1.1");  
  senderImpl.setUsername("username");  
  senderImpl.setPassword("password");  
    
        //建立邮件消息,发送简单邮件和html邮件的区别  
  MimeMessage mailMessage = senderImpl.createMimeMessage();  
  MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage);  
         
  //设置收件人,寄件人  
  messageHelper.setTo("sun111@163.com");  
  messageHelper.setFrom("webadmin@163.com");  
  messageHelper.setSubject("测试HTML邮件!");  
  //true 表示启动HTML格式的邮件  
  messageHelper.setText("<html><head></head><body><h1>hello!!zhangjian</h1></body></html>",true);  
    
  //发送邮件  
  senderImpl.send(mailMessage);  
    
  System.out.println("邮件发送成功.....");  
}  
    } 

package com;
    import javax.mail.internet.MimeMessage;
    import org.springframework.mail.javamail.JavaMailSenderImpl;
    import org.springframework.mail.javamail.MimeMessageHelper;
    /**
     * 本类测试html邮件
     * @author sunny
     *
     */
    public class HTMLMailDemo {
/**
  * @param args
  */
public static void main(String[] args) throws Exception{
  JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();
 
  //设定mail server
  senderImpl.setHost("192.168.1.1");
  senderImpl.setUsername("username");
  senderImpl.setPassword("password");
 
        //建立邮件消息,发送简单邮件和html邮件的区别
  MimeMessage mailMessage = senderImpl.createMimeMessage();
  MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage);
      
  //设置收件人,寄件人
  messageHelper.setTo("sun111@163.com");
  messageHelper.setFrom("webadmin@163.com");
  messageHelper.setSubject("测试HTML邮件!");
  //true 表示启动HTML格式的邮件
  messageHelper.setText("<html><head></head><body><h1>hello!!zhangjian</h1></body></html>",true);
 
  //发送邮件
  senderImpl.send(mailMessage);
 
  System.out.println("邮件发送成功.....");
}
    }

3:本类测试邮件中嵌套图片
   
Java代码
package com;  
    import java.io.File;  
    import javax.mail.internet.MimeMessage;  
    import org.springframework.core.io.FileSystemResource;  
    import org.springframework.mail.javamail.JavaMailSenderImpl;  
    import org.springframework.mail.javamail.MimeMessageHelper;  
    /** 
     * 本类测试邮件中嵌套图片 
     * @author sunny 
     * 
     */ 
    public class AttachedImageMail {  
public static void main(String[] args) throws Exception{  
  JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();  
    
  //设定mail server  
  senderImpl.setHost("192.168.1.2");  
  senderImpl.setUsername("username");  
  senderImpl.setPassword("pssword");  
  //建立邮件消息,发送简单邮件和html邮件的区别  
  MimeMessage mailMessage = senderImpl.createMimeMessage();  
  //注意这里的boolean,等于真的时候才能嵌套图片,在构建MimeMessageHelper时候,所给定的值是true表示启用,     
multipart模式  
  MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage,true);  
    
  //设置收件人,寄件人  
  messageHelper.setTo("sun111@163.com");  
  messageHelper.setFrom("webadmin@163.com");  
  messageHelper.setSubject("测试邮件中嵌套图片!!");  
  //true 表示启动HTML格式的邮件  
  messageHelper.setText("<html><head></head><body><h1>hello!!zhangjian</h1>" +  
    "<img src=\"cid:aaa\"/></body></html>",true);  
      
  FileSystemResource img = new FileSystemResource(new File("c:/aaa.jpg"));  
    
  messageHelper.addInline("aaa",img);  
    
  //发送邮件  
  senderImpl.send(mailMessage);  
    
  System.out.println("邮件发送成功.....");  
}  
    } 

package com;
    import java.io.File;
    import javax.mail.internet.MimeMessage;
    import org.springframework.core.io.FileSystemResource;
    import org.springframework.mail.javamail.JavaMailSenderImpl;
    import org.springframework.mail.javamail.MimeMessageHelper;
    /**
     * 本类测试邮件中嵌套图片
     * @author sunny
     *
     */
    public class AttachedImageMail {
public static void main(String[] args) throws Exception{
  JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();
 
  //设定mail server
  senderImpl.setHost("192.168.1.2");
  senderImpl.setUsername("username");
  senderImpl.setPassword("pssword");
  //建立邮件消息,发送简单邮件和html邮件的区别
  MimeMessage mailMessage = senderImpl.createMimeMessage();
  //注意这里的boolean,等于真的时候才能嵌套图片,在构建MimeMessageHelper时候,所给定的值是true表示启用,  
multipart模式
  MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage,true);
 
  //设置收件人,寄件人
  messageHelper.setTo("sun111@163.com");
  messageHelper.setFrom("webadmin@163.com");
  messageHelper.setSubject("测试邮件中嵌套图片!!");
  //true 表示启动HTML格式的邮件
  messageHelper.setText("<html><head></head><body><h1>hello!!zhangjian</h1>" +
    "<img src=\"cid:aaa\"/></body></html>",true);
   
  FileSystemResource img = new FileSystemResource(new File("c:/aaa.jpg"));
 
  messageHelper.addInline("aaa",img);
 
  //发送邮件
  senderImpl.send(mailMessage);
 
  System.out.println("邮件发送成功.....");
}
    }

4:  测试邮件中包含附件
package com;Java代码
 
   import java.io.File;  
   import javax.mail.internet.MimeMessage;  
   import org.springframework.core.io.FileSystemResource;  
   import org.springframework.mail.javamail.JavaMailSenderImpl;  
   import org.springframework.mail .javamail.MimeMessageHelper;  
   public class AttachedFileMail {  
/** 
* 本类测试的是关于邮件中带有附件的例子 
* @param args 
*/ 
public static void main(String[] args) throws Exception{  
   JavaMailSenderImpl senderImpl = new JavaMailSenderImpl();  
   
//设定mail server  
senderImpl.setHost("192.168.1.2");  
senderImpl.setUsername("username");  
senderImpl.setPassword("password");  
//建立邮件消息,发送简单邮件和html邮件的区别  
MimeMessage mailMessage = senderImpl.createMimeMessage();  
//注意这里的boolean,等于真的时候才能嵌套图片,在构建MimeMessageHelper时候,所给定的值是true表示启用,     
ultipart模式  
MimeMessageHelper messageHelper = new MimeMessageHelper(mailMessage,true);  
   
//设置收件人,寄件人  
messageHelper.setTo("sun111@163.com");  
messageHelper.setFrom("webadmin@163.com");  
messageHelper.setSubject("测试邮件中上传附件!!");  
//true 表示启动HTML格式的邮件  
messageHelper.setText("<html><head></head><body><h1>你好:附件中有关于CSS的学习资料!!     
lt;/h1></body></html>",true);  
     
FileSystemResource file = new FileSystemResource(new File("d:/CSS110.rar"));  
//这里的方法调用和插入图片是不同的。  
messageHelper.addAttachment("CSS110.rar",file);  
   
//发送邮件  
senderImpl.send(mailMessage);  
   
System.out.println("邮件发送成功.....");  
}  
   } 
  相关解决方案