这里只需要对MailSender和SimpleMailMessage的基本用法 中的实现类和配置稍作修改就成。
实现类的改动较大:
package com.mail.sender;
import com.mail.service.OrderManager;
import org.springframework.mail.MailException;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessagePreparator;
import javax.mail.Message;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
/**
* Created with IntelliJ IDEA.
* User: Administrator
* Date: 12-6-12
* Time: 下午5:58
* To change this template use File | Settings | File Templates.
*/
public class SimpleOrderManager2 implements OrderManager {
private JavaMailSender mailSender;
public void setMailSender(JavaMailSender mailSender) {
this.mailSender = mailSender;
}
public void placeOrder() {
MimeMessagePreparator preparator = new MimeMessagePreparator() {
public void prepare(MimeMessage mimeMessage) throws Exception {
mimeMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("XXXXX@qq.com"));//toXXX邮箱
mimeMessage.setFrom(new InternetAddress("XXXX@qq.com")); //from XXX邮箱
mimeMessage.setSubject("weolcom"); //设置主题
mimeMessage.setText("hello"); //设置内容
}
};
try {
this.mailSender.send(preparator);
} catch (MailException e) {
e.printStackTrace();
}
}
}
这里的mailSender是JavaMailSender类型的,所以可是使用JavaMail的MimeMessage类。
配置文件:
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="smtp.qq.com"/>
<property name="defaultEncoding" value="UTF-8"/>
<property name="username" value="XXXX@qq.com"/>
<property name="password" value="XXXX"/>
<property name="javaMailProperties">
<value>
mail.smtp.auth=true
</value>
</property>
</bean>
<bean id="orderManager" class="com.mail.sender.SimpleOrderManager2">
<property name="mailSender" ref="mailSender"/>
</bean>
这样就完成了,测试一下,如果没有出错就表示成功了
本文介绍如何在Spring框架中配置并实现邮件发送功能。通过简单的代码示例展示了如何使用JavaMailSender接口及其实现类JavaMailSenderImpl来构建邮件发送逻辑。同时,还提供了配置文件的具体设置。
5349

被折叠的 条评论
为什么被折叠?



