- 浏览: 2879777 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (1173)
- 名言警句 (5)
- 心情随笔 (50)
- 数据库 (57)
- Java基础 (241)
- J2EE框架 (91)
- 数据结构 (12)
- 程序设计 (21)
- WEB技术 (128)
- 网络日志 (12)
- IT资讯 (247)
- linux (64)
- solaris (2)
- 其它 (143)
- WebService (4)
- 日语学习 (2)
- 机器人 (5)
- Android (5)
- cgywin (3)
- Game (1)
- DWR (1)
- spring (8)
- canvas (1)
- Guava (3)
- Modbus (5)
- 测试 (6)
- mongodb (9)
- Quartz (2)
- Cron (1)
- windows (2)
- 持续集成 (1)
- bootstrap (3)
- 结对编程 (1)
- nodejs (1)
- Netty (1)
- 安全 (3)
- webstorm (2)
- sparkline (1)
- Job (1)
- git (3)
- Maven (3)
- knockout (5)
- jquery (1)
- bower (1)
- docker (1)
- confluence (4)
- wiki (1)
- GoogleMap (1)
- jekyll (10)
- ruby (2)
- npm (3)
- browserify (1)
- gulp (3)
- openwrt (1)
- discuz (3)
- 输入法 (1)
- JPA (1)
- eclipse (2)
- IntelliJ (1)
- css (1)
- 虚拟机 (1)
- 操作系统 (1)
- azkaban (2)
- scrum (1)
最新评论
-
pangxiea_:
你好, 想请问一下 Linux下 这么使用rxtxcomm 在 ...
使用Java进行串口通信 -
abababudei:
请教一下,这个您是怎么解决的:/dev/ttyS2enteri ...
Java应用程序的MODBUS通讯 -
xuniverse:
hannibal005 写道楼主,我问下 request.se ...
用javascript与java进行RSA加密与解密 -
atxkm:
找了一下午,终于找到了
gulp 拷贝文件时如何移除文件目录结构 -
kalogen:
gtczr 写道非常感谢,经过我自己的修改,已经完美实现。发出 ...
用javascript与java进行RSA加密与解密
Now, let’s have a look at the JSTL Function tag. Create a new JSP. Let’s name it Jstl_Functions_Tags.jsp. Then create a new link to direct to this new JSP. <table border="1"> <tr> <td> <a href="Jstl_Functions_Tags.jsp">JSTL Functions Tags</a> </td> <td> String Manipulations </td> </tr> </table> Do not forget to include JSTL taglib directive for prefix fn in our JSP. Here is how to import the fn JSTL taglib directive. <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> The JSTL functions tag will mainly deal with string manipulation. Let’s try some of them.
<c:set var="sentence" value=" Try This String for Manipulations " /> <c:out value="${sentence}" /> Above codes are used to set a fixed string to variable “sentence” and print it out for display. Next, please pay attention on how we are going to combine JSTL core <c> tag with JSTL function <fn> tag.
<c:out value="${fn:length(sentence)}" /> Above codes will print out the length of variable “sentence”. It will produce 35 since all characters are counted.
<c:out value="${fn:toUpperCase(sentence)}" /> <c:out value="${fn:toLowerCase(sentence)}" /> Above codes are used to convert our “sentence” to UPPER or LOWER case.
<c:out value="${fn:trim(sentence)}" /> <c:out value="${fn:length(fn:trim(sentence))}" /> <c:out value="${fn:replace(sentence,' ','_')}" /> Above codes are used to trim the “sentence” and count the length of trimmed “sentence”. Trimming the sentence means that we are removing the extra spaces (if any) in the string either in front or in back. You need to know that the spaces within the string will NOT be trimmed. It should produce 33 since the spaces at the beginning and at the end will be discarded. While the sample above of fn:replace will replace all occurrences of spaces with underscores. <c:out value="${fn:substring(sentence,0,8)}" /> <c:out value="${fn:substringAfter(sentence,'for')}" /> <c:out value="${fn:substringBefore(sentence,'for')}" /> <c:out value="${fn:indexOf(sentence,'g')}" /> The fn:substring will take 3 parameters. 1st parameter is our “sentence” variable itself. 2nd parameter is for the starting point and 3rd parameter is where it must stop to return result of substring. More advanced substring functions are fn:substringAfter and fn:substringBefore. See at the screenshot to see how they work. And the fn:indexOf will return the position of defined character in our “sentence”.
<c:out value="${fn:contains(sentence,'G')}" /> <c:out value="${fn:containsIgnoreCase(sentence,'G')}" /> <c:out value="${fn:startsWith(sentence,' Try')}" /> <c:out value="${fn:endsWith(sentence,'pulations ')}" /> fn:contains will return boolean value true if correct and false otherwise. However, it is case sensitive and will sensitively check for the lower case and upper case of the string. fn:containsIgnoreCase work in the same way as fn:contains but it is not case sensitive which means that it will not care whether it is in lower case or in upper case. fn:startsWith and fn:endsWith will also return boolean to check whether the “sentence” starts or ends with corresponding given value. Again, clean build the project and run the project. The index.jsp will appear as usual and click the “Jstl_Functions_Tags” to see the result. 6. Conclusion Now we have known what JSTL is and how to use it. Use JSTL anytime when possible. JSTL could empower our web app. From what we learnt, we could think of when or in what conditions JSTL could be used for. Some examples of use of JSTL are
You could think of other several examples and extend your knowledge on JSTL. And apply it on your project.
发表评论
-
高级Java程序员值得拥有的10本书
2015-05-04 07:24 816Java是时下最流行的编程语言之一。市面上也出现了适合初学者 ... -
深入理解java异常处理机制
2015-01-30 09:30 13351. 引子 try…catch…fi ... -
java 运行时参数设置
2015-01-07 09:13 873JVM的运行时参数: -Xms为执行单元内存的1/4, ... -
每个Java开发者都应该知道的5个JDK工具
2014-12-29 12:37 1147JDK是Java语言的软件开 ... -
使用双重锁判定可以大幅降低锁的征用
2014-12-29 12:30 755class ObjInstance { //单例 pri ... -
MAVEN Scope使用说明
2014-11-24 09:40 765在Maven的依赖管理中,经常会用到依赖的scope设置。这 ... -
Spring4 quartz job xml configuration
2014-11-11 09:46 14451. 定义job details public ... -
Add items into list in one line using guava
2014-11-10 10:54 728//@formatter:off fina ... -
配置动态读取(变化)文件 in Spring
2014-11-10 08:51 13291. 从环境变量中读取路径: <bean id=&q ... -
JAVA实现AES加密与解密
2014-11-04 15:34 665package com.eifesun.monitor.up ... -
Netty4.x分析
2014-07-31 11:06 1478官网定义: netty是一个异步、事件驱动的网络应用框架,用 ... -
Ways to sort lists of objects in Java based on multiple fields
2014-07-21 17:19 7801. the first way: Sorting wit ... -
how to parse a String to BigDecimal
2014-07-21 10:08 926private BigDecimal parsePrice( ... -
order list using google guava
2014-07-21 09:08 892Predicate<String> filter ... -
Java 读文件操作
2014-07-08 14:09 8941. only use java core, no exte ... -
怎样使Java 中测试按一定顺序执行
2014-03-10 11:27 1331@FixMethodOrder(MethodSorters. ... -
如何实现在当类初始化时,自动调动某个方法
2014-02-14 14:44 970有两种思路, 1. 将这个类实现为thread类 (or ... -
持续集成JenkinsAPI常见用法
2014-02-10 13:54 43jenkins(持续集成开源工具)提供了丰富的api接口,基 ... -
Sonar 安装与使用
2014-01-13 10:49 1740Sonar 是一个用于代码质量管理的开放平台。通过插件机制, ... -
源代码管理分析工具 Source Navigator的安装与使用
2014-01-13 09:51 1902Source-Navigator是原来redhat开发的一个 ...
相关推荐
2. **JSTL Function Tags**:提供了一些预定义的函数,这些函数可以与核心标签一起使用,例如 `fn:length()` 可以获取数组或集合的长度。 3. **JSTL XML Tags**:这些标签提供了处理XML文档的高级功能,如 `...
它由五个核心部分组成:Core、XML、JDBC、Function和 fmt。在JSTL中,`.tld`文件(Tag Library Descriptor)扮演着至关重要的角色。 .TLD文件是JSTL库的元数据,它定义了标签库中的每个标签及其属性。这些文件包含...
`jstl-impl-1.2.jar`包含了处理表达式语言(EL, Expression Language)、核心标签库(Core)、函数库(Function)、国际化(fmt)以及SQL操作等的具体实现。 **JSTL 1.2 主要功能及标签** - **Core标签库(c)** ...
5. **函数标签库 (Function Tags)**:提供了一系列预定义的函数,便于调用。 **EL表达式的基本形式**: EL表达式通常以`${}`包裹,例如`${sampleValue + 1}`。在这个例子中,`sampleValue`是一个变量,`+ 1`是操作...
4. **Function Tags(函数标签库)**:提供了类似于Java中的一些实用函数,如EL表达式中的`fn:length()`(计算数组或集合长度)等。 5. **JSTL SQL Tags(SQL标签库)**:虽然现在已经不推荐使用,但过去它提供了一...
<taglib-uri>/tags/jstl-core <taglib-location>/WEB-INF/c.tld <taglib-uri>/tags/jstl-fmt <taglib-location>/WEB-INF/fmt.tld <!-- 更多的TLD配置 --> ... ``` 3. **使用JSTL标签**:在JSP页面中,...
5. **Function Tags**:函数标签库,提供了一些实用的辅助函数。 **JSTL的使用步骤:** 1. **添加依赖**:在项目中引入所需的JSTL库,这通常意味着需要将`jstl.jar`和`standard.jar`(或对应的Maven/Gradle依赖)...
4. **Function Tags**:提供了一系列预定义的函数,可以作为EL表达式中的方法调用,比如字符串操作、数组和集合处理等。 5. **JDBC Tags**:用于数据库操作,如执行SQL查询(sql:query, sql:update)和结果集处理。...
4. **Function Tags**: 函数标签库,提供了一系列实用函数,如字符串处理、数组操作等。 5. **XML Tags**: XML标签库,用于处理XML文档,如解析、转换等。 **EL表达式** EL是一种在JSP中表达和计算数据的语言,其...
JSTL包括了几个主要的类别,如Core、XML、JDBC、fmt和Function Tags。 1. **Core**: 这是JSTL的基础标签集,提供了类似于HTML标签的功能,如条件判断、循环、URL处理等。例如,`<c:if>`用于条件判断,`<c:forEach>`...
3. **Function标签库(fn:tags)**:包含一系列辅助函数,用于字符串处理、数组操作、集合操作等。 4. **JDBC标签库(sql:tags)**:简化了数据库操作,如执行SQL查询、事务管理等。 5. **JSTL Internationalization...
<taglib-uri>/tags/jstl-core <taglib-location>/WEB-INF/c.tld <taglib-uri>/tags/jstl-func <taglib-location>/WEB-INF/fn.tld ``` 4. **使用JSTL标签**:在JSP页面中,通过`<%@ taglib %>`指令引入...
5. **Function Tags(函数标签)**:提供了一系列辅助方法,可以作为EL表达式中的函数使用。 **JSTL的使用步骤:** 1. **添加依赖**:在项目中引入JSTL库,通常是在`WEB-INF/lib`目录下添加`jstl.jar`和`standard....
4. **Function Tags**: JSTL还提供了一系列函数标签,这些函数通常与Core、fmt或XML标签一起使用,以扩展其功能。例如,`fn:length()`可以计算集合的长度。 5. **EL (Expression Language)**: 虽然EL不是JSTL的一...
5. **Function Tags**: 提供了一组预定义的函数,可以扩展JSP页面的功能。 除了JSTL的API文档,压缩包内还包含了xalan-j_2_7_1-bin.zip文件。Xalan是Apache软件基金会的一个项目,它是一个XML转换引擎,支持XSLT ...
<taglib-uri>/tags/jstl.core <taglib-location>/WEB-INF/c.tld *.jsp <page-import>javax.servlet.jsp.jstl.core.* <el-ignored>false ``` 5. **引入JSTL库**:在JSP页面中,我们需要引入JSTL库的...
#### 函式标签库(Function Tags) 函式标签库提供了丰富的内置函数,如字符串处理、数组操作等,简化了常见的编程任务,提高开发效率。 #### 安装与使用JSTL 要使用JSTL,首先需要从官方网站下载JSTL库,并将其...
<taglib-uri>/tags/jstl/core <taglib-location>/WEB-INF/tld/c.tld <taglib-uri>/tags/jstl/fmt <taglib-location>/WEB-INF/tld/fmt.tld <!-- 更多其他taglib配置 --> ``` 4. **使用JSTL标签**:现在...
TLD文件通常位于WEB-INF/tags目录下,Web容器会自动加载这些文件来理解并解析JSP页面中的JSTL标签。 **使用JSTL**: 1. **导入依赖**:首先需要在项目的类路径下包含`jstl.jar`和`standard.jar`(如果使用了EL...
<taglib-uri>/tags/jstl/core <taglib-location>/WEB-INF/c.tld ... ``` 这里`taglib-uri`是自定义的URI,`taglib-location`则是TLD(Tag Library Descriptor)文件的位置,通常在`/WEB-INF`目录下。 **4. ...