Java Web自定义邮箱服务器,实现前端跨域访问
2016-02-23 10:39
316 查看
目的:对项目进行实时监控,并把结果反馈发送到用户邮箱
原理:由于项目所在的服务器未连接网络,不能再后台进行邮件的发送,所以自己新建一个 邮箱服务,部署到一台联网服务器,然后在前台通过脚本对其访问,实现邮件发送。
代码:
邮箱服务部分:
新建javaweb项目mail
//1.先创建邮件的实体类,内容包括邮件接收者,邮件内容和邮件主题等
public class Mail implements Serializable {
public static final String ENCODEING = "UTF-8"; private String host; // 服务器地址 private String sender; // 发件人的邮箱 private String receiver; // 收件人的邮箱 private String name; // 发件人昵称 private String username; // 账号 private String password; // 密码 private String subject; // 主题 private String message; // 信息(支持HTML) ...省略构造器,构造方法等 } //2.**编写邮件发送工具实现类MailUtil** ``` public class MailUtil { public boolean send(Mail mail) { // 发送email HtmlEmail email = new HtmlEmail(); try { // 这里是SMTP发送服务器的名字:163的如下:"smtp.163.com" email.setHostName(mail.getHost()); // 字符编码集的设置 email.setCharset(Mail.ENCODEING); // 收件人的邮箱 email.addTo(mail.getReceiver()); // 发送人的邮箱 email.setFrom(mail.getSender(), mail.getName()); // 如果需要认证信息的话,设置认证:用户名-密码。分别为发件人在邮件服务器上的注册名称和密码 email.setAuthentication(mail.getUsername(), mail.getPassword()); // System.out.println(mail.getUsername() + "-----" + mail.getPassword()); // 要发送的邮件主题 email.setSubject(mail.getSubject()); // 要发送的信息,由于使用了HtmlEmail,可以在邮件内容中使用HTML标签 email.setMsg(mail.getMessage()); // 发送 email.send(); return true; } catch (EmailException e) { e.printStackTrace(); return false; } } } ``` //3.创建index.jsp,内容如下 ``` <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ page language="java" import="model.*" %> <% Mail mail = new Mail(); String receiver = request.getParameter("receiver"); String msg = request.getParameter("msg"); mail.setHost("**@**"); // 设置邮件服务器,如果不用163的,自己找找看相关的 mail.setSender("**@**"); mail.setReceiver("****@qq.com"); // 接收人 mail.setUsername("**@**"); // 登录账号,一般都是和邮箱名一样吧 mail.setPassword("*******"); // 发件人邮箱的登录密码 mail.setSubject(msg); //主题。可以添加到传过来的参数中 mail.setMessage(msg); new MailUtil().send(mail); %> 页面为空白页面。我们需要时就访问这个**/mail/index.jsp&receiver=&msg=即可,将此项目部署到联网服务器 ``` 监控项目部分: //大体思路为:在后台进行数据的查询,将需要监控的部分查找出来; 设置字段标记已检测过的; 在前台进行后台调用,满足条件的进行邮件的发送(访问**/mail/index.jsp)。阅读更多
相关文章推荐
- java web服务器实现跨域访问
- java web服务器实现跨域访问
- html5的postmessage实现js前端跨域访问及调用解决方案
- java Web项目中,利用其过滤功能,实现访问者每次访问服务器时,记录访问者的IP,访问时间,Url等信息,并保存到文件的操作
- html5的postmessage实现js前端跨域访问及调用解决方案
- java web服务器实现跨域访问
- java web服务器实现跨域访问
- 前端实现跨域访问
- java web服务器实现跨域访问
- html5的postmessage实现js前端跨域访问及调用解决方案
- 服务器实现跨域访问
- spring boot配合前端实现跨域请求访问
- java web FTPClient实现上传文件到指定服务器
- ngrok集成在本地Node.js项目服务器,实现F5调试即可自动打开浏览器且通过外网可访问本地服务器。
- jsonp突破同源策略,实现跨域访问请求
- 前端访问服务器
- cocos2d-x LUA Binding实现C++里访问LUA的自定义对象
- IIS服务器实现跨域调用
- EasyDSS高性能流媒体服务器前端重构(五)- webpack + vue-router 开发单页面前端实现按需加载 - 副本