当前位置: 首页 > 知识库问答 >
问题:

HibernateSessionFactory的Spring Boot柄

曹兴贤
2023-03-14

有人知道如何获得由Spring Boot创建的Hibernate SessionFactory的句柄吗?

共有1个答案

冷夜洛
2023-03-14

您可以通过以下方式完成:

SessionFactory sessionFactory = 
    entityManagerFactory.unwrap(SessionFactory.class);

其中entityManagerFactory是JPAentityManagerFactory

package net.andreaskluth.hibernatesample;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@Component
public class SomeService {

  private SessionFactory hibernateFactory;

  @Autowired
  public SomeService(EntityManagerFactory factory) {
    if(factory.unwrap(SessionFactory.class) == null){
      throw new NullPointerException("factory is not a hibernate factory");
    }
    this.hibernateFactory = factory.unwrap(SessionFactory.class);
  }

}
 类似资料:
  • 我尝试将Spring Boot与HikariDataSource配合使用,但出现了错误。断管怎么配置比较好还是用c3p0比较好?我正在使用这个配置 我使用: 和 springboot 版本 1.4.2.RELEASE

  • 已与目标VM断开连接,地址:“javadeBug”,传输:“共享内存” 进程已完成,退出代码为0 PessoAcontroller:

  • 使用 springboot 改造 jeesite,只保留最简单的系统配置 。 介绍 1、运行主类,登录  admin/admin com.wolfking.jeesite.WolfkingJeesiteDriver 2、砍掉了所有的冗余的东西,只保留系统配置,数据库脚本 wolfking-jeesite.sql 3、使用 springboot 集成,使用 HikariDataSource 数据源

  • WeChat-SpringBoot 是使用 Spring Boot 开发的微信开发后端脚手架

  • 生产制造执行系统,基于 springBoot 开发。 精益生产+ISA-95 标准。 结合 MESA 战略计划方向设计框架。

  • 一个简单便捷的基于springboot+RabbitMQ中间件实现的RPC调用框架 远程调用过程如下 首先:消费者和生产者spring容器初始化的时候,会根据配置的的api在RabbitMQ上建立相应的队列,消费者会监听相关队列 1)生产者(client)调用以本地调用方式调用服务; 2)client 接收到调用后通过Hessian将方法、参数等组装成能够进行网络传输的消息体; 3)client