Jstl的添加

第一种方式:

在创建web项目的时候,自动添加jstl的标签,在新建项目的JSTL Support中选中add jstl libraries to web_inf/inf folder,即可完成jstl标签的添加。

第二种方式:

以一种正常的方式创建web项目,然后在项目中手动的添加jstl标签项,如图:

点击项目名----右击------选中MyEclipse-------Add JSTL Libraries

这样就完成了jstl的添加。

无论哪种方式的添加都必须包含两个jar包:jstl.jar和standard.jar。

Jstl在页面中的导入:

第一种方式:

如果是通过以上两种方式添加了jstl的话,那么在页面中就要添加以下的代码:

第二种方式:

手动添加两个主要的jar包,就需要修改一下了:

Jstl标签Core标签库介绍

Core标签库,又被称为核心标签库,该标签库的工作是对于jsp页面一般处理的封装,在该标签库中的标签一共有14个,被分为了四类,分别是:

多用途核心标签:

条件控制标签:

循环控制标签:

url相关标签:

以下是各个标签的用途和属性及其简单示例。

1. 用于显示的标签

该标签接收从前一个Action传递过来的username值,如果username的值为空,那么将默认显示default中的值,而当escapeXml设置为true时,将自动更换特殊字符。

2. 用于赋值的标签

标签用于为变量或是JavaBean中的变量属性赋值的工作,它的属性和描述如下所示:

Value中存放着即将被使用的值

Target中式被赋值的JavaBean实例的名称,若存在该target属性,则一定要存在property属性(可选)

Property中是JavaBean实例的变量属性名称(可选)

Var是被赋值的变量名(可选)

Scope变量的作用范围,若没有指定,默认为page(可选)

3. 用于删除的标签

标签用于删除存在于scope中的变量,它的属性和描述如下:

var 是即将被删除的存在scope范围中的变量的名称

scope指示即将删除的变量存在的作用域范围

4. 用于捕获异常的标签

标签允许在jsp页面中捕捉异常。它包含了一个var属性,是一个描述异常的变量,该变量可选,若没有改变量的定义,那么仅仅是捕捉异常,而不做任何的处理,若定义了var属性,那么可以利用var所定义的异常变量进行判断转发到其他页面或提示报错信息。

${param.name == 3}

当${param.name == 3}表达式有异常时,可以从var属性”err”得到异常的内容,通过判断err内容是否为空来决定错误信息的提示。

5. 用于判断的标签

标签用于简单的条件语句

若test中的值就是zhangshan的话,就显示中的内容,判断的结果将存储在scope范围中的var变量中。默认情况下scope的值为page。

6. 用于复杂判断的 ,,标签

这三个标签用于实现复杂条件判断语句,类似”if,else if”的条件语句。

显示张山的信息

显示其他人的信息

标签没有属性,我们可以将其看做是和的父标签,而这一对判断标签就是其中的子标签。

7. 用于循环的标签

${user }

接收传递过来的一个List集合,然后依次迭代将其中的值放在var变量中

Items中存放进行循环的集合(可选)

Var做循环的对象变量名,若存在items这个属性,则表示循环集合对象中的变量名

Begin表示开始条件

End表示结束条件

Step表示循环的步长,默认情况下为1

varStatus显示循环状态的变量(可选)

8. 用于分隔字符的标签

标签可以根据某个分隔符分隔指定的字符串,相当于java.util.StringTokenizer类。

${intValue }

Items表示进行分隔的EL表达式或是常量

Delims表示分隔符

Begin表示开始条件

End表示结束条件

Step表示循环的步长,默认情况下为1

Var表示做循环的对象变量名(可选)

varStatus显示循环状态的变量(可选)

将需要分隔的字符串“123.456.789”,依据分隔符“.”进行分隔,begin为0表示从第一个“.”开始分隔,end为2表示分隔到第三个“.”,并将做循环的变量名指定为intValue。由于步长为“2”,显示的EL表达式${intValue}只能显示为“123 789”。

9. 用于包含页面的标签

标签允许包含另一个JSP页面到本页面来

url需要导入页面的url

context该属性用于在不同的Context下 导入页面,当出现context属性时,必须以“/”开头,此时url属性页需要以“/”开头(可选)

charEncoding表示导入页的字符集

var可以定义导入文本的变量名(可选)

scope导入文本的变量名作用范围(可选)

varReader接受文本的java.io.Reader类变量名(可选)

10. 用于得到URL地址的标签

该标签用于得到一个URL地址

超链接

Value页面的URL地址

Context该属性用于得到不同的Context下的URL地址,当出现context属性时,必须以“/”开头,此时也需要url属性以“/”开头(可选)

charEncoding设置URL的字符集(可选)

scope变量名的作用范围(可选)

11. 用于页面重定向的标签

用于页面的重定向,该标签的作用相当于response.setRedirect方法名的工作,它包含url和context两个属性,属性含义和标签相同

出现该标签,则将重定向到当前web Context下的index.jsp页面,一般与等标签一起使用。

12. 用于包含传递参数的

Name传递的参数名

Value传递的参数值(可选)

例子:

Jstl标签XML processing标签库介绍

XML核心标签:

XML流控制标签:

XML转换标签:

张三

123456

足球

篮球

看书

1. 用于解析XML文件的标签

标签是该组标签库的核心,从其标签名就可以知道,它是作为解析XML文件而存在的。

Var,scope和varDom,scopeDom不应该同时出现的,而应该被视为两个版本来使用,两者的变量都可以被XML processing标签库的其他标签来使用。

Doc存放XML的内容

Var将解析后的XML保存在该属性所指定的变量中,之后XML processing标签库中的其他标签若取XML中的内容就可以从该变量中得到(可选)

Scope变量的作用范围

varDom指定保存的变量在org.w3c.dom.Document接口类型(可选)

scopeDom org.w3c.dom.Document的接口类型变量作用范围(可选)

systemId定义了一个URL,该URL将使用到XML文件中以接入其他资源文件(可选)

filter该属性必须为org.xml.sax.XMLFilter类的一个实例,可以通过使用EL表达式传入,将对XML文件作过滤得到自身需要的部分(可选)

该示例在借助标签的作用下引入了userInfo.xml文件,将其内容保存在xmlUser变量中,根据xmlUser变量的值进行解析userInfo.xml。

2. 用于显示XML内容的标签

标签从标签解析后保存的变量中取得需要的XML文件内容,并显示在页面上。该标签是通过XPath技术(定位XML元素的一种技术)来实现的。要使用该标签必须将xalan-j的jar包保存在“WEB-INF/lib下”。

用户名为:

密码为:

读取XML文件并解析后的变量userValue将加上“$“作为XPath表达式的开头,select中的表达式将从xml-body根元素下的各个子元素中取得实体内容,最后将结果显示在页面上。

3. 用于保存XML内容的标签

标签允许将某个源XML中元素的实体内容或是属性,保存到一个变量中去,它的实现也依靠XPath技术。

在这里将保存XML的name元素内容到变量“tempValue“中。

4. 用于判断的标签

标签允许由XPath的Boolean()函数得到的判断结果,来判断是否显示其标签所包含的内容。标签的属性与标签相同,但是var的结果只能是Boolean类型。

5. 用于复杂判断的    标签

这组标签将一起使用,来提供“if elseif“语句的功能。

标签没有属性,可以被认为是父标签将作为其子标签来使用。

标签等价于“if“语句,它包含一个select属性,该属性为XPath判断表达式。

标签没有属性,它等价于“else“语句。

6. 用于对XML元素循环的标签

为对XML文件中同一名称元素的循环控制标签。

${hobby }

Select是XPath表达式,结果是一个集合,将对该集合进行循环(可选)

Begin开始条件(可选)

End结束条件(可选)

Step循环的步长。默认为1(可选)

Var做循环的对象变量名,表示XPath表达式结果集合中的一个对象(可选)

varStatus显示循环状态的变量(可选)

该示例将使用循环读取XML中多个同存与hobbies元素下的hobby子元素

7. 格式化XML显示数据的标签

标签允许使用XSLT(转换XML格式的语言)为页面的显示数据所格式化的处理。

用户名:

密码:

这个示例将XML文件保存的数据信心利用保存在xmlUser中,然后使用一个标签保存一个XSLT的源到“xsltdoc“,最后通过格式化XML文件的数据显示在页面上。

8. 用于参数传递的

jstl java_JSTL-Java-Baby-51CTO博客相关推荐

  1. 老男孩51CTO博客博文列表整理版20170620更新

    老男孩51CTO博客博文列表整理版 (本文原自于一道考试题http://oldboy.blog.51cto.com/2561410/1860985) 老男孩教育运维脱产班35期  刘同学 2017-0 ...

  2. Python 爬取51cto博客标题浏览量、评论量、收藏

    介绍 提到爬虫,互联网的朋友应该都不陌生,现在使用Python爬取网站数据是非常常见的手段,好多朋友都是爬取豆瓣信息为案例,我不想重复,就使用了爬取51cto博客网站信息为案例,这里以我的博客页面为教 ...

  3. 第一次使用51cto博客

    阿梅第一次使用51cto博客,以后将学习中的总结写到这里来.加油. 转载于:https://blog.51cto.com/hopit/1690465

  4. 关于我的51CTO博客

    经过反复的比较,最终选择了51CTO作为我的新的博客地址.以后,我会保持这个博客与我的赛迪博客在安全管理与审计领域博文的同步,同时维护TT安全博客上的精华文章,我打算未来将51CTO博客作为我的主博客 ...

  5. 51CTO博客2.0意见反馈处【2018版】

    12年磨一剑,我们在2017年年底完成了博客1.0到2.0的变革. 全新博客2.0平台,尤其关注写作体验.移动阅读和知识变现. 现在我们已经夯实了基础建设,但为了给大家提供更好的创作.阅读体验,我们还 ...

  6. 51cto博客积分/无忧币规则、等级设定

    最新调整公告 为适应51CTO技术社区整体发展,博客积分和无忧币制度做出相应调整.自2008年6月27日起生效. 相关帮助:如何成为博客之星.推荐博客   无忧币兑换礼品专区 2007年8月新增功能: ...

  7. 用Windows live Writer 2012发布51cto博客

    之前我一直在寻找一个可以像某些论坛那样,可以直接把图片从本地复制到编辑框中,点击提交就能自动离线上传的博客,但是一直都找不到.直到昨晚,我才发现了博客园,但是博客园主要是.net的天下,同时在申请等待 ...

  8. 51CTO博客移动化意味着什么?IT博主可以搞事情了!

    我红着脸写下了这个标题. 就好比在21世纪的今天,我煞有介事地说:"手机能上网意味着什么?" 好在,很多看起来不可思议的事情,在特定的环境下,就没那么匪夷所思了.如果对山区孩子说这 ...

  9. 企业shell面试题:获取51CTO博客列表按时间倒序排序

    企业shell面试题:获取51CTO博客列表倒序排序考试题 老男孩教育培训机构需求:需求入下: 请把http://oldboy.blog.51cto.com 地址中的所有博文,按照时间倒序列表如下: ...

  10. 如何在51cto博客中添加QQ链接

    第一步:登陆http://wp.qq.com/index.html该网站,输入你自己的QQ账号和密码 第二步:看截图: 把图中标颜色部分的代码复制出来,代码如下: http://sighttp.qq. ...

最新文章

  1. linux里引号注意点
  2. 窗口刷新 Invalidate UpdateWindow RedrawWindow
  3. esp32外部中断_玩转 ESP32 + Arduino (四) 电容按键 霍尔传感器 外部中断 延时 脉冲检测...
  4. neutron plugin 与 extension 编写流程
  5. 新的学期、新的开始、新的付出、新的收获!
  6. WuJiuVideoX视频小说图片站群程序开源源码
  7. jquery mysql表格_使用jQuery设计数据表格:设计表格基类
  8. matlab hspice联合仿真,HSPICE TOOLBOX FOR MATLAB
  9. mysql定义过程_mysql定义和调用存储过程
  10. 双核不可阻挡!首款双核处理器Tegra2详解
  11. npm install 报错 gyp info it worked if it ends with ok
  12. 微软推出游戏服务器,成为云玩家 微软将推出“Project xCloud”云游戏服务
  13. 三菱M80操作介绍_CIMT2019 展品预览:三菱电机以“智能制造 价值创造”为主题参展...
  14. 蓝牙 aptx android,蓝牙aptx干嘛用的
  15. 【资源分享】Echarts中国地图、世界地图JSON数据(包括省市、经纬度、世界地图国家名称中英对照)
  16. Cpp web(一) Ubuntu下安装使用Crow服务
  17. 二进制(二):十进制转二进制的两种方法
  18. Java实现小型酒店管理系统。
  19. HTML5七夕情人节表白网页_生日快乐粒子烟花(自定义文字)_ HTML+CSS+JS 求婚 html生日快乐祝福代码网页 520情人节告白代码 程序员表白源码 抖音3D旋转相册 js烟花代码
  20. SoO of EIGRP

热门文章

  1. 中国科学院计算机网络信息中心科学数据中心,中科院计算机网络信息中心发布系列可信共享科学数据公共服务...
  2. 将python3.7降为3.5_python3.7降至3.5【python cookbook】python访问子字符串
  3. emf java_Java实现emf图片字节流转png(jpg)图片字节流
  4. Python内置函数filter()和匿名函数lambda解析
  5. Python中type()详解:动态创建类
  6. Python拼接字符串的7种方法总结
  7. python 文件读写模式r,r+,w,w+,a,a+的区别(附代码示例)
  8. java分页查询oracle_Java中实现Oracle分页查询
  9. 初学__Python——Python数据类型之文件
  10. 2011年9月计算机C语言真题,2011年9月全国计算机二级C语言考试真题及答案.doc