JSP开发之JSTL介绍和使用

[TOC]

0x00 简述什么是JSTL?它有什么作用?

1.答:JSTL(JSP Standard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由 apache 的 jakarta 小组来维护的。

2.答:它可以简化JSP代码编写提供比EL表达式更强大的逻辑处理功能;

如何使用JSTL?

导入JSTL 支持jar文件 jstl.jar 和 standard.jar在jsp文件页面上使用 taglib 来引入标签库,选择核心代码标签库:WeiyiGeek.导包

基础示例:

代码语言:javascript代码运行次数:0运行复制<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

// _prefix 只是一个别名_

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>注意事项:

在选择引入的标签库时JSTL版本应该选择 1.1 Core library及其以上,因为1.0版本不支持EL表达式;0x01 基本用法描述:主要进行记录JSTL基本的一些语法及其用法,与微信的小程序中的wxml内置标签有点像;但是需要注意标签c就是前面prefix设置的别名一一对应的;

1) 变量声明

代码语言:javascript代码运行次数:0运行复制

1) 变量和作用域声明: scope默认是pageContext

输出其值:${sessionScope.name}2) 条件判断

代码语言:javascript代码运行次数:0运行复制

2) 条件判断:获取表达式返回的值并且存记录在flag变量存储在Session里

年龄大于26岁

年龄小于等于26岁

flag:${flag}

flag1:${flag1}

3) 循环迭代

代码语言:javascript代码运行次数:0运行复制

forEach方式1:数字循环

${i}

forEach方式2:自定义一个Persion类注意itemn必须采用EL标签

<%

List list = new ArrayList();

list.add(new Person("WeiyiGeek",21));

list.add(new Person("张伟",21));

list.add(new Person("刘安心",21));

pageContext.setAttribute("list", list);

%>

姓名: ${person.name}, 年龄: ${person.age}

例如:通过bsp获取当前登录人名称与试卷创建人名称是否一致:

代码语言:javascript代码运行次数:0运行复制

<%

String path = request.getContextPath();

String userName = BspUtil.getInstance().getLoginUserName();

pageContext.setAttribute("userName",userName);

%>

执行结果:

WeiyiGeek.jstl基础语法

注意事项:

1.jstl标签别名是在jsp指令 taglib 中进行设置的prefix=”别名”,即<别名:set var="变量名" value="值">2.jstl在定义变量存在的哪里时候默认是page注意这里不是pageContext;