0
@豆子public SessionFactory sessionFactor(){SessionFactory sessionFactor;配置配置=新配置();HikariConfig HikariConfig=新的HikariConfig();hikariConfig.setDriverClassName(“com.mysql.cj.jdbc.Driver”);hikariConfig.setJdbcUrl(“jdbc:mysql://localhost:3306/hibernate");hikariConfig.setUsername(“root”);hikariConfig.setPassword(“密码”);hikariConfig.setMinimumIdle(5);hikariConfig.setMaximumPoolSize(20);hikariConfig.setConnectionTimeout(30000);hikariConfig.setIdleTimeout(300000);hikariConfig.setMaxLifetime(1800000);configuration.setProperty(“hibernate.current_session_context_class”,“thread”);configuration.setProperty(“hibernate.show_sql”,“true”);configuration.setProperty(“hibernate.hbm2ddl.auto”,“更新”);sessionFactory=新的LocalSessionFacctoryBuilder(新的HikariDataSource(hikariConfig)).scanPackages(“com.entity”).addProperties(configuration.getProperties)).buildSessionFactory();return sessionFactory;}
@覆盖@事务性公共void保存(HibernateTable obj){会话会话=sessionFactory.getCurrentSession();session.persist(obj);}

这是这样的错误

org.hibernate网站。HibernateException:如果没有活动事务,则调用方法“persist”无效(当前状态:not_active)

我想在使用我的自定义SessionFactory bean时利用@Transactional注释,而不依赖于存储在application.properties中的配置。

7
  • 1
    是包含节约是春豆吗?
    – 滑石
    评论 4月27日12:55
  • 1
    它是@Component类中的一个方法 评论 4月27日13:03
  • 1
    你从同一个类调用这个方法吗?
    – 滑石
    评论 4月27日13:06
  • 我正在使用commadLineRunner调用该方法 评论 4月27日13:11
  • 只是为了确定。你没有在代码中实例化这个类吗?
    – 滑石
    评论 4月27日13:12

0

重置为默认值

你的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.