3 JSP标签技术

在JSP页面中写入大量的java代码会导致JSP页面中html代码和java代码混杂在一起,会造成页面非常的混乱,难于维护。

于是在JSP的2.0版本中,sun提出了JSP标签技术,推荐使用标签来代替JSP页面中java代码,并且推荐,JSP2.0以后不要在JSP页面中出现任何一行java代码。

3.1 EL表达式

格式:${ 常量、表达式、变量 }

注意:放在EL中的变量必须得现存入作用域中, 才能获取到。

主要作用:

(1)用于从作用域中获取数据,例如:从request域中获取域属性的值

(2)将常量、表达式的值以及从作用域中获取到的数据输出到当前位置

EL使用示例:

(1)通过EL获取常量、表达式或变量的值(得先存入域中),示例:
JSP标签技术

(2)通过EL获取作用域中的数组或集合中的数据/元素

servlet中的代码:
JSP标签技术

JSP中的代码:
JSP标签技术

(3)通过EL获取作用域中的map集合中的数据/元素

servlet中的代码:
JSP标签技术

JSP中的代码:
JSP标签技术

(4)通过EL获取作用域中对象的属性值

servlet中的代码:
JSP标签技术

JSP中的代码:

JSP标签技术

3.2 JSTL标签库

JSTL标签库是为JavaWeb开发人员提供的一套标准通用的标签库;

JSTL标签库和EL配合使用取代JSP中大部分的Java代码;

在使用JSTL标签库之前, 需要完成两件事儿:
JSP标签技术

其中常用的标签如下:

1、<c:set></c:set> – 往四大作用域中添加域属性,或者修改四大作用域中已有的属性

(1) 往四大作用域中添加一个域属性
JSP标签技术

(2) 修改四大作用域中已有的属性

如果重复添加相同的属性,值会发生覆盖,相当于修改.
JSP标签技术
JSP标签技术

如果在通过cset标签往域中添加属性时,没有指定scope,默认存入的域是pageContext域。

c_set标签属性总结:
JSP标签技术

2、<c:if></c:if> – 构造if…else…语句
JSP标签技术

test属性用于指定判断的条件,注意:JSTL中没有提供else对应的标签

当test中的布尔表达式结果为true时, 则会输出标签中的内容, 否则将不会输出!!

示例:
JSP标签技术

3、<c:forEach></c:forEach> – 对集合或数组等中元素进行循环遍历或者是执行指定次数的循环.
JSP标签技术

c_forEach标签属性总结:
JSP标签技术

相关文章:

  • 2021-08-29
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-04-26
  • 2022-12-23
  • 2021-10-08
  • 2021-12-30
  • 2021-04-03
相关资源
相似解决方案