DispatcherServlet
Html
a标签
target属性设置哪个目标进行跳转
self : 表示当前页面
blank: 新页面
列表
无序:ul ; 有序:ol
iframe : 内签标签
Servlet
post下,要设置字符集编码,不然会乱码
继承关系
继承关系
Servlet 接口
GenericServlet 抽象类
http.HttpServlet 抽象子类
相关方法:
Servlet接口
void init(config) -- 初始化方法
void service(request,response) -- 服务方法
void destory() -- 销毁方法
GenericServlet 抽象类:
void service(request,response) -- 仍然是抽象的
http.HttpServlet 抽象子类
void service(resquest,respon) -- 不是抽象的
生命周期
servlet 是单例线程不安全的;尽量不要在servlet中定义成员变量。如果不得不定义成员变量,那么不要去:1 不要去不要去修改成员变量的值。2 不要根据成员变量的值做一些逻辑判断。
Http
http是无状态的:无法区分是同一个客户端还是不同客户端发送过来的;通过seesion id,跟踪技术来分别;
请求包含了三部分:请求行、请求消息头、请求主体: 普通的get方式请求-query string;post方式--form data;json格式--request
服务器内部转发以及客户端重定向
服务器内部转发:request.getRequestDispatcher("....").forward(request,response);
一次请求响应的过程,对于客户端而言,内部经过了多少次转发,客户端是不知道的
客户端重定向:reson.sendRedirect("....");
两次请求,url有变化,客户端是知道的。
作用域
page : 现在几乎不用
requeset (一次请求响应范围):
session (一次会话范围):
application(整个应用程序范围) :
页数问题

MVC
优化
原问题:通过swtich(operate) {} 来写,导致代码量过长
解决:反射
DispatcherServlet 类