`
xzknet
  • 浏览: 301955 次
  • 性别: Icon_minigender_1
  • 来自: 河南
文章分类
社区版块
存档分类
最新评论

JSTL与Struts的结合

阅读更多

在应用程序开发中,如果内容过长,想截取一定长度字符,然后补充"....."
jstl1.1
引入了一个fn.tld的标签,用于处理字符,如获得字符length,substring,indexof,endWith,lowcase
实现截取字符串
:
<c:set var="log.logTitle" value="
做一个截取字符串长度的测试"
<c:choose>
    <c:when test="${fn:length(log.logTitle) > 10}">
     <c:out value="${fn:substring(log.logTitle, 0, 10)}......" />
    </c:when>
    <c:otherwise>
     <c:out value="${log.logTitle}" />
    </c:otherwise>
   </c:choose><o:p></o:p>


JSTLStruts的结合(八)<o:p></o:p>

9.7  Functions标签库<o:p></o:p>

称呼Functions标签库为标签库,倒不如称呼其为函数库来得更容易理解些。因为Functions标签库并没有提供传统的标签来为JSP页面的工作服务,而是被用于EL表达式语句中。在JSP2.0规范下出现的Functions标签库为EL表达式语句提供了许多更为有用的功能。Functions标签库分为两大类,共16个函数。<o:p></o:p>

         长度函数:fn:length<o:p></o:p>

         字符串处理函数:fn:containsfn:containsIgnoreCasefn:endsWithfn:escapeXmlfn:indexOffn:joinfn:replacefn:splitfn:startsWithfn:substringfn:substringAfterfn:substringBeforefn:toLowerCasefn:toUpperCasefn:trim<o:p></o:p>

以下是各个函数的用途和属性以及简单示例。<o:p></o:p>

<st1:chsdate isrocdate="False" month="12" islunardate="False" day="30" w:st="on" year="1899">9.7.1</st1:chsdate>  长度函数fn:length函数<o:p></o:p>

长度函数fn:length的出现有重要的意义。在JSTL1.0中,有一个功能被忽略了,那就是对集合的长度取值。虽然java.util.Collection接口定义了size方法,但是该方法不是一个标准的JavaBean属性方法(没有get,set方法),因此,无法通过EL表达式“${collection.size}”来轻松取得。<o:p></o:p>

fn:length函数正是为了解决这个问题而被设计出来的。它的参数为input,将计算通过该属性传入的对象长度。该对象应该为集合类型或String类型。其返回结果是一个int类型的值。下面看一个示例。<o:p></o:p>

<%ArrayList arrayList1 = new ArrayList();<o:p></o:p>

            arrayList1.add("aa");<o:p></o:p>

            arrayList1.add("bb");<o:p></o:p>

            arrayList1.add("cc");<o:p></o:p>

%><o:p></o:p>

<%request.getSession().setAttribute("arrayList1", arrayList1);%><o:p></o:p>

${fn:length(sessionScope.arrayList1)}<o:p></o:p>

假设一个ArrayList类型的实例“arrayList1”,并为其添加三个字符串对象,使用fn:length函数后就可以取得返回结果为“3”。<o:p></o:p>

<st1:chsdate isrocdate="False" month="12" islunardate="False" day="30" w:st="on" year="1899">9.7.2</st1:chsdate>  判断函数fn:contains函数<o:p></o:p>

fn:contains函数用来判断源字符串是否包含子字符串。它包括stringsubstring两个参数,它们都是String类型,分布表示源字符串和子字符串。其返回结果为一个boolean类型的值。下面看一个示例。<o:p></o:p>

${fn:contains("ABC", "a")}<br><o:p></o:p>

${fn:contains("ABC", "A")}<br><o:p></o:p>

前者返回“false”,后者返回“true”。<o:p></o:p>

<st1:chsdate isrocdate="False" month="12" islunardate="False" day="30" w:st="on" year="1899">9.7.3</st1:chsdate>  fn:containsIgnoreCase函数<o:p></o:p>

fn:containsIgnoreCase函数与fn:contains函数的功能差不多,唯一的区别是fn:containsIgnoreCase函数对于子字符串的包含比较将忽略大小写。它与fn:contains函数相同,包括stringsubstring两个参数,并返回一个boolean类型的值。下面看一个示例。<o:p></o:p>

${fn:containsIgnoreCase("ABC", "a")}<br><o:p></o:p>

${fn:containsIgnoreCase("ABC", "A")}<br><o:p></o:p>

前者和后者都会返回“true”。<o:p></o:p>

<st1:chsdate isrocdate="False" month="12" islunardate="False" day="30" w:st="on" year="1899">9.7.4</st1:chsdate>  词头判断函数fn:startsWith函数<o:p></o:p>

fn:startsWith函数用来判断源字符串是否符合一连串的特定词头。它除了包含一个string参数外,还包含一个subffx参数,表示词头字符串,同样是String类型。该函数返回一个boolean类型的值。下面看一个示例。<o:p></o:p>

${fn:startsWith ("ABC", "ab")}<br><o:p></o:p>

${fn:startsWith ("ABC", "AB")}<br><o:p></o:p>

前者返回“false”,后者返回“true”。<o:p></o:p>

<st1:chsdate isrocdate="False" month="12" islunardate="False" day="30" w:st="on" year="1899">9.7.5</st1:chsdate>  词尾判断函数fn:endsWith函数<o:p></o:p>

fn:endsWith函数用来判断源字符串是否符合一连串的特定词尾。它与fn:startsWith函数相同,包括stringsubffx两个参数,并返回一个boolean类型的值。下面看一个示例。<o:p></o:p>

${fn:endsWith("ABC", "bc")}<br>             ${fn:endsWith("ABC", "BC")}<br><o:p></o:p>

前者返回“false”,后者返回“true”。<o:p></o:p>

<st1:chsdate isrocdate="False" month="12" islunardate="False" day="30" w:st="on" year="1899">9.7.6</st1:chsdate>  字符实体转换函数fn:escapeXml函数<o:p></o:p>

fn:escapeXml函数用于将所有特殊字符转化为字符实体码。它只包含一个string参数,返回一个String类型的值。<o:p></o:p>

<st1:chsdate isrocdate="False" month="12" islunardate="False" day="30" w:st="on" year="1899">9.7.8</st1:chsdate>  字符匹配函数fn:indexOf函数<o:p></o:p>

fn:indexOf函数用于取得子字符串与源字符串匹配的开始位置,若子字符串与源字符串中的内容没有匹配成功将返回“<st1:chmetcnv tcsc="0" hasspace="False" sourcevalue="1" numbertype="1" negative="True" unitname="”" w:st="on">-1</st1:chmetcnv>。它包括stringsubstring两个参数,返回结果为int类型。下面看一个示例。<o:p></o:p>

${fn:indexOf("ABCD","aBC")}<br>             ${fn:indexOf("ABCD","BC")}<br><o:p></o:p>

前者由于没有匹配成功,所以返回-1,后者匹配成功将返回位置的下标,为1<o:p></o:p>

<st1:chsdate isrocdate="False" month="12" islunardate="False" day="30" w:st="on" year="1899">9.7.9</st1:chsdate>  分隔符函数fn:join函数<o:p></o:p>

fn:join函数允许为一个字符串数组中的每一个字符串加上分隔符,并连接起来。它的参数、返回结果和描述如表9.25所示:<o:p></o:p>

9.25 fn:join函数<o:p></o:p>

参数

评论

相关推荐

    spring3+hibernate3+proxool+jstl+oracle整合示例代码

    spring3.0.4+hibernate3.5.0+proxool 0.9.1+jstl整合最新的JAVA WEB框架,没有使用struts2,视图层使用spring MVC.

    spring+struts+hibernate+dwr+jstl做的实例

    以用户管理为例,结合spring struts hibernate dwr jstl做的实例,struts hibernate dwr 与Spring完全结合,实现用户列表、信息增、删、改、查、维护时用户重名提示等功能,还包括页面自动转码设置(web.xml),...

    SHH整合(mysql,struts2 2.2+spring2.5+hibernate3.0,log,jquery,标签等)DEMO

    1、SHH整合 详细清晰的标准配置,主流的应用配置,struts2.2+spring2.5+hibernate3.0 2、结合MYSQL轻量级... 使用主流的JSP标签JSTL,STRUTS2 标签 ongl数据显示 是一个集成好多主流技术的两个显示数据与登陆的DEMO

    JSTL EL表达式语言

    Struts与表现层技术的结合 JSTL EL表达式语言简介

    Struts2+Web常使用的功能经验笔记第1季

    Apache的Struts2已经是很流行的MVC Web框架了,很多Web开发人员都是使用它做为Web...像Struts2的常用配置功能笔者就不在说了,在此结合作者的Web相关技术(Struts2、JSTL、EL……)使用经验做个总结,希望与您有个共鸣。

    pager-taglib 分页扩展实例(旧)

    2.显示数据与struts2结合实现各行变色 3.基于jquery.form插件的无刷新表单提交,实现无刷新效果 实现环境:struts2.2.1、jdk6、jboss5.1、pager-taglib、mysql 以上环境内通过测试,具体用法请参考项目内readme.txt ...

    pager-taglib 分页扩展实例

    2.显示数据与struts2结合实现各行变色 3.基于jquery.form插件的无刷新表单提交,实现无刷新效果 实现环境:struts2.2.1、dbutils1.3、jdk6、jboss5.1、pager-taglib、mysql、eclipse3.5 以上环境内通过测试,具体...

    2023年javaWeb面试题含答案.doc

    Struts2 是 Struts1 和 WebWork 的结合体。Struts1 规定 Action 类继承一个抽象基类,而不是接口。Struts2 的 action 类可以实现一个 action 接口,也可以实现其他接口。Struts1 action 是单例模式,线程是安全的。...

    《Java Web开发实战经典》

    本书用通俗易懂的语言和丰富多彩的实例,通过对Ajax、JavaScript、HTML等Web系统开发技术基础知识的讲解,并结合MVC设计模式的理念,详细讲述了使用JSP及Struts框架进行Web系统开发的相关技术。 全书分4部分共17章,...

    JavaWeb讲义pdf

    本书用通俗易懂的语言和丰富多彩的实例,通过对Ajax、JavaScript、HTML等Web系统开发技术基础知识的讲解,并结合MVC设计模式的理念,详细讲述了使用JSP及Struts框架进行Web系统开发的相关技术。 全书分4部分共17章...

    JavaWeb开发实战经典(李兴华).part1

    本书用通俗易懂的语言和丰富多彩的实例,通过对Ajax、JavaScript、HTML等Web系统开发技术基础知识的讲解,并结合MVC设计模式的理念,详细讲述了使用JSP及Struts框架进行Web系统开发的相关技术。 全书分4部分共17章,...

    JavaWeb开发实战经典(李兴华).part2

    本书用通俗易懂的语言和丰富多彩的实例,通过对Ajax、JavaScript、HTML等Web系统开发技术基础知识的讲解,并结合MVC设计模式的理念,详细讲述了使用JSP及Struts框架进行Web系统开发的相关技术。 全书分4部分共17章,...

    JavaWeb开发实战经典(李兴华).part3

    本书用通俗易懂的语言和丰富多彩的实例,通过对Ajax、JavaScript、HTML等Web系统开发技术基础知识的讲解,并结合MVC设计模式的理念,详细讲述了使用JSP及Struts框架进行Web系统开发的相关技术。 全书分4部分共17章,...

    JavaWeb 开发指南 PPT课件

    10章 JSP标准标签库(JSTL) 11章 关系数据库与JDBC基础 12章 JSP与Java Mail Web应用 13章 XML在JSP中的应用 14章 使用Servlet过滤器和监听器 15章 JSP Web应用的安全性 16章 Tomcat容器的JSP 17章 在JSP中使用...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    全书分4篇,共24章,其中,第1篇为技能学习篇,主要包括Java Web开发环境、JSP语法、JSP内置对象、Java Bean技术、Servlet技术、EL与JSTL标签库、数据库应用开发、初识Struts2基础、揭密Struts2高级技术、Hib锄劬e...

    JSP开发技术大全 源码

    mail组件、程序日志组件、JavaScript脚本语言、CSS样式、XML入门技术、在JSP中应用Ajax技术、在JSP中应用DOM解析XML、在JSP中应用JDOM解析XML、在JSP中应用SAX解析XML、EL表达式、JSTL标签库、自定义标签、Hibernate...

    JSP开发技术大全 JSP

    mail组件、程序日志组件、JavaScript脚本语言、CSS样式、XML入门技术、在JSP中应用Ajax技术、在JSP中应用DOM解析XML、在JSP中应用JDOM解析XML、在JSP中应用SAX解析XML、EL表达式、JSTL标签库、自定义标签、Hibernate...

    软件工程认识实习报告.doc

    Web 部分采用基于 MVC 模式的 Struts2 框架实现,表现层用 JSP 与 JSTL、EL 相结合实现。 四、专业知识应用 在实习过程中,实习生应用了许多专业知识,包括软件开发的程序化生产过程、业务层的管理、持久层的实现...

    jsp 开发技术大全

    mail组件、程序日志组件、JavaScript脚本语言、CSS样式、XML入门技术、在JSP中应用Ajax技术、在JSP中应用DOM解析XML、在JSP中应用JDOM解析XML、在JSP中应用SAX解析XML、EL表达式、JSTL标签库、自定义标签、Hibernate...

    达内培训项目之模拟当当网上商店

    在Struts框架中,JSP结合JSTL和EL标签用于前端展现,Servlet 用于控制,Action 用于处理前端页面JSP发来的请求,请求参数通过ActionForm进行传递,Action 在获得请求后将处理结果转发到相应的JSP进行展现。使用...

Global site tag (gtag.js) - Google Analytics