一、Servlet概述
- 什么是Servlet
- 创建第一个Servlet
- Servlet体系结构
- Servlet声明配置
- Servlet2.5版本声明配置
- Servlet生命周期
二、Servlet基本应用
- 处理超链接请求数据
- 处理Form表单请求数据
<form action="UserQueryServlet" method = "post">
用户名:<input type = "text" name = "name">
邮箱:<input type = "text" name = "email">
个人爱好:<input type="checkbox" name="love" value="1">吃饭
<input type="checkbox" name="love" value="2">睡觉
<input type="checkbox" name="love" value="3">打豆豆
<input type = "submit" value = "查询">
</form>
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
String name = request.getParameter("name");
String email = request.getParameter("email");
//获取复选框的值
String [] love = request.getParameterValues("love");
response.getWriter().append("name: " + name + ",email:" + email+ ",love:" + love);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
- 重定向
- 请求转发
forward()方法:将请求转发给其他资源。
include()方法:将其他资源并入到当前请求中。
- 请求转发与重定向数据传递
- 请求转发与重定向的区别
重定向和请求转发都可以让浏览器获得另外一个URL所指向的资源,但两者的内部运行机制有很大的区别:
三、ServletConfig、ServletContext接口
- ServletConfig接口
- ServletContext接口
- ServletContext域属性
- 获取Web应用信息
四、Servlet请求与响应
- HttpServletRequest接口
- HTTP协议
- HTTP请求参数中文乱码问题
在进行请求参数传递时,经常会遇到请求数据为中文时的乱码问题,出现乱码的原因与客户端的请求编码方式(GET请求或POST请求)以及服务器的处理编码方式有关。
- HttpServletRequest属性
- HttpServletResponse接口
- HTTP协议响应报文
- HTTP协议响应行
- HTTP协议响应消息头
- 创建响应正文
- 响应输出中文乱码问题