`
tanglei528
  • 浏览: 24656 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类

在jsp页面通过struts2标签对Object进行排序

JSP 
阅读更多
     ×××××××××××××××××××××××××××

  注意:是Object的,不是自己定义的对象



首先,介绍一下struts2的iterator标签

     

iterator标签主要是用于迭代输出集合元素,如list set map 数组等,在使用<s:iterator/>标签的时候有三个属性值得关注:

1. value属性:可选的属性,value属性是指一个被迭代的集合

2.id属性:可选属性, 是指集合元素的id

3.status属性:可选属性,该属性在迭代时会产生一个IteratorStatus对象,该对象可以判断当前元素的位置,包含了以下属性方法:

int getCount(); 迭代元素个数

int getIndex(); 迭代元素当前索引

boolean getFirst(); 是否为第一个

boolean getEven(); 是否为偶

boolean getLast(); 是否最后一个

bolean getOdd();   是否为奇

由于iteratorstatus对象并不是ognl的根对象因此访问需要加上 #访问如下例子:

<s:iterator value="{'a','b','c','d'}" status=”sta”><!--st是随便取得名字-->

   <s:if test=”#sta.odd”><!--判断是否为奇数-->

      <s:property value=”#st.index”/><!--显示当前元素索引-->

   </s:if>

</s:iterator>



此外:iterator也可以迭代map对象,通过key-value 迭代

<s:iterator value="mapPerson"><!--mapPerson为action中的map集合,有它的get和set方法-->

     <s:property value=”key”/>   <!--key值-->

     <s:property value=”value”/>   <!--value值-->

</s:iterator>

 

在查询数据库的时候,只查询某两个字段,返回的就会是Object类型的集合,当然,在java类中输出是很简单的。在jsp中的输出就会有点小麻烦,关键是如何从jsp中获取它的下标!!!

action中:

public class ServiceSearch{

     private List<Object> listObj;//有get和set方法

    public String getReleaseData(){

  HttpServletRequest request = ServletActionContext.getRequest();
         HttpSession session = request.getSession();
         Long id = (Long)session.getAttribute("orgId");//这是我获取的组织id
        listObj = serviceManageService.getProvidingServiceDESCByOrgId(id); //根据组织id查询数据库中某两个字段(这里我查到是名字和数量,根据数量降序)  ,返回的是object类型的集合
  return "jumpToListMyReleaseMap";  //跳转到jsp页面





jsp页面:



<s:iterator value="listObj" status="s">            
       <tr>
        <td><s:if test="#s.index==0">第一名</s:if><s:if test="#s.index==1">第二名</s:if><s:if test="#s.index==2">第三名</s:if></td><!--这是我判断前三名-->
        <td><s:if test="#s.index<3"><s:property value="listObj[#s.index][0]"/></s:if><s:else>other</s:else> </td><!--名字。这里取前三名的名字,后面的都不显示名字-->
        <td><s:property value="listObj[#s.index][1]"/></td> <!--数量-->     
       </tr>
      </s:iterator>
}

}

 

 

一次写完的 也没有检查,不知道有没有错误呢
0
3
分享到:
评论
1 楼 luohaobubu 2012-03-19  

相关推荐

    struts2 sort实例

    在Struts2中,提供了丰富的标签库来简化视图层的开发,其中包括`sort`标签,它允许我们在JSP页面上对数据集合进行排序。这个实例将深入探讨如何使用`struts2 sort`标签及其相关概念。 首先,`sort`标签是Struts2的...

    struts2标签和OGNL表达式.pdf

    这样做的目的是为了让Struts2的标签能够在JSP页面中更灵活地访问请求范围的数据。 通过OGNL和EL的结合使用,Struts2框架可以很方便地进行数据的传递和页面的动态渲染。例如,可以使用标签在JSP页面中显示Action中的...

    struts2查询修改删除

    通过以上内容,我们可以看到Struts2在实现CRUD操作时涉及到了许多核心概念和组件,这些是构建任何Web应用的基础,尤其是那些需要管理数据库中数据的应用。理解并熟练掌握这些知识点,将有助于你构建高效、稳定的...

    基于Struts 2实现的博客网站

    5. **OGNL(Object-Graph Navigation Language)**:OGNL是Struts 2中的表达式语言,用于在Action和视图之间传递数据。它可以方便地访问对象属性,实现复杂的表达式运算。 二、博客网站的结构与组件 1. **登录/...

    jqgrid+struts2

    6. **前端与后端数据交互**:jqGrid通过AJAX请求向Struts2 Action发送请求,Action根据请求参数进行相应的数据处理,然后将结果返回给前端,更新表格内容。 **四、示例代码片段** 以下是一个简单的jqGrid初始化示例...

    struts2增删改查

    4. OGNL(Object-Graph Navigation Language):Struts2的默认表达式语言,用于在Action与JSP之间传递数据。 二、Oracle数据库操作 1. 数据库连接:使用JDBC(Java Database Connectivity)驱动建立与Oracle数据库...

    struts2要用到的所有jar包全集

    以下是对给定的jar包及其在Struts2框架中作用的详细解释: 1. **struts2-dojo-plugin-2.2.1.jar**:这是Struts2的一个插件,它提供了与Dojo JavaScript库的集成。Dojo是一个强大的JavaScript工具集,用于创建交互式...

    Struts2 的OGNL使用简介

    2. **JSP标签**:Struts2的标签库如`s:property`、`s:set`等都支持OGNL表达式,方便在视图层操作数据。 3. **异常处理**:通过OGNL表达式,可以在全局异常处理中获取并显示错误信息。 4. **拦截器**:OGNL可以在拦截...

    struts2 action 返回json方法(一)源码

    在实际开发中,可能需要处理更复杂的情况,如分页、过滤、排序等,此时可以利用Struts2的动态结果集或者自定义拦截器来实现。通过深入理解和实践,你将能够熟练地在Struts2框架下构建高效的数据交互接口。

    基于struts2+Hibernate3的网上书店

    Struts2和Hibernate3是两种在Java Web开发中广泛应用的技术框架。Struts2是一个MVC(Model-View-Controller)框架,它为构建基于J2EE的Web应用程序提供了强大的支持,而Hibernate3则是一个对象关系映射(ORM)工具,...

    Struts2整合jquery利用json与后台交互

    在"strutsJquery"这个压缩包中,可能包含了Struts2整合jQuery的示例代码,包括Action类、JSP页面、配置文件等。通过学习这些示例,你可以更好地理解如何在实际项目中实现Struts2与jQuery的JSON交互。这涉及到前端与...

    人工智能-项目实践-检索系统-基于JSP struts2和hibernate3的 图书馆管理系统 包括读者和图书的基本管理和检索

    《基于JSP Struts2和Hibernate3的图书馆管理系统——人工智能在检索系统中的实践》 图书馆管理系统是信息技术在图书管理领域的具体应用,它结合了人工智能、Java编程语言以及数据库技术,为用户提供高效、便捷的...

    Struts2 权威指南

    4. **OGNL表达式语言**:Struts2使用Object-Graph Navigation Language(OGNL)作为默认的表达式语言,用于在Action和JSP之间传递数据。OGNL提供了一种强大而灵活的方式来访问和操作对象的属性。 5. **插件体系**:...

    struts2核心类库

    7. **ValueStack**:ValueStack是Struts2中用于传递数据的对象容器,它将Action对象和其他模型对象推入栈中,使得在视图层可以直接通过OGNL(Object-Graph Navigation Language)表达式访问这些数据。 8. **OGNL**...

    jquery+struts2实现异步刷新实例

    在实际应用中,你可能还需要处理分页、过滤、排序等复杂逻辑,这可以通过在Action中添加更多方法并调整Struts2配置来实现。同时,为了提高性能和安全性,还可以考虑使用JSONP、CORS等跨域访问策略,以及添加错误处理...

    BBS 论坛模型 + mysq数据库 + struts2

    4. **显示模块**:论坛页面的展示,包括主题列表、主题详情、回复列表等,可以通过Struts2的Result来渲染对应的JSP页面。JSP页面中可以通过OGNL获取并展示从数据库查询到的数据。 5. **搜索和分类**:论坛通常还...

    基于Java S2SH框架开发的网上订餐管理系统 (struts2,hibernate4,spring3)

    此外,Struts2还支持多种结果类型,如JSP、FreeMarker、Velocity等,便于视图层的渲染。 2. **Hibernate4**:Hibernate4是持久层框架,用于管理数据库操作。它通过ORM(Object-Relational Mapping)技术,将Java...

Global site tag (gtag.js) - Google Analytics