前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Java Web_08】JSP、EL 表达式、JSTL

【Java Web_08】JSP、EL 表达式、JSTL

作者头像
用户8250147
发布2021-02-04 10:11:22
5950
发布2021-02-04 10:11:22
举报
文章被收录于专栏:黑马

一、JSP

1. 概述
代码语言:javascript
复制
* 当浏览器请求对应的JSP 时 ,JSP 经过转义形成对应的java文件,java文件
经过编译 链接 形成 .class 文件。.class 文件会用来创建 servlet 对象
这个对象就可以提供动态html响应。 
2. JSP语法
代码语言:javascript
复制
① 声明区 
    * <%! 在类中方法外,属于成员位置  %> 
② 表达式
    * <%= 这里输出到页面,在 service 方法中 %> 
③ 代码块--- 代码片段
    * <% 在 service 方法中 %>
④ JSP 中的注释 
   * <!--  标记语言注释 -->   它是要发给浏览器的   
   * <%--  JSP 注释  --%>   不发给浏览器 
   * java语言注释    //    /**/    /** */   不发给浏览器 
3. JSP指令
代码语言:javascript
复制
① 语法
    * <%@指令名   属性="值"   属性2="值"   %>
② JSP 中的三大指令 作用 以及属性  属性作用   
   * page 指令 
        - 作用:用来导包 和做一些页面属性的设置 
        - 属性:
            import   用来导包 
            errorPage   当jsp出现错误时 跳转到显示比较友好的一个页面上
            isErrorPage  是不是一个错误 页面   如果是则可以使用exception对象来获取异常信息       
            pageEncoding  页面用什么编码保存页面信息 
            contentType    页面以什么格式和编码进行显示数据                       
   * taglib指令
        - 作用:用来导入标签库的指令 
        - 属性:
            prefix  前缀 用来指定标签库的代号 短名     
            uri     统一资源标识    用来指定标签库的位置   
   * include 指令 
        - 作用: 用来包含特定页面的指令   静态包含
        - 属性:
            file   用来指定包含的页面 
4. JSP动作
代码语言:javascript
复制
① 语法
    * <jsp:动作名  属性="值"  >  </jsp:动作名>
        如果中间没有内容 还可以简写成     <jsp:动作名    属性="值"  / >
    * 示例
        <jsp:include  属性="值"  >  
            <jsp:param   name=""  value="" />  //传递参数
        </jsp:include>
5. JSP九大内置对象
代码语言:javascript
复制
* out          JspWriter             向jsp对应位置输出内容
* request      HttpServletRequest    封装Http请求信息的对象 
* response     HttpServletResponse   封装Http响应信息的对象 
* session      HttpSession           封装会话信息的对象 
* pageContext  PageContext           封装页面上下文信息的对象 
* page         Object                JSP 页面本身 
* application  ServletContext        封装servlet上下文信息的对象 
* config       ServletConfig         封装servlet 配置信息的对象 
* exception    Exception             封装异常信息的对象     

二、EL表达式

1. 概述
代码语言:javascript
复制
* Expression Language 表达式语言,用于替换和简化jsp页面中java代码的编写
2. 用法
代码语言:javascript
复制
* ${表达式}
* 忽略 EL 表达式
    \${表达式}
    <%@page isELIgnored="true" %>
3. 语法
代码语言:javascript
复制
① ${域名称.键名}:从指定域中获取指定键的值
    * 域名称:
        1. pageScope        -->     pageContext
        2. requestScope     -->     request
        3. sessionScope     -->     session
        4. applicationScope -->     application(ServletContext)
    * 示例
        ${requestScope.name}
② ${键名}:表示依次从最小的域中查找是否有该键对应的值,直到找到为止。
③ 获取对象、List集合、Map集合的值
    - 对象:
        * ${域名称.键名.属性名}
            本质上会去调用对象的getter方法
    - List集合:
        * ${域名称.键名[索引]}
    - Map集合:
        * ${域名称.键名.key名称}
        * ${域名称.键名["key名称"]}
④ 隐式对象:
    * el表达式中有11个隐式对象
    * pageContext:
        * 获取jsp其他八个内置对象
        * 示例:
            ${pageContext.request.contextPath}:动态获取虚拟目录

三、JSTL

1. 概述
代码语言:javascript
复制
* JavaServer Pages Tag Library  JSP标准标签库,是由Apache组织提供的开源的免费的jsp标签
2. 用法
代码语言:javascript
复制
* 导包
* 引入标签库
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3. 语法
代码语言:javascript
复制
① if:相当于java代码的if语句
    - 属性:
        * test 必须属性,接受boolean表达式
            * 如果表达式为true,则显示if标签体内容,如果为false,则不显示标签体内容
            * 一般情况下,test属性值会结合el表达式一起使用
        - 注意:
代码语言:javascript
复制
            * c:if标签没有else情况,想要else情况,则可以在定义一个c:if标签
② choose:相当于java代码的switch语句
    - 使用choose标签声明                     相当于switch声明
    - 使用when标签做判断                     相当于case
    - 使用otherwise标签做其他情况的声明        相当于default
 
③ foreach:相当于java代码的for语句
    - 遍历集合
        <c:forEach items="${requestScope.pageBean.list}" var="emp" varStatus="s">
            ${emp.xxx}
        </c:forEach>
    - for循环
        <c:forEach begin="1" var="i" step="2" end="${requestScope.pageBean.pageCount}" varStatus="s">
            ${i}    //从 beging 开始 步长为2 前进
            ${s.index}    //从 0 开始 ++
        </c:forEach>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、JSP
    • 1. 概述
      • 2. JSP语法
        • 3. JSP指令
          • 4. JSP动作
            • 5. JSP九大内置对象
            • 二、EL表达式
              • 1. 概述
                • 2. 用法
                  • 3. 语法
                  • 三、JSTL
                    • 1. 概述
                      • 2. 用法
                        • 3. 语法
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档