java web mail

使用Apache Commons Email组件发送电子邮件

下载Apache Commons Email组件

   下载地址:http://commons.apache.org/mail/

   下载:commons-email-1.2-bin.zip        得到:commons-email-1.2.jar

新建web project项目:

  Build Path: commons-email-1.2.jar           javaMail1.2.jar


代码如下:

sendMail.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<html>
<head><title>Send E-Mail Form</title></head>
<style>* {font-family:"宋体" ; font-size: 14px }</style>
<body>
<p><font color="red">发送邮件的程序</font></p>
  <form action="<%=request.getContextPath()%>/SendMailServlet.java" method="post">
    <table cellspacing="2" cellpadding="2" border="0">      
      <tr><td>收件人</td>
        <td><input type="text" name="to" size="30"></td>
      </tr>
      <tr><td>发件人</td>
        <td><input type="text" name="from" size="30"></td>
      </tr>
      <tr><td>主题</td>
        <td><input type="text" name="subject" size="30"></td>
      </tr>
      <tr><td valign="top">正文</td>
        <td><textarea cols="50" rows="15" name="body"></textarea></td>
      </tr>
      <tr><td></td><td>
    <input type="submit" value="提交"><input type="reset" value="重置"></td>
      </tr>
    </table>
  </form>
</body>
</html>


SendMailServlet.java

package webbook.chapter16;
import java.io.IOException;
import javax.servlet.http.*;
import javax.servlet.ServletException;
import org.apache.commons.mail.*;
public class SendMailServlet extends HttpServlet {
 private static final long serialVersionUID = -3302031686208755627L;
 public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  request.setCharacterEncoding("UTF-8");
  SimpleEmail email = new SimpleEmail();
  email.setHostName("smtp.163.com");    //邮件服务器
  email.setAuthentication("xxxxxx@163.com", "xxxxxxxx");    //用户名,密码
  try {   
   email.setCharset("UTF-8");
   email.addTo(request.getParameter("to"));
   email.setFrom(request.getParameter("from"));
   email.setSubject(request.getParameter("subject"));   
   email.setMsg(request.getParameter("body"));
   email.send();
   request.setAttribute("sendmail.message", "邮件发送成功!");   
  } catch (EmailException e) {    
   e.printStackTrace();
   request.setAttribute("sendmail.message", "邮件发送失败!");   
  }
  request.getRequestDispatcher("/sendResult.jsp").forward(request, response);
 }


public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    doPost(request, response);
    }

}


sendResult.jsp

<html>
<head><title>Send E-Mail result page</title></head>
<style>
* { font-family:"宋体" ; font-size: 14px }
</style>
<body>
<p><font color="red">${requestScope['sendmail.message']}</font></p>
<p><a href="<%=request.getContextPath()%>/sendMail.jsp">返回</a></p>
</body>
</html>

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <servlet>
    <servlet-name>SendMailServlet</servlet-name>
    <servlet-class>SendMailServlet.SendMailServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>SendMailServlet</servlet-name>
    <url-pattern>*.java</url-pattern>
  </servlet-mapping>
</web-app>

最后访问:http://localhost/email/sendMail.jsp

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值