| 自制 MVC 框架和 HTTP 服务器
技术栈:Java + MySQL + HTTP + Socket
- Web 框架采用 MVC 架构 进行代码分离
- Model 模型层使用了基于 FileInputStream 的数据读取和基于FileOutputStream 的数据持久化。
- Controller 控制器层使用 HashMap 和 Method Reference 实现路由分发、自定义请求和自定义响应封装。
- View 视图层用 FreeMarker 封装单例染模板生成。
- HTTP 服务器
- 服务器实现了 HTTP 请求接收、解析、生成、返回。
- 底层直接通过 Socket 实现 TCP/IP 通信。
- 通过多线程实现并发访问。
- 根据 Session 原理自制 Session 存储用户会话信息。
- 基于该自制框架,实现了微博和论坛系统项目: 用户模块和权限验证,Cookie/Session,密码 Hash 加盐,帖子和评论的增删改查功能。
| MVC 多人用户论坛
- 技术栈: Java + SSM (Spring + Spring MVC + MyBatis) + MySQL + Linux/Ubuntu + Tomcat + Redis + Nginx + JavaScript + AJAX
- 主要功能:
- 用户模块、登陆注册、权限、密码找回、个人主页和个人信息管理。
- 话题的编辑、发布、删除、以及评论。
- 采用了业界主流的前后端分离模式,前端使用了主流的 Ajax 请求数据开发。
- 选用 Spring Boot 自动配置,Spring MVC 作为框架,Tomcat
- 作为 Servlet 容器。
- 数据存储使⽤ MySQL,ORM 使用 MyBatis 项⽬部署使用 Nginx 作为反向代理,处理静态资源缓存压缩,处理 HTTPS。
- 对变动频率较低的数据进行基于 Redis 的缓存优化,密码找回邮件发送实现异步非阻塞发送。
- 实现对 CSRF、XSS、SQL 注入攻击的防御。
|游戏引擎
- 基于原生 JavaScript、Canvas,实现了场景加载、动画演出、粒子特效、场景移动等功能;可以动态调整游戏数据
- 在游戏引擎上完成了打砖块、飞机大战、Flappybird、马里奥等游戏