Servlet04.Servlet优化

Servlet04.Servlet优化

1.为什么优化:

一个Servlet默认只处理一种请求:增加了开发复杂度

例如LoginServlet只处理登录请求,RegistServlet只处理注册请求

2.优化Servlet为:

一个Servlet处理一类请求:

UserServlet:可以同时处理登录和注册。 

3.如何优化:

I.开发一个BaseServlet extends HttpServlet(核心控制器):其它Servlet的父类

 接收用户请求

 分发请求(反射)到相应Servlet的方法中处理请求:

  1.获取URI

  2.截取URI获取对应的方法名

  3.通过反射进行方法调用。

II.编写业务处理Servlet extends BaseServlet(业务控制器):业务控制器不要重写service()

例如:UserServlet:regist(),login()

4.请求流转过程:

前端发请求---核心控制器的service()---获取uri---得到methodName---反射调用方法---分发请求到相应业务控制的方法

注意:
uri需要和业务控制器的方法名对应:如果不对应,自定义注解进行映射:读取注解的属性值---反射调用方法

各个业务控制器中的重复代码都可以提取到核心控制器的service()中:例如中文乱码问题

 5.开发注意事项:

I.  业务控制器 extends BaseServlet

II.Web.xml中只对业务控制器进行配置:url-pattern必须使用通配的形式

6.具体开发:

6.1项目框架结构:

Servlet04.Servlet优化

 具体代码:

控制层:

BaseServlet:

Servlet04.Servlet优化

 

 GodServlet

Servlet04.Servlet优化

 

 Servlet04.Servlet优化

 

 Servlet04.Servlet优化

 

 Servlet04.Servlet优化

 

 Servlet04.Servlet优化

 Servlet04.Servlet优化

 

 Servlet04.Servlet优化

 

上一篇:我的第一个JavaWeb项目


下一篇:jquery和servlet如何传递json?