开发者社区> 技术小阿哥> 正文

jsp中jsp中群发邮件群发邮件

简介:
+关注继续查看
jsp中群发邮件
1、获取需要的jar文件,mail.jar([url]http://java.sun.com/products/javamail/[/url])和activation.jar([url]http://java.sun.com/products/javabeans/glasgow/jaf.html[/url]),将activation.jar和mail.jar复制到应用程序的\WEB-INF\lib中,即可使用。
2、sendmail.jsp文件代码:
<% @page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*,java.io.*,java.util.*,java.text.*, javax.mail.*, javax.mail.internet.*" %>
<jsp:useBean id="connBean" scope="session" class="opendb.opendb"/><html>
<head>
<title>JavaMail 电子邮件发送系统</title>
</head>
<body>
<%
 String userName = (String)session.getAttribute("userName");
 String figure = (String)session.getAttribute("figure");
 String from = "";
 String to = "";
 ResultSet rs = null;
 String smtphost = "smtp.yeah.net"; // 发送邮件服务器
 String user = "zyf0808"; // 填写自己的邮件服务器登录用户名
 String password = "123456789"; // 填写你自己的邮件服务器登录密码
 String subject = connBean.change(request.getParameter("txtSubject")); // 邮件标题
 String body =connBean.change(request.getParameter("txtContent"));// 邮件内容
    if(userName!=null && !userName.equals(""))
  {
     ResultSet rst = connBean.ExecuteQuery("SELECT Email FROM Classmates WHERE UserName = '"+userName+"' ");
     if (rst.next()) 
      from = rst.getString("Email");      //发件人地址
     else from = "[email]zyf0808@yeah.net[/email]";  //换成可用的管理员的邮箱地址
  }
 else
  {
   //未登录
%>
<SCRIPT language="JavaScript">
   alert("对不起,您尚未登录,只有登录的管理员同学才能使用该功能!")
   window.location.replace("../login.jsp");
</SCRIPT>
<% 
  }
 //得到除当前登录管理员外的所有用户的邮箱
 rs = connBean.ExecuteQuery("SELECT Email FROM Classmates WHERE UserName <> '"+userName+"'");
    while (rs.next())
 {
  to = rs.getString("Email"); // 接受人邮件地址
   if (to !=null && !to.equals("") )
  {
  try 
  {
   Properties props = new Properties();
   props.put("mail.smtp.host", smtphost);
   props.put("mail.smtp.auth","true");
   Session ssn = Session.getInstance(props, null);
   MimeMessage message = new MimeMessage(ssn);
   InternetAddress fromAddress = new InternetAddress(from);
   message.setFrom(fromAddress);
   InternetAddress toAddress = new InternetAddress(to);
   message.addRecipient(Message.RecipientType.TO, toAddress);
   message.setSubject(subject);
   message.setText(body);
   Transport transport = ssn.getTransport("smtp");
   transport.connect(smtphost, user, password);
   transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
   transport.close();
  } 
  catch(Exception e) 
   {
    out.println(e.toString());
   }
  }
 }
%>
<SCRIPT language="JavaScript">
   alert("邮件已经成功发送!")
   window.location.replace("../index.jsp");
</SCRIPT>
</BODY>
</HTML>


本文转自 august 51CTO博客,原文链接:http://blog.51cto.com/august/6953,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
JSP 发送邮件
JSP 发送邮件
16 0
regist.jsp 页面回显,注册基本完成| 学习笔记
快速学习 regist.jsp 页面回显,注册基本完成
122 0
JSP用户注册的正则表达式
/* private String username; 用户名不能为空,并且要是3-8的字符 abcdABcd private String password; 密码不能为空,并且要是3-8的数字 private String password2; 两次密码要一致 private String email; 可以为空,不为空要是一个合法的邮箱 priv
1210 0
JSP 用户提交请求
当用户第一次请求一个jsp页面时,首先被执行的方法是构造方法 就是转换为class文件后,他会创建一个Servlet的实例,然后调用Servlet的构造方法,再调用jspInit()方法 ​(1)JSP引擎先把该JSP文件转换成一个Java源文件(Servlet),在转换时如果发现JSP文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出错信息。
673 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载