_005_jsp介绍

=======================

 @代表全局范围
 
 下面皆是Page的属性
 
         language="java" 是代表使用什么语言嵌入  
         
         contentType浏览器和输出到浏览器用什么编码 前面的text/html 是什么类型的文件,
         如果写的是 video/mp4  那么打开这个jsp的时候就是什么类型打开
         
         pageEncoding是jsp的内容编码,就是这个页面的
         
         import="java.util.Map"  用于导包
         
         session="true" 如果是true可以直接在jsp页面里能直接使用session对象,默认是true,
         在jsp的源代码里面会获取session对象,如果是false则jsp源码里面没有获取
         
         errorpage="error.jsp"  这个error.jsp是我们自己写的页面,如果页面出错,比如代码异常了,那么就会跳到这个页面
         
         isErrorPage="true"  代表这是个错误信息显示界面,和上面的配合,如果出错了,在这个页面直接exception.toString()
         
 
 下面皆是include的属性
         <%@ include 
         
         file="other.jsp"  包含另外一个页面,另一个页面会执行的到本页面当中,包括所有标签
 
 
  下面皆是taglib的属性,用于获取另一个jsp的标签库
           <%@ include 
           
          uri=""   标签库的路径
          prefix    标签库的别名 
 
 

jsp的动作标签
        <jsp:xxx "></jsp:xxx>  注意有一个 : 这个符号
        
        <jsp:include page="123.jsp"
                动态包含,不把目标界面的所有标签拿过来,而是只拿运行结果过来
        
        <jsp:forward page="other.jsp"
                跳转到哪个页面,等同于请求转发
                request.getRequestDispatcher("_006_successful.html").forward(request, response);
          
        <jsp:parm value=""  name=""
                提供参数,一般嵌套在<jsp:forward 标签里,表示到这个页面顺便把参数带过去
                然后那个jsp页面直接request.getParameter("address")即可

jsp九个内置对象,exception对象只有在开头写了<%@ isErrorPage="true" 才能使用

上面4个是作用域对象,表示这些对象可以储存,取值范围有限定,通过SetAttibute和GetAttibute

但是page的作用域只在当前页面

但是request要注意一点,如果是重定向跳转页面,那么这个值也没有了,因为重定向要访问俩次服务器,而我们是第一次

设置的数值,所以第二次跳转到这个页面的时候,数值就为null,如果用的是转发请求那么还可以获取数值

而我们直接访问跳转的那个页面,不去执行SetAttibute 那么这3个都为null,最后一个application有数值

最后一个application整个工程都可以访问

下面还有5个

EL表达式

使用EL表达式取出作用域里面的数值

如果存的是数组,下面使用数组的时候的逗号不代表任何意思,表面字符

如果存的是集合数据

如果存的是map数据

在4个作用域取值的规则

判断user对象是否为空

EL的11个隐式对象

使用EL表达式

JSTL 表达式 

prefix就是一个别名,随便起,uri是路径,固定是core,不过要是1.1版本

JSTL的使用

c:set是设置一个对象的数值,并且放到4个作用域里面,scope是设置存储的域,默认是page

那么我们在域里取值也要指定域

c:if 的test里面是需要写EL表达式的,if没有else,而 if后面的var是代表定一个对象,里面是对象名,去接受test的数值

然后可以在外部去使用这个对象

foreach遍历

相当于上面是用普通的数组遍历,而下面是用真正的foreach遍历

猜你喜欢

转载自blog.csdn.net/yzj17025693/article/details/81410205
005