java spring 邮箱_使用Spring邮件发送Email

Spring提供了一个发送电子邮件的高级抽象层,它向用户屏蔽了底层邮件系统的一些细节,同时负责低层次的代表客户端的资源处理。Spring邮件抽象层的主要包为org.springframework.mail。它包括了发送电子邮件的主要接口MailSender和 封装了简单邮件的属性如from, to,cc, subject, text的值对象叫做SimpleMailMessage。

首先:我们定义一个发送邮件的接口:IMailManager.java

/*

* IMailManager.java

* Copyright 2005, All rights reserved.

*/

package test.mail.manager;

import test.common.logic.IManager;

import test.model.Order;

/**

* Note:this interface mainly deal with the sendOrder

*/

public interface IMailManager extends IManager{

void sendOrder(Order order);

}

然后实现这个接口:MailManager.java

/*

* MailManager.java

* Copyright 2005, All rights reserved.

*/

package test.mail.manager;

import org.springframework.mail.MailException;

import org.springframework.mail.MailSender;

import org.springframework.mail.SimpleMailMessage;

import test.common.logic.impl.Manager;

import test.model.Order;

/**

* Note:the implements of IMailManager

*/

public class MailManager extends Manager implements IMailManager {

private MailSender mailSender;

private SimpleMailMessage message;

public void sendOrder(Order order) {

SimpleMailMessage mailMessage = new SimpleMailMessage(this.message);

mailMessage.setTo(order.getUser().getEmail());

mailMessage.setText("Dear"

+ order.getUser().getFirstName()

+ order.getUser().getLastName()

+ ", thank you for placing order. Your order code is "

+ order.getCode());

try{

mailSender.send(mailMessage);

}catch(MailException ex) {

System.err.println(ex.getMessage());

}

}

/**

* @param mailSender The mailSender to set.

*/

public void setMailSender(MailSender mailSender) {

this.mailSender = mailSender;

}

/**

* @param message The message to set.

*/

public void setMessage(SimpleMailMessage message) {

this.message = message;

}

}

然后我们在Action 里面调用: SendMailAction.java

/*

* SendMail.java

* Copyright 2005, All rights reserved.

*/

package test.mail.action;

import test.common.action.BaseAction;

import test.mail.manager.IMailManager;

import test.order.dao.IOrderDao;

import test.model.Order;

/**

* Note: SendMailAction

*/

public class SendMailAction extends BaseAction {

private IMailManager mailManager;

private IOrderDao orderDao;

private long orderId;

public String execute() throws Exception {

Order order = orderDao.getOrder(orderId);

mailManager.sendOrder(order);

return SUCCESS;

}

/**

* @return Returns the mailManager.

*/

public IMailManager getMailManager() {

return mailManager;

}

/**

* @param mailManager The mailManager to set.

*/

public void setMailManager(IMailManager mailManager) {

this.mailManager = mailManager;

}

/**

* @return Returns the orderDao.

*/

public IOrderDao getOrderDao() {

return orderDao;

}

/**

* @param orderDao The orderDao to set.

*/

public void setOrderDao(IOrderDao orderDao) {

this.orderDao = orderDao;

}

/**

* @return Returns the orderId.

*/

public long getOrderId() {

return orderId;

}

/**

* @param orderId The orderId to set.

*/

public void setOrderId(long orderId) {

this.orderId = orderId;

}

}

最后的就是配置了.在ApplicationContext.xml文件里加上如下的内容:

smtp服务器

用户名

密码

/**如果服务器要求验证,加上此**/

true

25000

class="org.springframework.mail.SimpleMailMessage">

你的电子邮件地址

邮件标题

在对应的action配置文件中加入:

class=" test.mail.action.SendMailAction" singleton="false" >

在xwork配置文件中:

success.ftl

error.ftl

posted on 2005-10-29 20:58 老妖 阅读(3523) 评论(0)  编辑  收藏 所属分类: spring

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值