问题标签 [sessionfactory]

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 投票
2 回答
2147 浏览

java - 多个会话工厂,一个连接?

为了避免 XA 开销,我在项目 A 中添加了一些表名,并将其推出到与项目 B 相同的 mysql 数据库中,这样我就可以使用相同的连接 - 并希望获得完整的原子性等。

项目 A 和 B 虽然具有非常不同的会话工厂配置。我为项目 B 配置了一个 HibernateTransactionManager,而 A 只是使用 TransactionSynchronizationManager.hasResource(sessionFactoryA) OSiV 样式代码来加入事务。

这在概念上有效吗?我只是在A中尝试了一个断点,然后等待,然后继续,超时导致B回滚,但A仍然提交!!?

是什么赋予了?谢谢你的帮助。

0 投票
2 回答
24042 浏览

c# - 确保 NHibernate SessionFactory 只创建一次

我编写了一个 NHibernateSessionFactory 类,它包含一个静态 Nhibernate ISessionFactory。这用于确保我们只有一个会话工厂,并且第一次调用 OpenSession() 时,我创建了实际的 SessionFactory - 下次我使用它并在其上打开一个会话。代码如下所示:

现在我有一个问题。我的应用程序在客户端和服务器之间拆分。Nhibernate 的东西在服务器端。在启动时,我的客户端和服务器都希望通过一些将使用 NhibernateSessionFactory 的服务来访问数据库。结果是在请求来自客户端之前是否创建 _sessionFactory 的竞争条件。如果不是它会失败..

我想我需要 NhibernateSessionFactory 中的某种排队或等待机制,但我不确定该怎么做。以前有人遇到过同样的问题吗?最好的解决方案是什么?

0 投票
2 回答
8455 浏览

java - Hibernate SessionFactory:如何在 Tomcat 中配置 JNDI?

这就是会话工厂的获取方式:

请为 Tomcat6 提供一个简单的解决方案,以便能够通过 Java 代码中的简单 jndi 查找来获取 SessionFactory。Tomcat那边什么文件应该写什么?

0 投票
2 回答
1218 浏览

hibernate - 休眠中的会话工厂

我在我的 spring 项目中使用 hibernate-2.1 和“net.sf.hibernate.SessionFactory”类。

现在我切换到 Spring 2.5.6.A,他们正在使用 hibernate3,我无法在其中找到“net.sf.hibernate”包。

但是我在包“org.springframework.orm.toplink”中找到了SessionFactory类。

hibernate-2.1“net.sf.hibernate.SessionFactory”中的一个类和“org.springframework.orm.toplink.SessionFactory”中的另一个类是否相同?

我可以用第二个替换第一个吗?

谢谢, 科马尔

0 投票
1 回答
417 浏览

singleton - 实例化失败和单例行为交互 [NInject1]

我已经设置了一个 NInject(使用 1.5 版)绑定,如下所示:

如您所见,此绑定使用单例行为,但也可能在未正确配置某些内容时引发异常,例如与数据库的错误连接字符串。

现在,当会话工厂的创建首先失败(抛出数据库异常)时,NInject 不会尝试再次创建对象,但总是返回 null。

我需要 NInject 首先检查 null 并在实例为 null 时重新创建,但当然不是在已经成功构造实例时(保持它为单例)。像这样:

我需要编写自定义行为还是缺少其他内容?

0 投票
2 回答
751 浏览

java - 在 Hibernate 中,n 个表到 1 个类的运行时单向映射

我在不同的表中有数据,但在同一个数据库中,所有这些都有相同的模式。根据一些运行时变量,我想在查询 Hibernate 时选择使用哪个表。这可能吗?

请注意,我只使用 Hibernate 将表数据读取到对象。

一个解决方案(我认为)是*.hbm.xml每个表一个 -file 和一个 SessionFactory 每个表:

丑陋。*hbm.xml特别是考虑到-files之间的唯一区别是 table 属性。

有没有更好的方法来做到这一点?理想情况下与一个 Class.hbm.xml.

0 投票
1 回答
747 浏览

c# - 在 Nhibernate 中设置 CRUD 方法和 SessionFactory 的好方法是什么?

我目前有一个创建会话工厂的 NHibernateHelper 类。我不断收到错误提示“会话已关闭!”。我会以错误的方式解决这个问题吗?当我调用在 Add(User user) 之后调用的 Add(Login login) 时发生错误

这是我的存储库:

0 投票
3 回答
1464 浏览

hibernate - 如何在休眠中自动生成非 id 值?

我正在使用休眠注释、spring、sessionFactory 并在 context.xml 中定义所有内容(就像这样..)

在我的实体上,我有几个属性,一个是 id,另一个是我需要自动生成的字符串值“externalId”。(例如,它可能是“dev_”,后跟代表 id 的 5 位数值。因此,如果 id 为 4,则 externalId 将为“dev_00004”)

有谁知道我怎么能做到这一点?我查看了@PrePersist,但所有 dao 等都使用 saveOrUpdate ,两者似乎并没有齐头并进。我想也许@preUpdate 可能会起作用,但是这似乎并没有被调用。谁能给我任何关于如何实现这一目标的想法?

谢谢!

0 投票
4 回答
2489 浏览

nhibernate - SessionFactory - 多个数据库的一个工厂

我们有一种情况,我们有多个具有相同架构的数据库,但每个数据库中的数据不同。我们正在创建一个单一的会话工厂来处理这个问题。

问题是我们不知道我们将连接到哪个数据库,直到运行时才能提供它。但是在启动以获取工厂构建时,我们需要使用该模式连接到数据库。我们目前通过在已知位置创建架构并使用它来做到这一点,但我们想删除该要求。

在不指定连接的情况下,我无法找到创建会话工厂的方法。我们不希望能够使用没有参数的 OpenSession 方法,这没关系。

有任何想法吗?谢谢安迪

0 投票
2 回答
162 浏览

nhibernate - 每个请求的 ISession(仅在必要时)

我正在开发一个应用程序(asp.net mvc),并且我在每个请求中使用 ISession(在 globa.asax 中,我在 Begin_Request 事件和 End_Request 事件中使用 Bind 和 Unbind)。一切正常,但有时(某些请求)我不需要使用 ISession(与数据库的连接)。

我想知道是否有任何方法仅在我需要时打开 ISession 并在所有进程请求中创建 ISession 条目(与所有存储库和唯一的事务上下文共享)?

我正在开发和便士拍卖网站,我的服务器每秒会有很多请求,有时我不需要连接,我会使用缓存。

谢谢

干杯