0 0

hibernate的级联显示问题5


先说说现在的设计

 

class userPosition(){//用户与职位的关系 多对多关系

String jobNumber;//职工号

long positionId;

}

class job(){//职务

Long id;

 

String name;

}

class department(){//部门

Long id;

String name;

}

class position(){//职位

long jobId;

long departmentId;

String name;

}

,现在要根据根据用户的职工号查询用户的相关职位,并在列表界面显示职位名称\职位所在机构名称\职位所属职务的名称,

目前系统使用hibernate,但是又不能使用级联查询的lazy,因为页面使用了ajax,所有返回的数据都会被转成json.

另外由于很多时候职务/部门/职位只是单表操作,

所以不大想用hibernate的级联

 

大家有什么好办法没??提提建议

 

 

 

2012年2月24日 17:41

1个答案 按时间排序 按投票排序

0 0

1.首先是不是缺了点

	
        class position(){//职位
                long id //是不是缺了这个
		long jobId;
		long departmentId;
		String name;
	}


2. 从你的介绍看来 User 多对多 position, position多对一department, position多对 
   一job, 是这样吗?

3. 既然不能用级联lazyload的话,
   要么用code一步一步的查询实现,一个一个的找到。
   要么用一个较复杂的HQL语句实现,
   还要是性能比较苛刻的话就只能用SQL语句了。

我个人更喜欢用一个较复杂的HQL语句实现
SELECT p.name, d.name, j.name 
FROM Position p, Department d, Job j, UserPosition u 
WHERE u.jobNumber = 职工号 AND u.positionId = p.id AND p.jobId = j.id AND p.departmentId = d.id

2012年2月24日 18:57

相关推荐

    用hibernate做的省市县三级级联,

    总的来说,这个项目展示了如何使用Hibernate、Ajax和DWR来实现一个高效、用户友好的省市县三级级联选择功能。开发过程中涉及了ORM、MVC架构、数据库操作以及前端交互等多个方面,是学习和实践Web开发技能的好实例。

    级联显示(树形,下拉列表)

    在IT行业中,级联显示是一种常见的用户界面设计技术,它允许用户从多个相关选项中进行选择,这些选项之间存在依赖关系。在这个场景中,我们关注的是如何在Java中结合Struts和Hibernate框架来实现级联的树形和下拉...

    struts+hibernate+ajax级联菜单

    7. JSP或HTML页面:前端展示,包含Ajax请求的JavaScript代码,以及显示级联菜单的HTML元素。 这个项目对于理解和实践Java Web开发中的MVC架构、ORM技术以及异步交互有着重要的意义,也是提高Web应用交互性和用户...

    用Struts+hibernate+SQLServer2000写的级联下拉框程序

    Struts、Hibernate以及SQLServer2000是Java Web开发中的三个重要技术,它们共同构建了一个功能丰富的级联下拉框程序。这个程序的核心目的是在用户界面中提供一种交互方式,使得用户可以从一个下拉框的选择中动态地...

    SSH+级联菜单应用案例

    级联菜单的数据通常存储在多层关联的表结构中,Hibernate可以通过HQL(Hibernate Query Language)或 Criteria API 查询这些数据。 4. **级联菜单的概念**:级联菜单,也称为下拉菜单或子菜单,是指菜单项展开后...

    java级联查询、分页查询

    但需要注意,过度使用级联查询可能会导致性能问题,因为它可能会引发"n+1查询"问题,即每获取一个父对象就查询一次子对象,这在数据量大时效率极低。 为了优化,可以考虑使用JOIN查询或二级缓存。在Hibernate中,...

    三级联动的实例+struts2+hibernate3

    - 配置Action:定义每个级联操作对应的Action,包括接收请求、处理业务逻辑和返回结果。 - 使用Ajax插件:Struts2有内置的Ajax支持,如JQuery插件,可以方便地发送异步请求并更新页面部分区域。 - 定义结果类型:...

    ajax+struts2.0+jsp下拉列表级联

    在本示例中,JSP将负责显示页面,包括创建和初始化级联下拉列表,以及处理AJAX回调后的数据更新。 实现步骤大致如下: 1. 创建JSP页面:在JSP中,你需要创建两个或者更多个下拉列表,并绑定AJAX事件监听器。当第一...

    ajax实现下拉列表级联

    例如,选择一个国家后,接着的城市下拉列表会显示相应国家的城市列表。这种级联效果可以通过监听主下拉列表的onChange事件,然后发送Ajax请求来实现。 接下来,我们引入EJB作为后端处理逻辑的组件。EJB是一种Java ...

    ajax+ssh实现省份城市级联查询

    在省份城市级联查询中,用户选择省份后,通过Ajax异步请求,无需刷新页面即可获取并显示对应省份的城市列表。这样可以提供更流畅的交互体验,提高用户的满意度。 Spring是一个全面的Java企业级应用开发框架,它提供...

    SSH+JQuery+MySQL级联操作(省市县级联)

    在这种情况下,当用户在省份列表中选择一个特定的省份时,城市列表会自动更新只显示该省份的城市;同样,当城市选定后,县(区)列表也会根据所选城市进行相应更新。这种功能在地理信息系统、地址输入等场景中非常...

    ssh中将含有级联对象的list转化为json

    在SSH(Spring、Struts2、Hibernate)框架中,开发Web应用时经常需要与前端进行数据交互。EasyUI是一款基于jQuery的UI库,用于构建现代、互动的用户界面。在处理数据展示时,我们可能需要将后端Java对象转换为JSON...

    hibernate5.5.4

    4. **级联操作**: 在关联映射中,Hibernate允许级联操作,这意味着对一个实体的操作会影响到与其关联的其他实体。 5. **HQL(Hibernate Query Language)**: Hibernate提供了自己的查询语言HQL,类似于SQL,但面向...

    Hibernate Recipes

    `hibernate.show_sql`用于控制是否显示生成的SQL语句等。 2. **基本CRUD操作** - **创建**: 使用Session的`save()`或`persist()`方法保存实体到数据库。 - **读取**: 通过`get()`或`load()`方法获取单个实体,...

    struts\Hibernate 学习总结.doc

    1. Hibernate产生的原因:Hibernate的出现主要是为了解决JDBC编程中的一些问题,如代码和SQL混杂,不利于维护;SQL语句使得程序失去面向对象的特性;数据模型变化需要手动修改大量SQL;以及SQL错误在编译时无法检查...

    hibernate-3.6.7.final中文帮助文档(html)

    如果在阅读过程中遇到中文乱码问题,只需将浏览器的编码设置为UTF-8,即可正常显示中文内容。 在《Hibernate 3.6.7.Final 中文帮助文档》中,你将找到以下关键知识点: 1. **Hibernate 概述**:介绍Hibernate的...

    hibernate-validator-5.2.1.Final-dist

    4. 国际化:支持多语言错误消息,可根据用户设置的语言环境显示相应的错误提示。 5. 错误处理:提供统一的验证结果处理机制,方便获取所有验证失败的详细信息。 三、验证流程与原理 1. 注解解析:在执行验证时,...

    hibernate配置参数详解

    6. **`hibernate.max_fetch_depth`**: 设置Hibernate的最大级联加载深度。 ```properties hibernate.max_fetch_depth=3 ``` 这个配置项控制Hibernate在进行关联加载时的最大深度,避免无限递归导致性能问题。 7...

    hibernate说明文档

    - **处理与渲染**:实现业务逻辑,调用Hibernate操作数据库,并返回结果给前端显示。 - **部署与测试**:将应用程序打包并部署到服务器上,通过浏览器访问进行功能测试。 #### Hibernate体系结构与配置 - **体系...

Global site tag (gtag.js) - Google Analytics