Functions
Table 14-9 lists the JSTL functions
.
Although the
java.util.Collection
interface defines asize
method, it does not conform to the JavaBeans component design pattern for properties and so cannot be accessed via the JSP expression language. Thelength
function can be applied to any collection supported by thec:forEach
and returns the length of the collection. When applied to aString
, it returns the number of characters in the string.For example, the
index.jsp
page of thehello1
application introduced in Chapter 3 uses thefn:length
function and thec:if
tag to determine whether to include a response page:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> <html> <head><title>Hello</title></head> ... <input type="text" name="username" size="25"> <p></p> <input type="submit" value="Submit"> <input type="reset" value="Reset"> </form> <c:if test="${fn:length(param.username) > 0}" > <%@include file="response.jsp" %> </c:if> </body> </html>The rest of the JSTL functions are concerned with string manipulation:
toUpperCase
,toLowerCase
: Changes the capitalization of a stringsubstring
,substringBefore
,substringAfter
: Gets a subset of a stringtrim
: Trims whitespace from a stringreplace
: Replaces characters in a stringindexOf
,startsWith
,endsWith
,contains
,containsIgnoreCase
: Checks whether a string contains another stringsplit
: Splits a string into an arrayjoin
: Joins a collection into a stringescapeXml
: Escapes XML characters in a string