问题标签 [hibernate-4.x]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2026 浏览

jpa - JPA:插入后如何获取更新的实体对象?

抱歉,不清楚如何问这个问题。这是我的场景:

控制器

HostSiteServiceImpl

HostSiteDAOImpl

如您所见,我没有在任何地方修改实体对象引用。我的印象是合并操作将使用已在表级别初始化的数据更新持久对象。在我的情况下,它只是自动生成的 id。但是可能还有其他事情,例如创建时间戳等......我需要做些什么来在持久对象上设置这个生成的 id 吗?操作本身没有问题。记录与生成的 id 一起保存在表中。

我将 Hibernate 4 用于 JPA 提供程序。

0 投票
1 回答
4009 浏览

java - Hibernate 4不创建表

我正在使用 MySQL5,我的 applicationContext.xml 具有以下 bean:

我用 MySQL Workbench 创建了一个名为“ems”的模式,但是当我在控制台中部署应用程序时,它会打印:

控制台也不例外。但是在模式 ems 中,表是空的,这意味着没有创建表。

User.hbm.xml 位于指定位置,即:

User.java 也存在。

我正在使用 hibernate-core-4.1.1.Final 和 spring-orm-3.1.1.RELEASE。

我做错了什么?

0 投票
1 回答
1993 浏览

java - 使用 Spring 3 和 Hibernate 4 在 Open-Session-In-View 中实现注释驱动事务

我正在使用 Wicket-1.5.3、Spring-3.1.1 和 Hibernate-4.1.1 开发应用程序。

我要实施

  • Open-Session-In-View 模式
  • 事务将是注释驱动的,并且
  • 应用程序应该得到任何 LazyInitializationException,还有
  • 嵌套模型的数据库更新操作需要正确完成。

我有单独的层、网络、数据、服务等。

首先,我想说明 web.xml 中定义的 open-session-in-view 过滤器:

在 applicationContext.xml 我有以下配置:

*.hbm.xml 中定义的数据模型类是基于代理的:

现在我描述在 applicationConext 中定义的类:

userDao:其实就是UserDaoImpl:

BaseDaoImpl 是一个抽象类,其中 sessionFactory 的依赖注入实际发生:

在这里,我有一个关于这门课的问题。我想知道如果我用 HibernateDaoSupport 扩展 BaseDaoImpl 是否会更好?如果我这样做,那么保存方法的替代版本将是:

哪一个更好?

接下来是IBaseDao接口:

和 ISupportSave:

UserDaoImpl 实现了 IUserDao,它是:

接下来是服务层,在我描述的其他类中,userManager 是事务性的:

BaseManagerImpl 是一个由 UserManagerImpl 扩展的抽象类:

以下是 IBaseManager:

IUserManager 是:

我没有给模型课。主要是我有实现 IUser 并扩展 Base 的用户。IUser 依次扩展了 IBase 并且 Base 实现了 IBase。

现在我想知道上述设计是否正确,是否能满足我的要求。

任何建议都会对我很有帮助。

谢谢。

0 投票
4 回答
56118 浏览

spring - org.hibernate.HibernateException:没有为当前线程找到会话

我在 Spring3 和 Hibernte4 中遇到了上述异常

以下是我的 bean xml 文件

我的 BaseDAO 类看起来像这样

下面的代码抛出了标题中的异常

有谁知道如何解决这个问题?

0 投票
1 回答
7458 浏览

java - Hibernate注解继承抽象基类

在我的应用程序中,我试图通过注释来实现 Hibernate 映射。我有一个抽象的基类,在这个类中存在 Id 属性。我正在用一个子类继承这个基类。代码如下:

子类是:

它正在创建用户表并且工作正常。

我想知道我是否以正确的方式做这件事。

谢谢。

0 投票
2 回答
4333 浏览

java - org.hibernate.cfg.Configuration 添加注释类所在的包

我正在通过以下代码创建数据库表:

在这里,我按configuration.addAnnotatedClass方法指定了带注释的类名称。如果我有 50 节课,那真的会很乱。

有没有办法指定包名称以扫描带注释的类?

0 投票
1 回答
2114 浏览

hibernate-4.x - 如何使用 Spring 3.1 配置休眠 4

我有一个 springapp-dao.xml,如下所示

然后我有一个 springapp-service.xml 如下

然后我有一个 DAOImpl

然后我有一个正确映射到联系人表的 POJO

...........

然后我有一个服务类

.....................

现在我有 2 个问题首先,当我尝试在 ContactsDAOImpl 中自动连接会话工厂和在 ContactServiceImpl 中自动连接 ContactDAO 时,它根本没有连接。然后我使用了 setter 和 getter,如上所示。然后它开始注入所需的依赖项。现在我的问题是当我是 ContactDAOImpl 的 listContact() 方法时,(首先我必须在工厂调用 open connection 而不是 getConnection 但这不起作用),它会抛出以下异常

我需要创建 hbm 文件吗

0 投票
1 回答
4374 浏览

java - 迁移到 Hibernate 4,@Inheritance 和 @GeneratedValue 的误解

我升级了我的 web 应用程序以使用 Hibernate 4。之后我遇到了一些问题,我需要帮助。

我的域对象有一个基类,如下所示:

然后,我有很多实体,比如:

我在实体之间有一些继承:

当我进行 hql 查询时,我得到了这个异常

在hibernate源代码中,我看到如果实体有父项hibernate默认设置为SINGLE_TABLE继承,所以在每个查询中它连接DiscriminatorColumn,但我没有鉴别器列,因为每个类都映射到不同的表。

为了解决这个问题,我把这个注释放在我的实体上:

但在那之后我得到了另一个例外

我在网上找到了解决方案。它需要将我的 BaseDomainObject 中 @GeneratedValue 的策略更改为 TABLE

但这导致了另一个异常

我的数据库中的所有表都有一个自动增量 id.. 所以我不希望 hibernate 管理它..

我错过了什么吗?

0 投票
1 回答
989 浏览

hibernate - Hibernate Multitenancy with Discriminator 方法

Hibernate还不支持通过鉴别器策略方法实现多租户。我们正在考虑在我们的项目中实施这一策略。但是我们总体上对查询性能有一些疑问。查询性能是否会比分离数据库/模式方法更差,因为在这种情况下,查询是在许多租户的单一数据模式上运行的?或者在这种情况下,除了创建索引之外,还有什么方法可以提高查询性能?

我们正在考虑鉴别器方法,因为如果数据在单一模式中,最好进行备份和恢复。

0 投票
0 回答
307 浏览

jakarta-ee - Spring 安全域 ACL 与 EJB3 集成

我正在构建一个应用程序,它的服务(EJB3 Stateless Session Beans & Hibernate4)层和客户端 Web 层(Spring MVC)驻留在不同的物理服务器上。

客户端查找所有服务的服务层。所有的数据访问都在服务层完成。

Spring Security 用于 Web 应用层的身份验证。

1) 有没有办法与服务层 EJB 应用程序共享登录的用户详细信息?2) 授权数据访问的最佳选择是什么?有没有办法将 Spring 安全域对象安全 ACL 与 EJB3 集成?

感谢您的时间和答案..