构建一个实现简单功能的服务器
知识基础
- XML、HTML
- 面向对象
- String、StringBuilder
- 多线程
- SAX方式的XML读取
- 反射
- 单例模式
实现功能
- 封装Request,实现转发和获取参数功能
- 封装Response实现简单的外网页重定向
- 自定义服务器端口、error页面、欢迎页面
- 按规定格式声明Servlet、ServletMapping
- 支持GET方式传递参数
- 支持POST的URLencoded form data方式传递参数
实现思路
项目结构图
实现篇幅较大,感兴趣请看Java基础-blank server的实现思路
本文看实现效果
效果展示
用默认端口、默认错误页面、默认欢迎页面、无Servlet的服务
使用配置文件自定义端口、自定义错误页面、自定义的欢迎页面、无Servlet的服务
测试Servlet转发功能
测试Servlet重定向功能
多参数获取测试
简单登录功能测试参数获取、根据请求方式的转发功能
代码获取
GitHub代码托管
有兴趣的可以看一看,如有bug纯属正常。