Hibernate如何从session.get查询生成sql字符串

时间:2014-04-24 11:18:27

标签: java sql hibernate hibernate-criteria hibernate-session

我正在使用Hibernate 4.2.4,我很想知道Hibernate如何将session.get调用转换为最终用于从数据库中检索行的等效sql查询。我不想在控制台中记录生成的sql。我想在我的应用程序中使用相同的SQL查询。像下面的东西。

...
SessionFactory sessionFactory = configuration.buildSessionFactory(builder.buildServiceRegistry());

// I want the query string here
String query = sessionFactory.someUnknownMethod(Some Paramters);

Session session = sessionFactory.openSession();
// actual session.get query
Comment comment = (Comment) session.get(Comment.class, new Integer(1));
...

我在Criteria查询中看过这个帖子 - > How to get SQL from Hibernate Criteria API (*not* for logging)
我想知道session.get类型查询是否存在类似的过程。

我也见过这个帖子 - > get SQL from hibernate get
问题与我的问题完全相同,但是接受的解决方案涉及获取统计数据,根据我的理解,这些统计数据仅考虑已经执行的查询。另外,根据统计数据,我能够捕获hql / sql查询,但不能捕获session.get查询。

我想知道是否有一种方法让用户在实际的session.get被执行之前生成并使用sql(可能遵循与hibernate相同的路径)。

0 个答案:

没有答案