Java EE学习笔记之二——Servlet部分

来源:互联网 发布:安卓电池电量优化 编辑:程序博客网 时间:2024/06/06 10:49
1. 配置Servlet的两种方法:
   第一种方法:
   使用Annotation来配置Servlet,必须满足以下两点:
   (1)不要在web.xml文件的根元素(<web-app.../>)中指定metadata-complete="true";
   (2)不要在web.xml文件中配置该Servlet。
   第二种方法:
   在web.xml配置Servlet
   (1)配置Servlet的名字:对用web.xml文件中的<servlet/>元素。
   (2)配置Servlet的URL:对应web.xml文件的<servlet-mapping/>元素。
  
   两种同时配置时,web.xml配置优先Annotation配置。
2. 配置load-on-startup的Servlet在应用启动时就创建,这种Servlet通常是用于某些后台服务的Servlet。
   <load-on-startup.../>元素或loadOnStartup属性都只接收一个整型值,这个整型值越小,Servlet就越优先实例化。
3. 如果重写了Servlet类的init(ServletConfig config)方法,则应在重写该方法的第一行调用super.init(cofig),该方法调用HttpServlet的init方法。
4. 每个Servlet的运行都遵循如下生命周期:
   (1)创建Servlet实例。
   (2)Web容器调用Servlet的init方法,对Servlet进行初始化。 (3)Servlet初始化后,将一直存在于容器中,用于响应客户端请求。如果客户端发送GET请求,容器调用Servlet的doGet方法处理并响应请求;如果客户端发送POST请求,容器调用Servlet的doPost方法处理并响应请求。或者统一使用service()方法处理来响应用户请求。
   (4)Web容器决定销毁Servlet时,先调用Servlet时,先调用destroy方法,通常在关闭Web应用之时销毁Servlet。
6. 修改了src中的源代码后,并进行编译之后,必须重启服务器,访问时所做的修改才会起作用。
7. JspWriter out = response.getOutputStream();
   JspWriter out = pageContext.getOut();
   以上两行代码返回的对象都是JspWriter类型,JspWriter类是Writer的子类。
   PrintStream out = new PrintStream(response.getOutputStream());
   以上一行代码返回的对象是PrintStream类型的。PrintStream类是OutputStream类的子类。
8. 总结:当仔细检查完各种代码之后,确定自己的代码没有问题,但依旧浏览器访问不成功,则重启服务器再试一下,有很多细节我们其实都还不不了解。
原创粉丝点击