使用commons-email进行邮件传递
第一步:相关组件的下载
commons-email的下载:http://commons.apache.org/email/download_email.cgi
第二步:解压到相应的目录
F:\Program Files\commons-email-1.2\ commons-email-1.2.jar
第三步:引入相关的jar包
WEB-INF――lib目录下引入commons-email-1.2.jar和activation.jar和mail.jar
第四步:编写相应的程序
<%@ page import="org.apache.commons.mail.SimpleEmail" %>
<%
request.setCharacterEncoding("gbk");
String addr = request.getParameter("addr");
if(addr == null || addr.trim().equals("")) {
out.println("请输入送货地址!");
return;
} else {
SalesOrder so = new SalesOrder();
so.setAddr(addr);
so.setUser(user);
so.setCart(cart);
so.setODate(new Timestamp(System.currentTimeMillis()));
so.setStatus(0);
int id = so.save();
so = OrderMgr.getInstance().loadById(id);
/*****************邮件发送字段开始******************/
SimpleEmail email = new SimpleEmail();
email.setCharset("gbk");
//设置发送主机的服务器地址
email.setHostName("smtp.163.com");
//设置收件人邮箱
email.addTo("10468465465@qq.com","秦锐");
//发件人邮箱
email.setFrom("chinrui@163.com","金尚购物网");
//如果要求身份验证,设置用户名、密码、分别为发件人在邮件服务器上清册的用户名和密码
email.setAuthentication("chinrui@163.com","code");
//设置邮件主题
email.setSubject("金尚购物网");
String message = "用户名 :" + so.getUser().getUsername() + "\n所购商品 :\n";
List<SalesItem> items = so.getSalesItems();
Double totalprice = 0.0;
for(Iterator<SalesItem> it = items.iterator(); it.hasNext(); ) {
SalesItem ci = it.next();
message += "商品名称 :" + ci.getProduct().getName() + " 商品数量 :" + ci.getCount() + " 单价 : " + ci.getUnitprice() + "\n";
totalprice += ci.getUnitprice() * ci.getCount();
}
message += "总价 : " + (Math.floor(totalprice) * 100) / 100.0 + "元\n";
message += "收货地址 :" + so.getAddr() + "\n欢迎下次光临!" ;
//设置正文消息
email.setMsg(message);
email.send();
/*******************邮件发送字段结束******************/
out.println("下单成功!!!");
session.removeAttribute("cart");
}
%>