Day10_22——Jsp的三大指令和动作标签

JSP三大指令

一个jsp页面中,可以有0~N个指令的定义
1、page --> 最复杂:<%@page language=”java” info=”xxx” ...%>

  • pageEncoding和contentType:

pageEncoding它指定当前jsp页面的编码,只要和项目编码相同,就不会有乱码。在服务器要把jsp编译成.java文件时需要使用pageEncoding
contentTyoe:它表示添加一个响应头:Content-Type。
等同于response.setContentType(“text/html;charset=utf-8”);
如果两个属性只提供一个,那么另一个的默认值为设置的那一个。
如果两个都没有设置,那么默认值为ISO。

  • import:导包,可以出现多次
  • errorPage和isErrorPage

errorPage:当前页面如果抛出异常,那么转发到哪一个页面,由errorPage来指定
isErrorPage:它指定当前页面是否为处理错误的页面,当该属性为true时,这个页面会设置状态码为500,而且这个页面可以使用9大内置对象中的 exception

  
    404
    /errorPage/errorPage.jsp
  
  
    500
    /errorPage/errorPage.jsp
  
  
    java.lang.RuntimeException
    /errorPage/errorPage.jsp

  • autoFlush和buffer

autoFlush:指定jsp的输出流缓冲区满时,是否自动刷新!默认时true,如果为false,那么在缓冲区满时就会抛出异常
buffer:指定缓冲区大小,默认为8kb,通常不需要修改

  • isELIgnored:是否忽略el表达式,默认为false,不忽略,即支持
  • 基本没有:

language:指定当前jsp编译后的语言类型,默认是java。
info:信息
isTHreadSafe:当前的jsp是否支持并发访问,默认是false。
session:当前页面是否支持session,如果为false,那么当前页面就没有session这个内置对象
extends:让jsp生成的servlet去继承该属性的指定的类
2、include --> 静态包含

  • 与RequestDispatcher的include()方法的功能相似
  • <%@include%> 它是在Java编译成java文件时完成的,它们共同生成一个java文件,让后在共同生成一个class文件
  • RequestDispatcher的include()是一个方法,包含和被包含的是两个Servlet,即两个.class,它们只是把响应的内容给合并了
  • 作用:把页面分解了,使用包含的方式组合在一起,这样一个页面中不变的部分,就是一个独立的jsp,而我们只需要处理变化的页面。
    3、taglib --> 导入标签库
  • 两个属性:
    prefix:指定标签库在本页面的前缀,由自己来起名称
    uri:指定标签库的位置
    <%@taglib prefix=”s” uri=”/ddddd”%>

JSP的动作标签

这些jsp的动作标签,与html提供的标签有本质的区别

  • 动作标签是由tomcat(服务器)来解释执行,它与java代码一样,都是在服务器端执行的
  • html由浏览器来执行
  • :转发!它与RequestDispatcher的forward方法是一样的,一个是在Servlet中使用,一个是在jsp中使用
  • :包含!它与RequestDispatcher的include方法是一样的,一个是在Servlet中使用,一个是在jsp中使用

<%@include%>和有什么不同?——前者是真正的合并,而后者相当于调用。

  • :它用来作为forward和include的子标签,用来给转发或包含的页面传递参数

Jsp中的配置

在\cong\context.xml中,添加reloadable=”true” 自动加载tomcat(适合在开发阶段使用)

你可能感兴趣的:(Day10_22——Jsp的三大指令和动作标签)