HttpServelet 来自 Tomcat
public class LoginController extends HttpServlet {@Overrideprotected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// super.service(req, resp);System.out.println("login");}}
<servlet><servlet-name>login</servlet-name><servlet-class>com.andxx.album.controller.LoginController</servlet-class></servlet><servlet-mapping><servlet-name>login</servlet-name><url-pattern>/login</url-pattern></servlet-mapping>
浏览器发送请求后
Tomcat启动一个线程Handler
- 读取请求协议
- 解析 请求名和参数, 包装成 request, 并创建一个空response(以让控制层执行后的结果能获取回来)
- 找类对象(控制层类对象)
参考web.xml配置文件 (请求 与 真实类 的对应关系), 没有就404
- 用真实类名 返回 获取类对象 找到里面的 service 方法 并执行
- 响应信息交给 response
浏览器 接收 解析 展示 响应信息
service可以处理 get 和 post 请求
doGet可以处理get请求
doPost可以处理post请求
HttpServletRequest
getParameter()
post form-data getParameter()方法获取不到参数 x-www-form-urlencoded时可以获取到参数 why??
HttpServletResponse
setCharacterEncoding() “UTF-8”
setContentType() “application/json;charset=UTF-8”
setContentType()
getWriter()
write()
flush()
