Controller代码
/**
* 实现邮箱发送
*/
@RequestMapping("/doMail")
public void doMail(HttpServletRequest request, HttpServletResponse response)
throws Exception, IOException {
JsonReturn jsonReturn = new JsonReturn();
jsonReturn.setState(false);
String EmailName = request.getParameter("EmailName");// 发件人
String EmailPassword = request.getParameter("EmailPassword");// 邮箱密码
String Emails = request.getParameter("Emails");// 收件人
String EmailPostbox = request.getParameter("EmailPostbox");// 主题标题
String EmailContent = request.getParameter("EmailContent");// 邮件内容
if (Emails == null || "".equals(Emails)) {
return;
}
try {
// 以;分割字符串
String EmailsArray[] = Emails.split(";");
Address addresses[] = new Address[EmailsArray.length];
for (int i = 0; i < EmailsArray.length; i++) {
Address address = new InternetAddress(EmailsArray[i]);
addresses[i] = address;
}
// 设置发送邮件服务器
Properties props = new Properties();
props.put("mail.transport.protocol", "smtp");
props.put("mail.host", "smtp.qq.com");
props.put("mail.smtp.auth", "true");
// 创建一个会话
Session session = Session.getInstance(props);
MimeMessage msg = new MimeMessage(session);
// 发送邮件的邮箱地址
Address sendFrom = new InternetAddress("");//写自己想发送的邮箱地址
msg.setFrom(sendFrom);
// 收件人
msg.setRecipients(Message.RecipientType.TO, addresses);
// 设置主题
msg.setSubject(EmailPostbox);
// 设置内容
msg.setText(EmailContent);
// 保存邮件
msg.saveChanges();
// 获取发送工具
Transport ts = session.getTransport();
// 连接发送邮件服务器
ts.connect(EmailName, EmailPassword);
// 发送邮件
ts.sendMessage(msg, msg.getAllRecipients());
jsonReturn.setMsg("发送成功");
jsonReturn.setState(true);
// 关闭连接
ts.close();
} catch (Exception e) {
// 记录日志
e.printStackTrace();
jsonReturn.setMsg("发送失败");
}
PrintWriter writer = response.getWriter();
JSONObject jsonObject = JSONObject.fromObject(jsonReturn);
writer.write(jsonObject.toString());
writer.flush();
writer.close();
Jsp代码
$("#btnFaSong").click(function () {
var EmailName = $("#EmailName").val();
var EmailPassword = $("#EmailPassword").val();
var Emails = $("#Emails").val();
var EmailPostbox = $("#EmailPostbox").val();
var EmailContent = $("#EmailContent").val();
if(EmailName!="" && EmailPassword !="" && Emails !="" && EmailPostbox !="" && EmailContent !=""){
$("#FormMail").ajaxSubmit({
type : 'post',
url : "${ctx}/DataReport/doMail.do",
success : function(data) {
if((typeof data)=="string"){
data = JSON.parse(data);
}
if(data.state==true){
layer.alert(data.msg, {icon: 6});
QingKong();//清空
}else{
layer.alert(data.msg, {icon: 5});
}
}
});
}
});
要想实现此功能要去QQ邮箱设置----帐户那里开启POP3和SMTP服务