JSP基本_JSTL
自定义标签是,用户定义自己的处理的tag的机制。
JSTL是,JSP用标准自定义标签。从JSTL Ver.1.2开始成为JavaEE5的子集。比较有名的是Glassfish。Tomcat上开发的话,需要自己配置JSTL。
1、JSTL的提供形式
自定义标签通常有下述两部分内容:
- Tag类文件
- TLD (tag library descriptor)
2、JSTL的使用步骤
自定义标签的jar文件下载(地址:https://jstl.java.net/)后,按如下顺序使用:
1)把JAR文件放到项目的lib里
2)做成只包含web-app要素的web.xml文件,以防止命令行上的错误输出。
例:
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
</web-app>
3)jsp文件里定义taglib。
例:<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
这里,
- prefix属性:JSP里使用JSTL时的前缀。习惯上用“c”。
- uri属性:识别JSTL的字符串。按照JSTL说明文档指定。
4)使用taglib
例:<c:out value="你好!"/>
注意JSTL和Servlet/JSP的版本对应
- JSTL 1.2 ⇒ JSP 2.1 (Tomcat6)
- JSTL 1.1 ⇒ JSP 2.0 (Tomcat5)
- JSTL 1.0 ⇒ JSP 1.2 (Tomcat4)
3、JSTL种类
1)JSTL种类
| 种类 | 说明 | uri | 前缀 |
| core | 循环处理、条件分支、变量的取得/设定等基本tag | http://java.sun.com/jsp/jstl/core | c |
| il8n | 数值、日期的格式,国际化对应 | http://java.sun.com/jsp/jstl/fmt | fmt |
| xml | XML文档的解析,XSL格式变换 | http://java.sun.com/jsp/jstl/xml | x |
| function | 字符串、集合操作 | http://java.sun.com/jsp/jstl/functions | fn |
| SQL | SQL的执行等DB操作 | http://java.sun.com/jsp/jstl/sql | sql |
2)core tag
| 功能 | tag | 说明 |
| 变量 | <c:set> | 设置变量 |
| <c:remove> | 删除变量 | |
| 流程控制 | <c:if> | 单一条件分支 |
| <c:choose> <c:when> <c:otherwise> |
复数条件分支 | |
| <c:forEach> | loop | |
| <c:forTokens> | 字符串查找 | |
| URL管理 | <c:import> | 文件import |
| <c:redirect> | redirect | |
| <c:url> | URL生成。 | |
| 其它 | <c:out> | 输出 |
| <c:catch> | 异常处理 | |
| <c:param> | 参数指定 |
(1)
<c:set> tag
| 属性 | 必须 | 说明 |
| var | × | 变量名。var和target指定任意一个。 |
| target | × | 变量名。和proparty属性一起使用。使用javaBeans、Map的时候需要指定。 var和target指定任意一个。 |
| property | × | 和target一起使用。指定javaBeans的属性名,或Map的key。 |
| value | × | 值 |
| scope | × | 变量的有效范围「page、request、session、application」。 默认为page。 |
(2) <c:remove> tag
| 属性 | 必须 | 说明 |
| var | ○ | 变量名。 |
| scope | × | 变量范围 |
(3) <c:if> tag
| 属性 | 必须 | 说明 |
| test | ○ | 条件 |
| var | × | 保存结果(true/false)的变量名。 |
| scope | × | 变量范围「page、request、session、application」。 默认是page |
剩下有空时再追加。。。。
JSP基本_JSTL的更多相关文章
- java攻城师之路--复习java web之jsp入门_El表达式_JSTL标签库
JSP 技术掌握:JSP语法 + EL + JSTL 为什么sun推出 JSP技术 ? Servlet 生成网页比较复杂,本身不支持HTML语法,html代码需要通过response输出流输出,JSP ...
- 复习java web之jsp入门_El表达式_JSTL标签库
JSP 技术掌握:JSP语法 + EL + JSTL 为什么sun推出 JSP技术 ? Servlet 生成网页比较复杂,本身不支持HTML语法,html代码需要通过response输出流输出,JSP ...
- Java精选笔记_JSTL(JSP标准标签库)
JSTL(JSP标准标签库) JSTL入门 JavaServer Pages Standard Tag Library:JSP标准标签库 在JSP中可以通过Java代码来获取信息,但是过多的Java代 ...
- myeclipse学习总结一(在MyEclipse中设置生成jsp页面时默认编码为utf-8编码)
1.每次我们在MyEclispe中创建Jsp页面,生成的Jsp页面的默认编码是"ISO-8859-1".在这种情况下,当我们在页面中编写的内容存在中文的时候,就无法进行保存.如下图 ...
- jsp前端实现分页代码
前端需要订一page类包装,其参数为 private Integer pageSize=10; //每页记录条数=10 private Integer totalCount; //总记录条数 priv ...
- jsp中出现onclick函数提示Cannot return from outside a function or method
在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...
- jsp页面无法识别el表达式的解决方案
今天在写一个springmvc的小demo时,碰到一个问题,在jsp页面中书写为${user.username}的表达式语言,在浏览器页面中仍然显示为${user.username},说明jsp根本不 ...
- 浅谈JSP中include指令与include动作标识的区别
JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...
- 浅谈JSP注释
HTML注释 JSP文件是由HTML尿急和嵌入的Java程序片段组成的,所以在HTML中的注释同样可以在JSP文件中使用.注释格式:<!--注释内容--> <!-- 欢迎提示信息! ...
随机推荐
- github_源码
固定头部: hongyangAndroid/Android-StickyNavLayout:ListView 与ViewPager 滑动冲突处理,滑动到顶部固定位置停顿; ufo22940268/ ...
- [UE4]Replications,复制
关于进程 1.进程:运行中的程序 虚幻4游戏进程的四种网络模式 1.StandAlone:单机模式,不联网 2.Client,网络游戏中的客户端. 3.ListenServer,服务器和一个客户端 4 ...
- 关于 MySQL LEFT JOIN 不可不知的事
你认为自己已对 MySQL 的 LEFT JOIN 理解深刻,这篇文章,我想让你能多学会点东西! ON 子句与 WHERE 子句的不同 一种更好地理解带有 WHERE ... IS NULL 子句的复 ...
- 2018-7-23到quectel报道
以后和quectel产品相关的技术都会用这个blog来记录
- 关于dict的formkeys方法注意
使用容器中的元素生成k, v为统一值, 指向同一个内存地址 默认值指向同一个内存, 修改就全部修改 strvar = 'abcd' listvar = [] dictvar = {} dictvar ...
- Android收发短信
效果:点击发送短信开始发送短信 收到短信时将短信的内容显示出来 代码如下: 一.权限声明 <uses-permission android:name="android.permissi ...
- Linux下用node-inspector实现NodeJS远程调试开发
1.首先安装 node-inspector npm install -g node-inspector -g表示全局安装,如果像我一样安装失败,再试几次,npm偶尔就会这样抽风... 这一步是关键的, ...
- 电商系统架构总结4(webapi 版本控制)
为了 顺利迭代升级,web api 在维护过程是不断升级的,但用户是不能强迫他们每次都跟随你去升级,这样会让用户不胜其烦.为了保证不同版本的客户端能同时兼容,在web api接口上加入版本控制就很有必 ...
- Java 7-Java 循环结构 - for, while 及 do…while
Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whi ...
- 安装MySQL半同步复制
一.简介 从MySQL5.5开始,MySQL以插件的形式支持半同步复制.如何理解半同步呢?首先我们来看看异步,全同步的概念 异步复制(Asynchronous replication) MySQL默认 ...