Servlet的优点
1、 是mvc的基础,其他的框架比如struts1,struts2,webwork都是从servlet基础上发展过来的。所以掌握servlet是掌握mvc的关键。
2、 Servlet把最底层的api暴漏给程序员,使程序员更能清楚的了解mvc的各个特点。
3、 程序员可以对servlet进行封装。Struts2就是从servlet中封装以后得到的结果。
4、 市场上任何一个mvc的框架都是servlet发展过来的,所以要想学好struts2这个框架,了解servlet的运行机制很关键。
\
Servlet的缺点
1、 每写一个servlet在web.xml中都要做相应的配置。如果有多很servlet,会
导致web.xml内容过于繁多。
2、 这样的结构不利于分组开发。
3、 在servlet中,doGet方法和doPost方法有HttpServletRequest和HttpServletResponse参数。这两个参数与容器相关,如果想在servlet中作单元测试,则必须初始化这两个参数。
4、 如果一个servlet中有很多个方法,则必须采用传递参数的形式,分解到每一个方法中。
\
重构servlet
针对servlet以上的特点,我们可以对servlet进行重构,使其开发起来更简单。更容易,更适合团队协作。
重构的目标:
1、 只写一个serlvet或者过滤器,我们这里选择过滤器。
2、 不用再写任何的servlet,代码就很少了。
3、 原来需这样在web.xml中写的要写serlvet,现在改写action。
4、 在action中把HttpServletRequest参数和HttpServletResponse参数传递过去。
5、 在过滤器中通过java的反射机制调用action。
\
\
\
\