复习日记-JSP/EL/JSTL

jsp脚本:

  <%..%> Java代码片段

  <%=..%>输出表达式,相当于out.print();

  <%!...%>声明成员

jsp指令:

  page

    重要属性三个:

      contentType:设置响应流的编码,以及通知浏览器用什么编码打开,设置文件mimetype

      pageEncoding:设置页面编码

      这两个属性如果都出现,各自使用各自的编码;若只出现一个属性,两个都使用出现的编码

      若两者都不出现,使用服务器默认的编码ISO8859-1

      import;导包

    了解属性:

      language:jsp可以嵌套的语言

      buffer:设置jsp页面流的缓冲区的大小

      autoflush:是否自动刷新

      extends:声明当前jsp页面继承于哪个类,不能乱写,必须继承HttpServlet及其子类

      session:设置当前页面是否可以使用session内置对象

      errorPage:当前jsp页面出现异常时跳转到哪里

      isErrorPage:声明当前页面是否为一个错误页面,如果为true,可以使用内置对象exception

  include:静态包含,即将其它页面或者servlet的内容包含进来,一起编译运行,生成一个Java文件

  taglib:导入标签库

      格式:<%@taglib  prefix="前缀名"  uri="名称空间" %>

      若导入之后:

        <前缀名:标签..>    例如: <c:if  test="">输出内容</c:if>

jsp内置对象:9个,在jsp页面可以直接使用的对象

  out、request、response、session、exception、page、config、application、pageContext

jsp域对象:

  application

  session

  request

  pageContext:当前页面中可以使用

  pageContext作用:

    1.域对象  xxxAttribute

    2.操作其他域对象xxxAttribute(...,int scope);

    3.findAttribute("")方法,从小到大域依次查找,查找到一个停止查询

jsp动作标签:

  <jsp:forward>:请求转发 == Java的request.getRequestDispatcher(..).forward(..)

  <jsp:include>动态包含:就是将被包含页面或者servlet的运行结果包含到当前页面中

el: jsp内置的表达式语言,从jsp2.0开始,用来代替<%=...%>

  作用:

    1.获取域中的数据

    2.执行运算

    3.获取常见的web对象

    4.调用Java方法

  格式:${表达式}

获取域中的数据  

    注意:若属性名中出现了"."、"+"、"-"等特殊符号,需要使用${xxxScope["属性名"] }这种方式获取

    获取简单数据:${xxxScope.属性名}或者${属性名}    从小到大域依次查询,查找到一个停止查询

    获取复杂数据

      获取数组中的数据:${域中的名称[index] }

      获取集合list中的数据:${域中的名称[index] }

      获取集合map中的数据:${域中的名称.键名 }

   Javabean导航:在域中存储实体对象,使用el表达式取出

        格式:{域中存储的对象名.属性名}

        注意:只有具有对应的get方法才能叫属性,否则只是一个普通字段

      Javabean:

        狭义:满足规范的普通编写的类 

        规范:

          1.公共具体的类   public class

          2.提供私有字段属性

          3.提供公有的set/get方法

          4.提供一个无参构造器(不写构造默认有)

          5.一般实现序列化接口serializable

el还可以执行运算

  四则运算、关系运算(> <..)、逻辑运算(&&  ||)

  注意:

     +:只能进行加法运算,不能拼接,字符串形式的数字也可以

     empty:可以判断一个容器(array、set、list、map)的长度是否为0,还可以一个对象是否为null

        格式:{empty  域中对象名称} 

     三元运算符:{3>4 "yes" :"no"}

////////////////////////////////////////////////////////

el的内置对象(只能在el表达式内使用),共有11个

  pageScope、requestScope、sessionScope、applicationScope

  param、paramValues、header、headerValues、initParam、cookie、pageContext

注意:除了pageContext外,全是map集合

pageContext.request.contextPath:获取项目名

jsp注释:

  HTML注释:<!--   -->:注释内容在Java代码和HTML代码中均会存在

  Java注释:只在Java代码中存在

  jsp注释<%--   %>:旨在jsp页面中存在,翻译成Java之后就没有了

////////////////////////////////////////////////////

jstl:

  jsp标准标签库语言,用来替代在页面上的一些逻辑操作,例如if、循环等等

  使用步骤;

    1.导入jar包

    2.在页面上导入标签库,<%@taglib  prefix="c"  uri="">

    jstl的分类:

      core:核心类库

      fmt:国际化

      xml:过时

      sql:过时

      函数库:很少使用

  常用的core库语句:

     <c:if  test="${el表达式}">满足test条件输出</c:if>

     <c:forEach>

猜你喜欢

转载自www.cnblogs.com/tfboy/p/10375589.html
今日推荐