基于JavaWeb的网页版邮箱系统设计与实现
资源下载地址:https://download.csdn.net/download/sheziqiong/86790177
资源下载地址:https://download.csdn.net/download/sheziqiong/86790177
目录
一、 项目选题 2
程序功能: 2
二、 开发环境和工具 2
三、 项目使用说明手册 2
四、 系统结构 2
- 项目目录结构 2
- 系统执行过程 3
五、 系统内核心实现 4 - 模块动态加载 4
- 对webpage下的服务进行扫描 4
- 通过retr命令获取邮件,并且通过json格式返回到web前端 5
- 配置文件的读取 6
六、 项目运行截图 7 - 首页 7
- 邮箱邮件查询 7
- 邮件发送 8
- 邮件详情 9
- 配置文件设置 9
- Web服务器错误页 10
- Web服务器主页 10
- 两个不同的邮箱进行测试 11
一、项目选题
基于实现的一个Web服务器的网页版邮箱客户端系统
项目中的服务器为自己实现的Web服务器,对http访问进行响应
项目中的邮箱客户端是基于socket进行smtp和pop3邮箱连接的客户端实现
该项目将Web服务器和邮件客户端两个项目选题相结合
程序功能:
1.Web服务器功能对响应的HTTP资源的请求和对于邮件api的访问给予响应
2.邮件能够实现查询邮件,本文转载自http://www.biyezuopin.vip/onews.asp?id=15154查看邮件详细信息,删除邮件,发送邮件,邮件返回分页等功能
3.此项目在163邮箱和qq邮箱测试成功
二、开发环境和工具
系统环境 Windows10 1903
开发工具 Intellij Idea Ultimate 2019、WebStorm、Chrome
jdk版本 12.0.2(如果在jdk1.8的情况下报错,请按照错误修改)
三、项目使用说明手册
1.使用idea加载并打开工程
2.在serverConfig.properties文件中进行相关的配置文件的配置
3.浏览器输入http://127.0.0.1:8080/index.html进入主页面(如果未修改配置文件信息),输入不存在的资源目录则进入错误页面
4.浏览器输入http://127.0.0.1:8080/mailAgentWeb/index.html进入邮箱客户端web主页面
5.在该页面可以实现邮件查询、邮件删除、邮件详细信息查看等功能,切换tab可以使用邮件发送功能 。
import net.sf.json.JSONObject;import java.io.*;
import java.net.Socket;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class MailAgentThread extends WebService {private InputStream in = null;private OutputStream out = null;private Map<String, String> params = null;//用来保存对应的smtp的地址和对应的认证信息等private Map<String, List<String>> serverAddressInfo = null;//账号:2403116996//授权码:xevyrfcqimxfdhiaMailAgentThread(Socket socket) {try {this.in = socket.getInputStream();this.out = socket.getOutputStream();this.params = new HashMap<>();} catch (IOException e) {e.printStackTrace();}}@Overridepublic void run() {boolean state = false;String apiInfo = readApiInfo(this.in);params.clear();if (!apiInfo.contains("?")) {System.out.println("[万恶之原]mailAgentService请求中未带有参数!");reportError();return;}for (String item : apiInfo.split("\\?")[1].split("&")) {params.put(item.split("=")[0], item.split("=")[1]);}String serverName = params.get("username").split("@")[1];params.put("username", params.get("username").split("@")[0]);MailAgent mailAgent = new MailAgent("smtp." + serverName);state = mailAgent.login(params.get("username"), params.get("password"));if (!state) {System.out.println("[mailAgentService]服务中账号密码登陆失败!");reportError();return;}if (!params.containsKey("type")) {reportError();return;}if (params.get("type").equals("send")) {state = mailAgent.sendMail(params);if (state) {String result = "HTTP/1.1 200 ok \n" +"Content-Type: text/html \n" +"Access-Control-Allow-Origin: *\n";try {this.out.write(result.getBytes());out.flush();out.close();} catch (IOException e) {e.printStackTrace();}}} else if (params.get("type").equals("query")) {//todo:这里是查询邮件的业务逻辑String mailJson = mailAgent.queryMail(params);String result = "HTTP/1.1 200 ok \n" +"Content-Type: application/json;charset=UTF-8 \n" +"Access-Control-Allow-Origin: *\n" +"\n" + mailJson;try {out.write(result.getBytes());out.flush();out.close();} catch (IOException e) {e.printStackTrace();}}else if (params.get("type").equals("delete")){JSONObject json = new JSONObject();state = mailAgent.deleteMail(params);json.put("deleteState",state);String result = "HTTP/1.1 200 ok \n" +"Content-Type: application/json;charset=UTF-8 \n" +"Access-Control-Allow-Origin: *\n" +"\n" + json.toString();try {out.write(result.getBytes());out.flush();out.close();} catch (IOException e) {e.printStackTrace();}}}private void reportError() {String result = "HTTP/1.1 400 ok \n" +"Content-Type: text/html \n" +"Access-Control-Allow-Origin: *\n";try {this.out.write(result.getBytes());out.flush();out.close();} catch (IOException e) {e.printStackTrace();}}
}
资源下载地址:https://download.csdn.net/download/sheziqiong/86790177
资源下载地址:https://download.csdn.net/download/sheziqiong/86790177
基于JavaWeb的网页版邮箱系统设计与实现相关推荐
- (免费分享)基于JavaWeb的高校试题库管理系统设计与实现 毕业论文+项目源码及数据库文件(已发)
源码获取:我的博客资源页面可以下载!!!! 项目名称 (免费分享)基于JavaWeb的高校试题库管理系统设计与实现 毕业论文+项目源码及数据库文件(已发) 系统说明 随着信息技术的不断发展,我们已经 ...
- 基于javaweb+mysql的就业管理系统设计和实现(java+springboot+ssm)
基于javaweb+mysql的就业管理系统设计和实现(java+springboot+ssm) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/s ...
- 基于javaweb项目ssm食品管理系统设计与实现(论文+程序设计源码+数据库文件)
摘要:随着食品产业的发展.食品销量的增加.新食品种类的快速增加.新的食品技术的发展,已经得到各个国家的关注,因为食品安全状况是和广大人民群众的身体健康息息相关的.本系统主要采用springboot开发 ...
- 转让一套基于 Flash 的网页版棋牌平台
赖勇浩(http://laiyonghao.com) 转让一套基于 Flash 的网页版棋牌平台,它是我在 2009 年初开发完成的,当时是接了一个外包,所以才起意做这个项目的,后来项目流产了.最近看 ...
- java发送会议邀请邮件模板_java mail text/calendar格式会议邀请邮件,网页版邮箱接收到的邮件内容无法换行...
java中用mail进行会议邀请邮件(text/calendar格式)的发送,客户端邮箱正常显示,网页版邮箱正文部分无法换行如何解决buffer.append("BEGIN:VCALENDA ...
- 基于javaweb的宠物医院管理系统设计和实现(java+springboot+ssm+mysql+jsp)
基于javaweb的宠物医院管理系统设计和实现(java+springboot+ssm+mysql+jsp) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myecl ...
- 基于javaweb的在线电影售票系统设计和实现(java+springboot+ssm+mysql+jsp)
基于javaweb的在线电影售票系统设计和实现(java+springboot+ssm+mysql+jsp) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myecl ...
- 基于Python实现网页版去水印之去除图片右下角水印
基于Python实现网页版去图片右下角水印 Python可以用OpenCV去除图片水印,但如何结合web框架去实现网页版去水印,带着这样的疑问,我搜索研究了一下,发现是完全可以实现的,而且考虑到部署服 ...
- 基于javaweb的在线心理测评系统设计和实现(java+springboot+ssm+mysql+jsp)
基于javaweb的在线心理测评系统设计和实现(java+springboot+ssm+mysql+jsp) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myecl ...
最新文章
- 图灵访谈系列之九:CNode社区谈Node.js技术及生态
- Android用户界面开发(11):Menu
- shiro 的session持久化
- 圣剑神域单机版服务器维护,圣剑神域单机版
- 解密小程序云开发数据库
- Tablestore + Blink实战:交易数据的实时统计
- 二叉树构造c语言实现,递归创建二叉树c语言实现+详细解释
- Ext this.getView(...).saveDocumentAs is not a function
- centos6.6-zabbix2.4.5安装实战
- 如何将Eclipse中Web项目打成war包
- c++ idea 插件_推荐 33 个 IDEA 最牛配置,写代码太爽了
- 高德地图输入地址获取经纬度_不打开地图也能获取地址-利用百度地图API和Python实现...
- SaltStack 日志管理
- 分数阶微积分基本理论(课堂笔记1)
- 彻底搞懂内存屏障(上)
- htc hd如何刷新官方升级包--转symen
- HTML5文件选择框(各种类型)
- 英雄杀小程序微信区分服务器吗,小程序英雄杀挑战模式怎么玩
- google离线地图实例,加载本地地图瓦片, 支持点线面及图文标注,坐标定位,卫星、电子地图切换
- android 8.0预装APK为可卸载