JSTL 标签库介绍core 核心库综合代码示例
JSTL
JSTL 标签库介绍
JSTL 标签库 是指 JSP Standard Tag Library JSP 标准标签库
EL 表达式是为了替换 jsp 中的表达式脚本,JSTL 是为了替换代码脚本。这样 jsp 页面变得更佳简洁
JSTL 由五个标签库组成
使用 JSTL,需要导入相关的 jar包
代码示例
jstl的快速入门
jstl的快速入门
2){
out.println("10 > 2 成立~")
}
--%>
10 > 2 成立~
注意细节
● taglib 引入标签,要放在行首
● 导入 jstl jar 包后,要重新发布 web 工程,否则不识别 jstl
core 核心库
set 标签可以往域中保存数据
等价 域对象.setAttribute(key,value);
scope 属性设置保存到哪个域
page 表示 PageContext 域(默认值)
request 表示 Request 域
session 表示 Session 域
application 表示 ServletContext 域
var 属性设置 key 是什么
value 属性设置
应用实例
c:set标签的使用
c:set标签的使用
c:set-name的值${requestScope.name}
if 标签用来做 if 判断。
test 属性表示判断的条件(用 EL 表达式输出)
应用实例
c:if标签使用
${num1} > ${num2}
标签
介绍: 多路判断。跟 switch ... case .... default 非非常接近
应用实例
如果${requestScope.score} 那么就明确的指定从request域对象取出数据
如果${score}, 这是就按照从小到大的域范围去获取 pageContext->request->session->application
c:choose标签的使用
c:choose标签的使用
request->session->application
--%>
k1=${k1}
${score}-成绩优秀
${score}-成绩一般, 及格了
${score}-没有及格,下次努力~
标签
介绍: c:forEach 标签 用来遍历输出, 主要有 4 种形式
● 普通遍历输出 i 到 j
● 遍历数组
● 遍历 Map
● 遍历 Lis
应用实例
c:forEach 标签
c:forEach 标签
第1种遍历方式从i到j
${monster.id}
${monster.name}
${monster.skill}
QueryServlet.java
public class QueryServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1. 准备要显示的数据--> 从DB
ArrayList list = new ArrayList();
list.add(new Monster(100, "牛魔王", "芭蕉扇"));
list.add(new Monster(200, "狐狸精", "美人计"));
list.add(new Monster(300, "白骨精", "吃人骨头"));
//2. 把list放入到request域, 供jsp页面使用
request.setAttribute("monsters", list);
//3. 请求转发 list.jsp
request.getRequestDispatcher("/hm/list.jsp")
.forward(request,response);
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
}
query.jsp
查询妖怪
查询妖怪
点击查询所有的妖怪