mail.jar spring-core.jar
application-mail.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" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd"> <bean id="javaMailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl"> <property name="host" value="smtp.exmail.sina.com"></property> <property name="port" value="25"></property> <property name="username" value="*******@ssreader.cn"></property> <property name="password" value="******"></property> <property name="defaultEncoding" value="UTF-8"></property> <property name="javaMailProperties"> <props> <prop key="mail.debug">false</prop> <prop key="mail.smtp.socketFactory.class">javax.net.ssl.SSLSocketFactory</prop> <prop key="mail.smtp.auth">true</prop> </props> </property> </bean> </beans>
SendMailBySpringMail.java
package test.email;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.core.io.UrlResource;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import javax.activation.URLDataSource;
import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeUtility;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Date;
public class SendMailBySpringMail {
public static JavaMailSender javaMailSender;
static {
javaMailSender = (JavaMailSender) new ClassPathXmlApplicationContext("application-mail.xml").getBean("javaMailSender");
}
/**
* 发送简单文本邮件
* SimpleMailMessage
*/
public static void sendSimpleMailMessage() {
SimpleMailMessage mailMessage = new SimpleMailMessage();
mailMessage.setFrom("******@ssreader.cn");//可选的
mailMessage.setTo("lamamo@163.com");
mailMessage.setSubject("你好啊 ******");
mailMessage.setText("那就随便说说吧" + new Date());
javaMailSender.send(mailMessage);
}
/**
* 发送html类型邮件
* MimeMessage
*/
public static void sendMimeMessage() throws MessagingException {
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "utf-8");
// 可选的,可以用来修改显示给接收者的名字
helper.setFrom("******@ssreader.cn");
helper.setTo("lamamo@163.com");
helper.setSubject("这就是个实验");
helper.setText("<h1>你好</h1>", true);
javaMailSender.send(mimeMessage);
}
/**
* 发送含附件的邮件
*/
public static void sendMimeMessageAttachment() throws MessagingException, UnsupportedEncodingException, MalformedURLException {
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
//第二个参数设置为true,表示允许添加附件
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "utf-8");
helper.setFrom("******@ssreader.cn");
helper.setTo("lamamo@163.com");
helper.setSubject("发送含图片附件的邮件");
//第二个参数为true表示需要内容为HTML格式
helper.setText("<h1>你好</h1>", true);
//需要对文件名进行转码
helper.addAttachment(MimeUtility.encodeText("王.png"), new File("D:\\我的文档\\My Pictures\\logo.png"));
helper.addAttachment(MimeUtility.encodeText("Apache网站图标.gif"), new URLDataSource(new URL("http://www.apache.org/images/asf_logo_wide.gif")));
javaMailSender.send(mimeMessage);
}
/**
* 发送HTML格式含图片的邮件
*/
public static void sendMimeMessageInline() throws MessagingException, MalformedURLException {
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
//第二个参数设置为true,表示允许添加附件
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "utf-8");
helper.setFrom("******@ssreader.cn");
helper.setTo("lamamo@163.com");
helper.setSubject("发送HTML格式含图片的邮件");
//第二个参数为true表示需要内容为HTML格式
helper.setText("<h1>你好</h1><br><img src='cid:fileId'><img src='cid:abc'>", true);
helper.addInline("fileId", new File("D:\\我的文档\\My Pictures\\logo.png"));
helper.addInline("abc", new UrlResource("http://www.apache.org/images/asf_logo_wide.gif"));
javaMailSender.send(mimeMessage);
}
public static void main(String[] args) throws UnsupportedEncodingException, MessagingException, MalformedURLException {
// sendSimpleMailMessage();
sendMimeMessage();
// sendMimeMessageAttachment();
// sendMimeMessageInline();
}
}