注:在创建servlet之后,还需要在web.xml文件中配置servlet才可以使用

1-1.配置servlet的两种方式

1.使用配置文件

  1. <servlet>
  2. <!-- 声明servlet的名字 :随便什么都可以,但是一般都写类名 -->
  3. <servlet-name>user</servlet-name>
  4. <!-- 全限定类名 -->
  5. <servlet-class>com.xiaoliu.controller.UserServlet</servlet-class>
  6. </servlet>
  7. <servlet-mapping>
  8. <-- 和servlet名字相同 -->
  9. <servlet-name>user</servlet-name>
  10. <!-- 只要客户端发出请求,那么就会去找上面一行里面name对应的servlet名字,再找到类 -->
  11. <url-pattern>/user</url-pattern>
  12. </servlet-mapping>
  13. 我们注意url-pattern它可以有多种拦截形式:
  14. 全路径匹配:/a
  15. 前半段匹配:/a/b/c/*
  16. 扩展名匹配:*.action

2.注解的方式

  1. //和配置文件效果一样
  2. @WebServlet("/User");

1-2.servlet执行流程

servlet执行过程.png
servlet运行流程.png

解决中文字符乱码的问题

1.设置服务器字符集为utf-8

resp.setCharacterEncoding(“utf-8”);

2.通过响应头,设置浏览器也使用utf-8 - 此方法在获取流对象之前调用才有效

// resp.setHeader(“Content-Type”,”text/html; charset=utf-8”); //这一行会设置服务器和客户端都使用utf-8字符集,还设置了响应头 resp.setContentType(“text/html; charset=utf-8”);