`
hanjiangit
  • 浏览: 185365 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

springside的filter查询

阅读更多

在做一个有关联关系的User,Department两个对象的查询时,出了点问题。

这两个对象是many-to-one关系,先贴两个对象的实体类代码。

Department.java

@OneToMany(cascade =
	{ CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE, CascadeType.REFRESH }, fetch = FetchType.LAZY, mappedBy = "department")
	public Set<User> getUsers()
	{
		return users;
	}

  User.java 

@ManyToOne(cascade =	{ CascadeType.REFRESH, CascadeType.MERGE }, optional = false)	
@JoinColumn(name = "depa_Id")
	public Department getDepartment()
	{
		return department;
	}

 情况是一个界面 左边是个Department的树,右边是两个tabpanel:点击树节点更改两个tabpanel里的内容两个tabpanel分别是user,department。贴出JavaScript的激发事件代码;

function activate_view_cp(_obj){
		if(_obj.getId()=='child-tab1'){
			if(parentId == null)
			{
				document.getElementById('center_iframe').src="./department.action";
			}
			else
			{
				document.getElementById('center_iframe').src="./department.action?filter_EQL_parent_Id="+parentId;
			}
 		}else if(_obj.getId()=='child-tab2'){
 			if(parentId == null)
 			{
 	 			document.getElementById('center_iframe').src="./user.action";
 	 		}
 			else
 			{
 				document.getElementById('center_iframe').src="./user.action?filter_EQL_department.id="+parentId;
 	 		}
 		}
 	}

 点击部门的tabPanel时候的uri是:  ./department.action?filter_EQL_parent_Id="+parentId 。用户的tabPanel的uri是:./user.action?filter_EQL_department.id="+parentId 。注意这个地方department.id 实体属性对象的id !filter支持这样 让我太惊讶了 呵呵。省了好多事。

我刚开始的时候写成这样:./user.action?filter_EQL_depa_Id="+parentId   一直报找不到属性错误。

 

 

我用的是springside3.1.4版本本来他的filter查询是没有EQL,EQLI等。是我后来加的。其实也很简单只需要在两个类里修改一点代码就可以了

在 org.springside.modules.orm.PropertyFilter里增加定义。

在org.springside.modules.orm.hibernate.HibernateDao的buildPropertyFilterCriterion(final String propertyName, final Object value, final MatchType matchType)方法里增加处理就行了。ok

 

分享到:
评论
1 楼 木叶之舟 2011-10-27  
我这里有个疑问,就是我想通过拦截外键的属性,该怎样实现呢?
比如department表下有一个属性departmName
是不是可以通过这样
/user.action?filter_EQL_department.departmName="+departmentName
来拦截呢?

相关推荐

    SpringSide4 参考手册

    这些部分讲述了如何进行动态组合查询条件、使用Hibernate二级缓存、以及如何配置数据源和事务管理。 为了提升性能,文档介绍了各种缓存技术,包括Ehcache、Guava Cache以及分布式缓存的实现。还提到了如何在Ehcache...

    springside-3.2.2源码

    《SpringSide 3.2.2 源码解析与技术深度探讨》 SpringSide 是一个基于 Spring Framework 的 Java 开发工具集,旨在简化 Spring 应用程序的开发过程,提供一套快速、现代且规范的开发实践。SpringSide 3.2.2 版本是...

    springside开发全面讲解

    《springside开发全面讲解》是一份旨在帮助开发者深入了解并掌握springside框架的详尽教程。springside是一款基于Spring框架的轻量级开发工具集,它为Java开发提供了简洁、高效的解决方案,尤其适合中大型项目的开发...

    Springside-core-4.1.0/Springside-core-4.1.0

    《SpringSide核心库4.1.0深度解析》 SpringSide是Java开发中的一款轻量级框架,它基于Spring框架,旨在简化企业级应用的开发流程。本文将深入探讨SpringSide-core-4.1.0的核心特性,以及其在实际项目中的应用。 一...

    springside3.0.zip

    《SpringSide 3.0:Java企业开发的高效框架指南》 SpringSide 3.0 是一个基于Spring框架的开源项目,旨在为Java开发者提供一套高效、简洁的开发规范和工具集。它不仅包含了Spring的核心模块,还整合了其他优秀的...

    springside

    《SpringSide:全面解析与应用》 SpringSide项目是一个基于Java的开源软件开发框架,它以Spring Framework为核心,旨在提供一套简洁、规范的项目构建和开发实践。在深入理解SpringSide之前,我们首先需要了解Spring...

    有springside4.2.3-GA.jar 包

    《深入解析springside4.2.3-GA.jar:Java开发者的宝藏库》 在Java开发领域,SpringSide框架以其高效、灵活和强大的特性深受开发者喜爱。本文将围绕springside4.2.3-GA.jar这个核心组件,探讨其在Java应用中的重要...

    springside-core-4.2.2.GA(含关联的test.jar)

    pom.xml配置 ...mvn install:install-file -DgroupId=org.springside -DartifactId=springside-core -Dversion=4.2.2.GA -Dfile=./springside-core-4.2.2.GA.jar -Dpackaging=jar -DgeneratePom=true

    springside3.3.4 使用方法

    ### springside3.3.4使用方法与SSH整合详解 #### 一、Springside简介 Springside项目是基于Spring框架的一个应用架构示例,它提供了一套完整的开发模式来构建企业级Java Web应用程序。Springside 3.3.4版本作为一...

    SpringSide3.3.4安装部署

    SpringSide3.3.4 安装部署详解 SpringSide3.3.4 安装部署是指在计算机上安装和部署 SpringSide3.3.4 软件的过程。在这个过程中,我们需要使用 Maven 工具来生成项目模板,安装 mini-web 应用程序,并配置相应的...

    SpringSide文档.chm

    SpringSide文档.chm。

    springside.jar

    《springside.jar在Java应用中的使用详解》 在Java开发领域,springside.jar是一个备受推崇的开源项目,它为开发者提供了丰富的工具和最佳实践,以简化Spring框架的使用。本文将深入探讨springside.jar的核心功能,...

    SpringSide的Hibernate封装

    SpringSide的Hibernate封装是针对Spring和Hibernate整合时的一种优化实践,旨在提高开发效率和代码的可维护性。它通过三层封装来实现对Hibernate操作的便捷和类型安全。 第一层是HibernateGenericDao,它是基于...

    Springside4 学习整理

    - Persistence:包括 DynamicSpecifications、Hibernate 和 SearchFilter,这些工具类支持动态查询和数据持久化操作。 - Security:尤其是 Shiro 相关的 utils,提供了 Cryptos 和 Digests 工具类,支持消息签名、...

    springside4(showcase)

    《SpringSide 4:Spring MVC 实战展示》 在IT领域,SpringSide 4是一个备受推崇的开源项目,它是一个全面展示Spring框架及其生态系统的实战示例。标题"Springside4 (showcase)"暗示了这是一个以展示SpringSide 4...

    springside的jar包

    springside是一个开源的Java开发工具集,它为Spring框架提供了额外的支持和便利,使得开发者在基于Spring构建项目时能够更加高效和规范。这个"springside4-4.1.0.GA"的jar包是Springside项目的4.1.0版本的发布,GA...

    springside框架

    《SpringSide框架详解:整合Spring、Hibernate与Struts2的高效解决方案》 SpringSide框架,作为一款基于Java的开源企业级应用开发框架,是开发者们为了简化开发流程、提高开发效率而精心设计的。它巧妙地融合了...

    springside3.3完整版

    《SpringSide 3.3 完整版:深入解析与实战指南》 SpringSide 是一个开源的Java项目,旨在提供一套简洁、规范的Spring应用开发模板,帮助开发者快速上手Spring框架。本版本,即“springside3.3”,是专为MyEclipse...

    springside-4.0.0.GA.zip

    《SpringSide 4.0.0.GA:JavaEE世界的春天之光》 SpringSide,一个以Spring Framework为核心,秉持Pragmatic编程理念的JavaEE应用参考实例,它旨在为开发者提供主流技术选型的示范,展示JavaEE世界中的最佳实践。这...

    springside5

    【标题】"springside5" 是一个基于SpringSide框架的项目更新,它涉及了数据库、持久层技术、权限管理以及用户体验方面的改进。这个项目旨在提供一个现代化的、高效的开发环境,通过集成不同的技术和组件来优化开发...

Global site tag (gtag.js) - Google Analytics