问题标签 [spring-orm]

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 回答
367 浏览

java - 事务管理器不承担事务

我遇到了一个问题,我真的不知道如何抓住猫尾巴(如果你把我开玩笑:o))

我有一个 webapp 在战争中,部署在 tomcat 中。战争包含 4 个罐子。4个jar有4个applicationContext,4个entityManager,4个TransactionManager。

像这样声明(更改数字 1..):

上下文是这样加载的:

我的问题是,我发现当我使用 3 的 BO 时,事务以 2 的数据源打开。

此外,如果我坚持下去,我会收到以下信息:

AbstractSaveEventListener - 由于没有正在进行的交易而延迟身份插入

但是,如果我单独启动 jar 1(例如),一切正常。

非常感谢您的启发。

0 投票
2 回答
967 浏览

java - 使用@Transactional 的类层次结构问题

项目设置:Spring 3.0.5 / JPA 2 / Hibernate / @Transactional

我们使用几个不同的数据源(因此也使用不同的事务管理器),但有共同的服务基类,因为很多功能都被重用了。

所以我们认为我们可以通过使用自定义注释来解决这个问题。我们在一个抽象基类中定义所有方法,并为每个事务管理器创建一个空的实现类。

现在的问题是:

AbstractFallbackTransactionAttributeSource中,这是正在执行的查找:

首先检查方法,然后检查声明该方法的类(及其祖先)。但是在我们的上下文中,自定义注解位于一个子类中,不能通过向上找到。

那么我们该如何解决这个问题呢?

【我在Spring社区论坛也问过这个问题】

0 投票
8 回答
26344 浏览

spring - LocalContainerEntityManagerFactoryBean 和 LocalEntityManagerFactoryBean 有什么区别?

谁能解释 Spring Framework 的LocalContainerEntityManagerFactoryBeanLocalEntityManagerFactoryBean 有什么区别?

0 投票
2 回答
6255 浏览

java - 如何有效地使用 Criterion 删除实体?

目前,我必须创建一个临时Criteria并使用 获取匹配的实体列表Criteria.list(),然后将列表传递给HibernateTemplate.deleteAll()

是否可以按标准删除但首先不加载列表?

也许,我应该将标准转换为 HQL,比如"delete from Foo where " + criterion.toHQL()

背景

我有一个搜索表单,稍后会对其进行解析并转换为 Criteria 组合。

使用 Criteria.list() 检索搜索结果。

现在,一个问题出现了,我想删除所有搜索结果。我是否应该再次解析搜索表单但以不同的方式将其转换为 HQL 字符串?如果我可以重用标准,事情会更简单。

由于 Criteria 最等同于 WHERE 子句,(不是吗?)我认为没有理由不能将 Criteria 用于删除。

0 投票
1 回答
924 浏览

hibernate - 动态更改会话工厂和 Txm 管理器以支持 I18N

在我们正在构建的 Spring-GWT 应用程序中,我有一个特殊的问题。我们有一个以不支持 UTF-8 的 WE8ISO8859P1 字符集编码的 Oracle DB。因此,我们正在 AL32UTF8 char set 中构建一个新数据库。不幸的是,DBA 不想将现有数据库迁移到新数据库,我们必须使用旧数据库获取英语数据,使用新数据库获取拉丁语数据。

我们在方法/类级别有 @Transactional 注释,并且 sessionFactory 被注入到 DAO 以连接到休眠。当用户选择拉丁语时,我想重用这些

@Transactional(动态更改)

即,当用户在拉丁语/英语之间切换时,注入的 TransactionManager 和 SessionFactory 应该通过 Ajax 调用动态更改。

这可以做到吗?解决此问题的最佳方法是什么?

再想一想,我可以通过制作 bean ApplicationContextAware 并在 dao 中设置它来获得拉丁会话工厂,但这是一个好方法吗?我该如何处理 TransactionManager ?

谢谢,

0 投票
2 回答
1535 浏览

grails - 如何在 Grails 中使用 gorm 级联更新?

我的域之间的关系:

级联更新代码:

首先,我将sampleAttributesCartridgeLane链接,然后我找到我想要更新的墨盒(链接到CartridgeLane ,最后我正在保存。

此代码仅插入数据(例如:将 sampleAttributes 和 CartridgeLane 数据添加到墨盒)。
我的问题是我正在寻找更新(而不是插入)。

如何管理级联更新?
gorm 如何区分更新和插入?
有没有更有效的级联更新方式?

0 投票
2 回答
21263 浏览

java - Spring 3.1 entityManagerFactory java.lang.NoSuchFieldError: NULL 错误

我刚刚将 Spring 3.0.5 迁移到 3.1 GA。我在初始化期间遇到了运行时错误:

这是我的xml。

这是java.lang.NoSuchFieldError: NULL关于什么的?3.0.5 没有问题。

0 投票
1 回答
2089 浏览

ibatis - ibatis中的SqlMapClient和SqlMapSeesion有什么区别?

当我阅读 ibatis-sqlmap-2.3.4 时,我发现它们都实现了 SqlMapExecutor。

SqlMapClientImpl 使用提供线程安全的 localSqlMapSession 插入。

但是在spring2.5.6中,SqlMapClientTemplate的execute方法使用SqlMapClientImpl是这样的:

openSession 方法每次返回一个新的 SqlMapSessionImpl。

我的问题是:

为什么 SqlMapClientTemplate 使用 sqlMapSeesion 而不是 sqlMapClient ?

为什么 SqlMapClientTemplate 中未使用 sqlMapClient 的 localSqlMapSession ?像这样使用:

SqlMapClient 和 SqlMapSeesion 有什么区别?

0 投票
1 回答
41959 浏览

spring - java.lang.ClassNotFoundException:org.hibernate.engine.SessionFactoryImplementor

我正在尝试使用spring 3.1.1.RELEASE迁移到休眠4.1.0.Final ,以下是我的休眠配置:

但是在尝试运行应用程序时,我遇到了以下异常:

请告知我为什么会收到此错误,以及如何解决,谢谢。

0 投票
3 回答
2010 浏览

java - 使用 HibernateTemplate 时无法获取列名

我正在使用 Spring-orm 和 HibernateTemplate 来执行原生 SQL 查询(DB 是 Oracle 11 供参考),如下所示:

我已经成功地执行了查询并取回了结果。但是我想不出一种方法来获取结果列名,我开始认为使用这种方法是不可能的。我的问题是我必须执行来自用户输入的查询,而我对参数名称一无所知。

有任何想法吗?