Kha*_*ifa 2 java email spring-mvc
在我的Web应用程序中,我想发送邮件.有没有办法用Spring MVC做到这一点?什么是最好的方法呢?
谢谢
您可以使用Spring的邮件抽象层轻松发送电子邮件.在applicationContext.xml中定义以下bean
<!-- Mail sender bean -->
<bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="my.smtp.host" />
<property name="username" value="my_username" />
<property name="password" value="my_password" />
</bean>
<!-- Simple mail template -->
<bean id="basicEmailMessage"
class="org.springframework.mail.SimpleMailMessage">
<property name="from">
<value>whateverSenderAddress</value>
</property>
</bean>
<!-- Your service with sender and template injected -->
<bean id="mySendMailService"
class="mypackage.MySendMailService">
<property name="mailSender">
<ref bean="mailSender" />
</property>
<property name="emailTemplate">
<ref bean="basicEmailMessage" />
</property>
</bean>
Run Code Online (Sandbox Code Playgroud)
然后,在mypackage.MySendMailService
:
public class SendMailService {
private MailSender mailSender;
private SimpleMailMessage emailTemplate;
public void sendEmail(String to, String from, String subject, String body)
throws MailException {
SimpleMailMessage message = new SimpleMailMessage(this.emailTemplate);
message.setTo(to);
message.setFrom(from);
message.setSubject(subject);
message.setText(body);
mailSender.send(message);
}
public void setMailSender(MailSender mailSender) {
this.mailSender = mailSender;
}
public void setEmailTemplate(SimpleMailMessage emailTemplate) {
this.emailTemplate = emailTemplate;
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4517 次 |
最近记录: |