JSP一点总结

来源:互联网 发布:算法概念和特征 编辑:程序博客网 时间:2024/06/05 11:44

      上篇中提到的那个视频中JSP总结的内容,自己总结一下~

      首先是JSP的运行原理,最上面是JSP的项目,下一层是tomcat容器,再下一层是JDK,最下面是操作系统,tomcat是什么作用呢?-----解析JSP页面,一个jsp的项目=jsp的页面+Servlet+业务逻辑,这就是典型的MVC设计模式,而jsp页面本质上是由Java代码和HTML代码组成的,tomcat的功能就是解析页面,将其中Java代码解析出来,而servlet其实是不需要容器的,因为servlet本身是Java代码,只需要tomcat下一层的JDK解析就可以了。在容器tomcat启动之后,项目就启动了,并随时接受访问,这和main函数不同,只有点执行才运行一次,如果拿到了请求,就把请求页面(这个页面已经经过tomcat解析所以客户端看源代码只能看到html和结果)发回给客户端,客户端拿到页面,若单击,则又发送一个请求,周而复始。

     再就是Servlet的生命周期,在第一次被请求时创建,之后常驻内存,当容器关闭的时候就自动销毁。整个项目中只实例化一次,是单态模式,所以要避免在Servlet中使用全局变量,因为这样会使得修改很混乱。

     关于request和session内置对象,首先说明他们是jsp的内置对象,所以在jsp页面中才能不声明直接使用,每个请求就是一个request对象,当生成新请求时,原来的request就会自动销毁,所以他的生命存在周期很短,经常用于页面传递数据。而一个用户对应一个session对象,关闭浏览器session对象就会销毁,这就是为什么我们关浏览器就会让我们重新输入登录名和密码,经常用来实现页面数据共享。

     关于jstl标签,要晓得查c.tld文件,在jstl的jar包下面的META-INF中,主要经常用的属性有value,name,items,var,varStatus,if,choose,when,foreach,out等等,要记得最开始的那一句<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>,可以不用写%,可以有编号,url不需要写工程名,null的屏蔽等等,老师说推荐使用。

     还有一点就是关于getParameter和getAttribute的区别,前者用于获取前一个页面的数据,提取从前台过来的信息,用于客户与程序员之间,广泛的用于Servlet类中,有时候页面跳转时也会用到,而后者getAttribute是程序员自己set自己get,用于获取settAttribute的数据,用于程序员自己看

   对了,惊奇的发现,中文的空格jsp页面不会忽略可以显示出来。。。(jsp复习下那个视频里)

     

0 0