JavaWeb 基础学习

1.JavaWeb应用的核心技术是Java Server Page和Servlet,开发一个完整的Java Web应用涉及以下概念及技术。
  1JavaBean
  2EJB组件
  3自定义JSP标签
  4XML
  5Web服务器和应用服务器
2.Servlet组件
  1Servlet组件在web应用中担任重要角色,Servlet运行于Servlet容器中,可以被Servlet容器动态加载,来扩展服务器的功能,
  并提供特定的服务,Servlet按照请求/响应的方式工作。在Struts框架中,控制器组件就是由Servlet组成的。
  2当用户访问某个Servlet时,Servlet容器将会创建一个ServletRequest对象和ServletResponse对象,
  在ServletRequest对象中封装了用户请求信息,然后Servlet容器把ServletRequest和ServletResponse对象传给用户所请求的Servlet
  Servlet把响应结果写到ServletResponse中,然后由Servlet容器把响应结果传给用户。
3.在Java Servlet API中有以下几个比较重要的类,它们决定了Web应用的请求/响应方式及各种共享数据的存放特点。
  1HttpServletRequest:
  Servlet容器把HTTP请求信息包存在HttpServletRequest对象中,Servlet组件从request对象中读取用户的请求数据,
  此外,HttpServletRequest可以存放request范围内的共享数据。
  2HttpServletResponse:用于生成Http响应结果
  3HttpSession:Servlet容器为每个Http会话创建一个HttpSession实例,HttpSession可以存放session范围内的共享数据
  4ServletContext:Servlet容器为每个Web应用创建一个ServletContext实例,ServletContext可以存放application范围内的共享数据
4.Jsp组件
  1当JSP容器接收到web用户的一个jsp文件请求时,它对jsp文件进行语法分析并生成Java Servlet源文件,然后对其编译,
  一般情况下,Servlet源文件的生成和编译仅在初次调用JSP时发生,如果原始的JSP文件被更新,JSP容器检测所做的更新,在执行它之前重新生成
  Servlet并进行编译。
  2尽管JSP在本质上就是Servlet,但这两者的创建方式不一样,Servlet完全由java程序代码构成,擅长于流程控制和事务处理,而通过Servlet来生成动态网页很不直观。
  JSP由Html代码和Jsp标签构成,可以方便的编写动态网页,因此在实际应用中,采用Servlet来控制流程,而采用JSP来生成动态网页。
5.共享数据在WEB应用中的范围
  1在web应用中,如果多种数据需要被多个web组件共享,可以把这些共享数据存放在特定的范围内,共享数据有四种存在范围
    page:共享数据的有效范围是用户请求访问的当前JSP网页
    request:共享数据的有效范围为“用户请求访问的当前web组件”,以及和当前web应用共享同一个用户请求的其他web组件,如果用户请求访问的是jsp网页,
    那么该jsp网页的include和forward标记包含的其它jsp文件也能访问其共享数据。
    session:共享数据存在整个Http会话的生命周期内,同一个Http会话中毒web组件共享它。共享数据实际上是存放于HttpSession中
    application:共享数据存在整个web应用的生命周期内,web应用中的所有web组件都能访问它。共享数据实际上是存放于ServletContext中

    关于HttpSession会话:当客户第一次访问web应用中支持会话的某个网页时,就会开始一个新的Http会话,Servlet容器为这个会话创建一个HttpSession对象,

    接下来,当客户浏览这个web应用的不同网页时,
    始终处于同一个会话中,会话拥有特定的生命周期,在以下情况下,会话将结束生命周期,Servlet容器将Http会话所占用的资源释放掉
    1客户端关闭浏览器
    2会话过期
    3服务器端调用了HttpSession的invalidate方法

posted @ 2016-12-09 16:03  无敌小林爷  阅读(208)  评论(0编辑  收藏  举报