`
sunxboy
  • 浏览: 2879777 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

JSTL Function Tags

阅读更多

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.

 

Image

 

Image

 

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

  1. display format and internationalization
  2. print out values from servlets response-request or even database values as in work with POJO orjava bean
  3. validating users’ input on UI
  4. parsing users’ input value
  5. URL handling

 

You could think of other several examples and extend your knowledge on JSTL. And apply it on your project. 

 

 

分享到:
评论

相关推荐

    standard.jar和jstl.jar

    2. **JSTL Function Tags**:提供了一些预定义的函数,这些函数可以与核心标签一起使用,例如 `fn:length()` 可以获取数组或集合的长度。 3. **JSTL XML Tags**:这些标签提供了处理XML文档的高级功能,如 `...

    JSTL1.0与JSTL1.1的tld文件包下载

    它由五个核心部分组成:Core、XML、JDBC、Function和 fmt。在JSTL中,`.tld`文件(Tag Library Descriptor)扮演着至关重要的角色。 .TLD文件是JSTL库的元数据,它定义了标签库中的每个标签及其属性。这些文件包含...

    jstl1.2标签库jar包

    `jstl-impl-1.2.jar`包含了处理表达式语言(EL, Expression Language)、核心标签库(Core)、函数库(Function)、国际化(fmt)以及SQL操作等的具体实现。 **JSTL 1.2 主要功能及标签** - **Core标签库(c)** ...

    EL JSTl详解word文档

    5. **函数标签库 (Function Tags)**:提供了一系列预定义的函数,便于调用。 **EL表达式的基本形式**: EL表达式通常以`${}`包裹,例如`${sampleValue + 1}`。在这个例子中,`sampleValue`是一个变量,`+ 1`是操作...

    JSTL的jar包.zip

    4. **Function Tags(函数标签库)**:提供了类似于Java中的一些实用函数,如EL表达式中的`fn:length()`(计算数组或集合长度)等。 5. **JSTL SQL Tags(SQL标签库)**:虽然现在已经不推荐使用,但过去它提供了一...

    jstl的jar包

    &lt;taglib-uri&gt;/tags/jstl-core &lt;taglib-location&gt;/WEB-INF/c.tld &lt;taglib-uri&gt;/tags/jstl-fmt &lt;taglib-location&gt;/WEB-INF/fmt.tld &lt;!-- 更多的TLD配置 --&gt; ... ``` 3. **使用JSTL标签**:在JSP页面中,...

    jstl和手册

    5. **Function Tags**:函数标签库,提供了一些实用的辅助函数。 **JSTL的使用步骤:** 1. **添加依赖**:在项目中引入所需的JSTL库,这通常意味着需要将`jstl.jar`和`standard.jar`(或对应的Maven/Gradle依赖)...

    JSTL帮助文档_英文原版document

    4. **Function Tags**:提供了一系列预定义的函数,可以作为EL表达式中的方法调用,比如字符串操作、数组和集合处理等。 5. **JDBC Tags**:用于数据库操作,如执行SQL查询(sql:query, sql:update)和结果集处理。...

    JSTL_EL实例

    4. **Function Tags**: 函数标签库,提供了一系列实用函数,如字符串处理、数组操作等。 5. **XML Tags**: XML标签库,用于处理XML文档,如解析、转换等。 **EL表达式** EL是一种在JSP中表达和计算数据的语言,其...

    jstl.jar和standard.jar包.zip

    JSTL包括了几个主要的类别,如Core、XML、JDBC、fmt和Function Tags。 1. **Core**: 这是JSTL的基础标签集,提供了类似于HTML标签的功能,如条件判断、循环、URL处理等。例如,`&lt;c:if&gt;`用于条件判断,`&lt;c:forEach&gt;`...

    jstl jar 包

    3. **Function标签库(fn:tags)**:包含一系列辅助函数,用于字符串处理、数组操作、集合操作等。 4. **JDBC标签库(sql:tags)**:简化了数据库操作,如执行SQL查询、事务管理等。 5. **JSTL Internationalization...

    jstl标签库jar包

    &lt;taglib-uri&gt;/tags/jstl-core &lt;taglib-location&gt;/WEB-INF/c.tld &lt;taglib-uri&gt;/tags/jstl-func &lt;taglib-location&gt;/WEB-INF/fn.tld ``` 4. **使用JSTL标签**:在JSP页面中,通过`&lt;%@ taglib %&gt;`指令引入...

    javaweb使用的Jstl.zip

    5. **Function Tags(函数标签)**:提供了一系列辅助方法,可以作为EL表达式中的函数使用。 **JSTL的使用步骤:** 1. **添加依赖**:在项目中引入JSTL库,通常是在`WEB-INF/lib`目录下添加`jstl.jar`和`standard....

    JSTL API

    4. **Function Tags**: JSTL还提供了一系列函数标签,这些函数通常与Core、fmt或XML标签一起使用,以扩展其功能。例如,`fn:length()`可以计算集合的长度。 5. **EL (Expression Language)**: 虽然EL不是JSTL的一...

    JSTL_1.2_API(含JAR)

    5. **Function Tags**: 提供了一组预定义的函数,可以扩展JSP页面的功能。 除了JSTL的API文档,压缩包内还包含了xalan-j_2_7_1-bin.zip文件。Xalan是Apache软件基金会的一个项目,它是一个XML转换引擎,支持XSLT ...

    jstl标签库.rar

    &lt;taglib-uri&gt;/tags/jstl.core &lt;taglib-location&gt;/WEB-INF/c.tld *.jsp &lt;page-import&gt;javax.servlet.jsp.jstl.core.* &lt;el-ignored&gt;false ``` 5. **引入JSTL库**:在JSP页面中,我们需要引入JSTL库的...

    JSTL(PDF格式)

    #### 函式标签库(Function Tags) 函式标签库提供了丰富的内置函数,如字符串处理、数组操作等,简化了常见的编程任务,提高开发效率。 #### 安装与使用JSTL 要使用JSTL,首先需要从官方网站下载JSTL库,并将其...

    JSTL 需要的jar包

    &lt;taglib-uri&gt;/tags/jstl/core &lt;taglib-location&gt;/WEB-INF/tld/c.tld &lt;taglib-uri&gt;/tags/jstl/fmt &lt;taglib-location&gt;/WEB-INF/tld/fmt.tld &lt;!-- 更多其他taglib配置 --&gt; ``` 4. **使用JSTL标签**:现在...

    jstl jar文件和tld文件

    TLD文件通常位于WEB-INF/tags目录下,Web容器会自动加载这些文件来理解并解析JSP页面中的JSTL标签。 **使用JSTL**: 1. **导入依赖**:首先需要在项目的类路径下包含`jstl.jar`和`standard.jar`(如果使用了EL...

    jstl标签库与使用教程

    &lt;taglib-uri&gt;/tags/jstl/core &lt;taglib-location&gt;/WEB-INF/c.tld ... ``` 这里`taglib-uri`是自定义的URI,`taglib-location`则是TLD(Tag Library Descriptor)文件的位置,通常在`/WEB-INF`目录下。 **4. ...

Global site tag (gtag.js) - Google Analytics