摘自
http://www.hibernate.org/hib_docs/reference/en/html/mapping.html
There is no difference between a view and a base table for a Hibernate mapping, as expected this is transparent at the database level (note that some DBMS don't support views properly, especially with updates). Sometimes you want to use a view, but can't create one in the database (ie. with a legacy schema). In this case, you can map an immutable and read-only entity to a given SQL subselect expression:
<class name="Summary">
<subselect>
select item.name, max(bid.amount), count(*)
from item
join bid on bid.item_id = item.id
group by item.name
</subselect>
<synchronize table="item"/>
<synchronize table="bid"/>
<id name="name"/>
...
</class>
Declare the tables to synchronize this entity with, ensuring that auto-flush happens correctly, and that queries against the derived entity do not return stale data. The <subselect> is available as both as an attribute and a nested mapping element.
分享到:
相关推荐
总结起来,在J2EE项目开发中,使用Hibernate映射视图是一种解决复杂查询和跨表统计的有效策略。当原生SQL不适用时,创建视图并进行相应的ORM配置可以保持代码的整洁性和可维护性。需要注意的是,视图的映射可能会...
在Hibernate中,我们可以利用Hibernate的映射机制来处理视图,将其作为实体进行操作。 **视图的作用** 1. **数据安全**:视图可以限制用户对原始表的访问权限,只允许他们看到和修改特定的数据集。 2. **数据聚合**...
Hibernate是一个对象关系映射(ORM)框架,它允许开发者使用Java对象来操作数据库,而无需直接编写SQL语句。通过Hibernate,开发者可以将数据库操作与业务逻辑分离,提高代码的可维护性和可复用性。 Spring与...
如果你不能看到上图所示的Hibernate Configurations窗口,说明你没有打开这个View,选择Windows-Show View-Other,然后选择Hibernate Configurations即可打开这个窗口,窗口的位置无关紧要,你喜欢放在那里就把他...
6. **视图(View)**:可能是JSP、HTML页面,显示数据或接收用户输入。 7. **依赖库(Libraries)**:包括Hibernate、JDBC驱动和其他依赖的jar文件。 通过研究这个项目,开发者可以学习到如何配置Hibernate,如何...
Struts主要负责MVC(Model-View-Controller)架构的实现,提供控制层的功能,而Hibernate则是一个强大的对象关系映射(ORM)工具,用于简化数据库操作。将两者整合可以创建出高效、灵活的Web应用程序。 **Struts 2...
- Hibernate视图:如果未显示`Hibernate Configurations`视图,可以通过`Windows` -> `Show View` -> `Other`来打开。 - 主键设置:主键对于反向工程至关重要,推荐使用与业务无关的ID作为主键。 通过上述步骤,...
1. **打开 Hibernate Configurations 视图**:在 Eclipse 或类似的集成开发环境中,通过 `Window -> Show View -> Other...` 找到 Hibernate Configurations 视图。 2. **添加配置**:在视图空白区域右键选择 `Add ...
Spring MVC 用于构建应用程序的前端控制器,提供模型-视图-控制器(MVC)架构,而 Hibernate 是一个强大的对象关系映射(ORM)框架,负责数据库操作。整合这两个框架可以让我们在处理业务逻辑时更加高效和灵活。 ...
本案例主要关注的是如何将Hibernate ORM(对象关系映射)框架与Struts2 MVC(模型-视图-控制器)框架整合,同时探讨MVC分层架构在实际应用中的运用。以下是对这些知识点的详细说明: **1. Hibernate ORM框架** ...
XDoclet曾是用于自动生成Hibernate映射文件和Java类的工具,但在现代开发中,更多地使用注解驱动的方式,减少了对XDoclet的依赖。 以上是JSF和Hibernate的基本介绍,以及它们在Web开发中的角色。通过深入学习这两个...
5. **实现前端接口**: 创建控制器(Controller)或视图(View),处理用户的请求,调用Service层方法,并将结果返回给用户。 【技术点详解】 1. **JDBC与Hibernate比较**: Hibernate通过ORM简化了JDBC的繁琐操作,...
5. **数据库脚本**:创建Oracle 11g数据库表的SQL脚本,与Hibernate映射的实体类相对应。 在Eclipse 3.2环境下,这个项目可以导入为一个动态Web项目,并配置Tomcat 5.5作为服务器。运行时,需要确保Oracle 11g...
Hibernate支持实体类、映射文件、HQL(Hibernate查询语言)等特性,使得数据操作更加便捷和高效。 Spring作为核心框架,提供依赖注入(DI)和面向切面编程(AOP)功能。DI允许开发者在运行时动态地组装对象及其依赖...
- Mapping:对象-关系映射,通过 Hibernate 映射文件或注解来定义实体类和数据库表的关系。 3. **整合 Spring MVC 和 Hibernate:** - 通过 Spring 的声明式事务管理,可以在配置文件中定义事务边界,简化事务...
Hibernate则是一个对象关系映射(ORM)框架,它简化了数据库操作,将Java对象和数据库表之间的映射关系自动化处理。开发者可以通过定义实体类和映射文件(hibernate.cfg.xml和.hbm.xml)来管理数据,无需编写大量的...
以及开放 session 在视图(Open Session In View,OSIV)模式,确保在Web请求生命周期内保持一个持久化上下文,避免N+1查询问题。 总结来说,本教程涵盖了Hibernate的基础知识,从入门到实体映射,再到复合主键和...
Spring MVC 提供了强大的请求处理和视图管理功能,而 Hibernate 则是 ORM(对象关系映射)框架,简化了数据库操作。下面将详细介绍这两个框架的整合过程及其核心概念。 **Spring MVC 概述** Spring MVC 是 Spring ...
- 反向工程是指从现有数据库表结构自动生成对应的Java POJO类及其Hibernate映射文件的过程。 - **2.3.4 选择主键生成策略** - 主键生成策略决定了主键的生成方式,常见的有自动增长(AUTO_INCREMENT)、序列...
Struts和Hibernate是Java开发中两个非常重要的框架,它们分别负责MVC(Model-View-Controller)模式中的控制层和数据持久化层。MVC模式是一种广泛应用的软件设计模式,可以将应用程序的业务逻辑、用户界面和数据访问...