您当前的位置: 首页 >  Java

liaowenxiong

暂无认证

  • 3浏览

    0关注

    1171博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

JSTL(Java 标准标签库)

liaowenxiong 发布时间:2021-08-06 10:11:49 ,浏览量:3

文章目录
  • JSTL 简介
  • JSTL 可以使用在哪里
  • JSTL 使用步骤
  • 使用标签
    • if 语句
    • 选择语句
    • 迭代遍历语句
    • URL重写
    • 设置属性值
    • 删除属性值
    • 异常捕获
    • 导入其它 JSP 页面
    • 重定向
    • 输出指定的值

JSTL 简介

Java Standard Taglib(Java 标准标签库)。

JSTL 是一种代替 JSP 中的 Java 代码的技术。sun 公司制订的一种技术规范,用来将 JSP 页面中的 java 代码使用类似于 html 当中的标记来替换的一种技术。这样做的目的,是为了使 JSP 页面更好维护以及更好的测试。

JSTL 其实质是什么? JSTL 底层其实是一些 Java 代码,在 JSP 转换成 Servlet 类时,会在 service() 方法体内生成 JSTL 对应的 Java 代码。每种 JSTL 标签都有其固定的含义,最后会生成固定的 Java 代码。

JSTL 可以使用在哪里

JSTL 只能用在 JSP 文件中,不可以在 XML 和 HTML 文件中使用,不可以用在 JS 语境中,不可以用在 Java 的语境中。

可以用在标签的属性值中,例如:

访问jstl05
JSTL 使用步骤

1.需要引用 JSTL 标准标签库相关的 jar 文件。 你如果使用 eclipse 开发,则将 jar 文件 copy 到 WEB-INF\lib,并添加到构建路径中(构建的 classpath 中)。

jar 文件有:jstl.jarstandard.jar

2.在 jsp 文件当中,使用 taglib 指令导入标签。


使用标签

jstl 标签都是结合 el 表达式一起使用的。 jstl 标签中不能使用 ognl 表达式。

if 语句

test 属性:当值为 true,执行标签体的内容(其实就是将内容输出到页面),为 false,则不执行。 var 属性:指定一个绑定名。 scope 属性:指定一个绑定范围。 var 属性和 scope 属性用于将 test 的结果绑定到指定的对象(pageContext、request、session、application)上。

示例代码:







    Title



user's name:${user1.name}
user's gendar:

    男


    女



选择语句

用于分支,当某个条件满足,执行某一个分支。每一个分支条件用 when 标签来表示。

可出现多次,只用于。 test 属性: 当值为 true,执行标签体的内容。

只出现 1 次,只用于 。 当其它分支都不满足条件,则执行该标签体的内容。

示例代码:







    Title




user's gendar:

    男
    女



迭代遍历语句

用于遍历集合 items 属性:指定要遍历的集合。 var 属性: 指定一个绑定名,jsp 引擎会从集合当中取一个对象,绑定到 pageContext 对象上。 varStatus 属性: 指定一个绑定名,对应的绑定值是一个 java 对象,封装了遍历时的一些信息,包括当前遍历的对象的下标(index)以及 是第几次(count)遍历。

示例代码1:








    Title
    
        td {
            text-align: center;
        }
    




    
        name
        gendar
    
    
        
            ${user.name}
            ${user.gendar}
        
    



示例代码2:








    Title
    
        .row1 {
            background-color: red;
        }

        .row2 {
            background-color: yellow;
        }

        td {
            text-align: center;
        }

    




    
        name
        gendar
        count
        index
    
    
        
            ${user.name}
            ${user.gendar}
                
            ${status.count}
                
            ${status.index}
        
    



URL重写

当用户禁止 cookie 以后,会自动在地址后面添加sessionId。 当使用绝对路径时,会自动在地址前添加应用名。 value 属性:指定地址。在表单提交、链接当中,可以使用该标签。






    Title



访问jstl07



设置属性值

绑定一个对象到指定的范围。 var 属性: 指定一个绑定名。 scope 属性:指定一个绑定范围。 value 属性: 绑定值。

示例代码:







    Title



之前 rs=${rs}

之后 rs=${rs}


删除属性值

解除绑定

异常捕获

处理异常,会将异常信息封装成一个对象,绑定到 pageContext 对象上。属性 var 就是用来指定绑定名的。






    捕获异常



    

${msg}


导入其它 JSP 页面

url 指定一个 jsp 文件的地址,jsp 会在运行时调用这个 jsp。






    Title


jstl10...



重定向

重定向到另外一个地址。url 属性指定重定向的地址。

当禁止 Cookie 后,会自动在地址后加上 SessionId。

示例代码:





    Title






输出指定的值

用于输出 el 表达式的值。 value 属性: 指定输出的值。 default 属性: 指定缺省值。 escapeXml 属性: 设置成 true,会将 value 中的特殊字符替换成相应的实体。缺省值就是 true。

示例代码:





    输出指定的值




等价于

${1+1}

str:

<table>



关注
打赏
1661566967
查看更多评论
立即登录/注册

微信扫码登录

0.0519s