什么是servlet
- 运行在web服务器端的java代码
- 用于处理客户端发来的HTTP请求,并且产生响应
- 在我们的实际开发中,所使用的具体的Servlet对象就是HttpServlet对象,原因是HttpServlet是Servlet的实现类,并提供了HTTP请求的处理方法——(doPost()和doGet()),一般我们只需要重写HttpServlet对象中的doPost()和doGet()方法即可。
servlet与JSP的区别
1.JSP主要以显示为主,servlet承担客户请求与业务处理的功能。
2.JSP主要遵循脚本语言规范(通俗的是不是可以理解为HTML的规范),Servlet遵循java的标准。
3.JSP不需要编译即可运行,Servlet需要在Java编译器编译后才可以运行。
servletAPI编辑常用接口和类
1.Servlet接口
2.ServletConfig接口
3.HttpServletRequest接口
4.HttpServletResponse接口
5.GenericServlet抽象类(实现了Servlet接口,ServletConfig接口中除了service()方法以外的其他方法)
6.HttpServlet抽象类(实现了service方法,并针对HTTP中定义的7种类型请求提供了相应的方法,主要掌握doPost() 和doGet()即可)
补充:抽象类和抽象方法
对于abstract方法只声明,不实现
抽象类可以包含抽象方法也可以不包含,但是抽象方法必须包含在抽象类中
Servlet的创建
Servlet的配置(在web.xml中进行)
1.声明Servlet对象
<servlet>
<servlet-name>SimpleServlet</servlet-name>
<servlet-class>com.MyServlet</servlet-class>
</servlet>
2.映射Servlet
<servlet-mapping>
<servlet-name>SimpleServlet</servlet-name>
<url-patter>/simple</url-patter>
</servlet-mapping>
注意事项:
1.标签中的servlet-name应该与标签中的servlet-name相对应
2.如何将servlet与JSP组件相关联:
在表单中可以使用<form action = "/simple" method = 'post'></form>
3.如何将servlet处理的结果返回给JSP页面:
RequestDispatcher rd = request.getRequestDispatcher("add.jsp");//生成一个调度者
rd.forward(request,resp);
4.在servlet中使用Session
HttpSession session = request.getSession();