spring的发送邮件
3388 点击·0 回帖
![]() | ![]() | |
![]() | spring框架自身集成了发邮件的功能,不需要再引入其他的功能就可以实现了。 首先需要将spring/lib/j2ee目录下的activation.jar和mail.jar加入到工程的classpath,本工程是加入的spring2.0.5的版本,为了简单将j2ee下的所有jar包都引入了。 同时,因为部分用到了spring的依赖注入,所以还需要spring的依赖包,如果不需要spring注入可以不用理会这步。 **************************************************************************************************** <!-- xml部分(注入) --> <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsichemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd" > <bean id="mailSender" class="org.springframework.mail.javamail.javaMailSenderImpl"> <property name="host" value="smtp.163.com" /> <property name="port" value="25" /> <property name="username" value="kenchow163@163.com" /> <property name="password" value="你的用户密码" /> <property name="javaMailProperties"> <props> <prop key="mail.smtp.auth">true</prop> </props> </property> </bean> </beans> ***************************************************************************************************** //程序部分 package test; import java.io.File; import java.util.Properties; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.core.io.FileSystemResource; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.javaMailSender; import org.springframework.mail.javamail.javaMailSenderImpl; import org.springframework.mail.javamail.MimeMessageHelper; public class Test { public void mailSimple() { // TODO Auto-generated method stub ApplicationContext context = new ClassPathXmlApplicationContext("config.xml"); javaMailSender mailSender= (javaMailSender) context.getBean("mailSender"); SimpleMailMessage mail = new SimpleMailMessage(); mail.setFrom("kenchow163@163.com"); mail.setTo("kenchow126@126.com"); mail.setSubject(" 测试spring Mail"); mail.setText("hello,java"); mailSender.send(mail); } public void mailAttachment(){ javaMailSenderImpl senderImpl = new javaMailSenderImpl(); //SMTP验证时,需要用户名和密码 senderImpl.setUsername("kenchow163@163.com"); senderImpl.setPassword("你的密码"); senderImpl.setHost("smtp.163.com"); senderImpl.setPort(25); Properties javaMailProperties = new Properties(); javaMailProperties.setProperty("mail.smtp.auth", "true"); senderImpl.setjavaMailProperties(javaMailProperties); MimeMessage mailMessage = senderImpl.createMimeMessage(); MimeMessageHelper messageHelper; try { messageHelper = new MimeMessageHelper(mailMessage, true); messageHelper.setTo("kenchow126@126.com"); messageHelper.setFrom("kenchow163@163.com"); messageHelper.setSubject(" 主题。。。 "); messageHelper.setText( "<html><head></head><body><h1>Hello! Spring!" + "</h1></body></html>", true); FileSystemResource file = new FileSystemResource(new File("C:\\Documents and Settings\\KenChow\\桌面\\test.xls")); messageHelper.addAttachment("test.xls", file); senderImpl.send(mailMessage); System.out.println("OK"); } catch (MessagingException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 摘自 kenchow126的专栏 | |
![]() | ![]() |