为了账号安全,请及时绑定邮箱和手机立即绑定

Spring / Hibernate / MySQL / JPA实体未保存

Spring / Hibernate / MySQL / JPA实体未保存

呼如林 2021-04-12 16:09:27
我正在尝试配置一个应用程序以使用spring-data-jpa 1.11.13 hibernate 5.2.10 spring 4.3.11.RELEASE问题在于该实体未持久存储到MySQL数据存储中。POM依赖项<dependencies>    <dependency>        <groupId>org.springframework</groupId>        <artifactId>spring-context-support</artifactId>        <version>4.3.11.RELEASE</version>    </dependency>    <dependency>        <groupId>org.springframework</groupId>        <artifactId>spring-test</artifactId>        <version>4.3.11.RELEASE</version>    </dependency>    <dependency>        <groupId>mysql</groupId>        <artifactId>mysql-connector-java</artifactId>        <version>5.1.46</version>    </dependency>    <dependency>        <groupId>org.apache.commons</groupId>        <artifactId>commons-dbcp2</artifactId>        <version>2.1.1</version>    </dependency>    <dependency>        <groupId>org.springframework</groupId>        <artifactId>spring-tx</artifactId>        <version>4.3.11.RELEASE</version>    </dependency>    <dependency>        <groupId>junit</groupId>        <artifactId>junit</artifactId>        <version>4.12</version>    </dependency>    <dependency>        <groupId>org.hibernate</groupId>        <artifactId>hibernate-entitymanager</artifactId>        <version>5.2.10.Final</version>    </dependency>    <dependency>        <groupId>org.springframework.data</groupId>        <artifactId>spring-data-jpa</artifactId>        <version>1.11.13.RELEASE</version>    </dependency>  </dependencies>
查看完整描述

2 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

由于配置错误而导致的问题是,HibernateJpaVendorAdapter不在Spring上下文中,因此您必须像Spring Bean一样声明它,示例如下:


@Bean

public LocalContainerEntityManagerFactoryBean entityManagerFactory(DataSource dataSource) {

    LocalContainerEntityManagerFactoryBean em = new LocalContainerEntityManagerFactoryBean();

    em.setDataSource(dataSource);

    em.setPackagesToScan(new String[] { "property.entity" });

    em.setJpaVendorAdapter(vendorAdapter());

    em.setJpaProperties(additionalProperties());

    return em;

}


@Bean

public JpaVendorAdapter vendorAdapter(){

    return new HibernateJpaVendorAdapter();

}


查看完整回答
反对 回复 2021-04-21
  • 2 回答
  • 0 关注
  • 149 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信