javaEmai的使用

(1)用javaemail发送邮件&需要mail.jar包和activation.jar

在email.html页面输入内容提交到JavaMail.jsp页面处理和发送
1、配置发件人的服务器地址

2、配置发送人的邮箱
3、配置发送人的用户名密码

email.html页面代码:

  1. <html>
  2. <head>
  3. <title>JavaMail.html</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=GB2312">
  5. </head>
  6. <body>
  7. <h2>利用JavaMail来发送电子邮件 - HTML格式</h2>
  8. <form name="SendMessage" Method="post" action="JavaMail.jsp" >
  9. <p>寄信人:<input type="text" name="From" size="30" maxlength="30"></p>
  10. <p>收信人:<input type="text" name="To" size="30" maxlength="30"></p>
  11. <p>主题:<input type="text" name="Subject" size="30" maxlength="30"></p>
  12. <p>格式:<select name="Type" size="1">
  13. <option value="text/plain">Text</option>
  14. <option value="text/html">HTML</option>
  15.  
  16.     </select></p>
  17. <p>内容:</p><p><textarea name="Message" cols=100 rows=50></textarea></p>
  18.  
  19. <input type="submit" value="发送">
  20. <input type="reset" value="重填">
  21. </form>
  22. </body>
  23. </html>
  1. JavaMail.jsp代码:
  2. <%@ page import="javax.mail.*"%>
  3. <%@ page import="javax.activation.*"%>
  4. <%@ page import="javax.mail.internet.*"%>
  5. <%@ page import="java.util.*,java.io.*"%>
  6. <%@ page contentType="text/html;charset=utf8"%>
  7. <%@page import="java.net.URL"%>
  8. <%@page import="org.apache.commons.httpclient.methods.GetMethod"%>
  9. <%@page import="org.apache.commons.httpclient.HttpClient"%>
  10. <%@page import="vdo.ws.GetSource"%>
  11. <html>
  12.   <head>
  13.       <title>CH17 - JavaMail2.jsp</title>
  14.   </head>
  15.   <body>
  16.       <h2>
  17.           利用JavaMail来发送电子邮件 - HTML格式
  18.       </h2>
  19.       <%
  20.      
  21.           InternetAddress[] address = null;
  22.           //request.setCharacterEncoding("utf8");
  23.           String mailserver = "smtp.163.com";//发出邮箱的服务器
  24.           String From = request.getParameter("From");//发出的邮箱
  25.           String to = request.getParameter("To");//发到的邮箱
  26.           String Subject = request.getParameter("Subject");//标题
  27.           String type = request.getParameter("Type");//发送邮件格式为html
  28.           String messageText = request.getParameter("Message");// 发送内容    
  29.          
  30.           boolean sessionDebug = false;
  31.           try {
  32.               // 设定所要用的Mail 服务器和所使用的传输协议
  33.               java.util.Properties props = System.getProperties();
  34.               props.put("mail.host", mailserver);
  35.               props.put("mail.transport.protocol", "smtp");
  36.               props.put("mail.smtp.auth", "true");//指定是否需要SMTP验证
  37.               // 产生新的Session 服务
  38.               javax.mail.Session mailSession = javax.mail.Session.getDefaultInstance(props, null);
  39.               mailSession.setDebug(sessionDebug);
  40.               Message msg = new MimeMessage(mailSession);
  41.               // 设定发邮件的人
  42.               msg.setFrom(new InternetAddress(From));
  43.               // 设定收信人的信箱
  44.               address = InternetAddress.parse(to, false);
  45.               msg.setRecipients(Message.RecipientType.TO, address);
  46.               // 设定信中的主题
  47.               msg.setSubject(Subject);
  48.               // 设定送信的时间
  49.               msg.setSentDate(new Date());
  50.               Multipart mp = new MimeMultipart();
  51.               MimeBodyPart mbp = new MimeBodyPart();
  52.               // 设定邮件内容的类型为 text/plain 或 text/html
  53.               mbp.setContent(messageText, type + ";charset=utf8");
  54.               mp.addBodyPart(mbp);
  55.               msg.setContent(mp);
  56.               Transport transport = mailSession.getTransport("smtp");
  57.               请填入你的邮箱用户名和密码,千万别用我的^_^
  58.               transport.connect(mailserver, "zhang-xinjie", "******");//设发出邮箱的用户名、密码
  59.               transport.sendMessage(msg, msg.getAllRecipients());
  60.               transport.close();
  61.               //Transport.send(msg);
  62.               out.println("邮件已顺利发送");
  63.           } catch (MessagingException mex) {
  64.               mex.printStackTrace();
  65.               out.println(mex);
  66.           }
  67.           try{
  68.                 response.sendRedirect("../indexSelf.jsp");//转向某页
  69.               }catch (Exception e){
  70.                   e.printStackTrace();
  71.           }
  72.       %>
  73.   </body>
  74. </html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值