前言
接上章,springboot-jpa-atomikos多数据源分布式事务(https://www.jianshu.com/p/3f7bbbd9fb35)
细心的同学肯定发现了,我们至今为止的案例基本上所有的配置都只有application.yml一个文件,为何上章多了一个hibernate.properties文件,此文件是干啥的? 能否统一到application.yml中去。
原因
先说明下博主的环境
springboot2.1.3 release
mysql 5.7
好吧,博主解释下,关于hibernate.properties这个配置文件,是为了解决JPA自动生成表引擎为myisam的,熟悉mysql的都知道,myisam引擎并不支持事务,只有innodb引擎才支持事务的处理。为了解决JPA自动生成的表为myisam引擎,博主整整花了半个下午,是的,整个互联网充斥着复制粘贴的过时解决方案。
形如这样的
让你在application.properties中
加上
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
或者加上
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL57InnoDBDialect
当然还有其它乱七八糟的解决方案,博主不一一罗列了,博主为了解决jpa自动生成的表为myisam的问题,逐一试了个遍,结果根本解决不了问题,最后在官方文档里发现,原来,在新版的springboot里,形如MySQLInnoDBDialect已经被弃用了,像博主使用的是当前最新版的2.1.3 release使用这种方式显然是做无用功。
解决方案
新增 hibernate.properties
hibernate.dialect.storage_engine=innodb
解决问题
总结
还是官方文档靠谱。
请关注我的订阅号

转载于:https://my.oschina.net/u/3066875/blog/3055191
分享到:
相关推荐
MyBatis Plus的配置主要是为了启用自动建表功能。在主配置类(例如`Application.java`)中,我们需要添加一个配置bean,开启实体扫描和自动创建表。 ```java @Configuration public class MyBatisPlusConfig { @...
课程内容在以往SpringBoot案例课程之上,再次加深了难度和深度,直接对标一线大厂的高级应用实践。课程围绕着SpringBoot开发实践和SpringBoot高级应用两个主题展开,是真正意义上的大厂级开发技术,同时技术拥有很强...
SpringBoot整合JPA实现自动创建数据库表自动建表,JPA逆向生成数据库表 运行环境 jdk8+tomcat9+mysql+IntelliJ IDEA+maven 项目技术(必填) springboot+jpa 数据库文件(可选) 新建一个test的数据库即可,表在...
SpringBoot的核心特性包括自动配置、内嵌Web服务器(如Tomcat)、健康检查和Actuator等。在这个项目中,SpringBoot作为基础架构层,为应用提供了一个便捷的运行环境,减少了繁琐的配置工作。 接着,JPA(Java ...
个人博客系统(SpringBoot+jpa).zip个人博客系统(SpringBoot+jpa).zip个人博客系统(SpringBoot+jpa).zip个人博客系统(SpringBoot+jpa).zip个人博客系统(SpringBoot+jpa).zip个人博客系统(SpringBoot+jpa)...
这两个模块的 jar 文件,`spring-data-commons-1.7.2.RELEASE.jar` 和 `spring-data-jpa-1.5.2.RELEASE.jar`,包含了它们各自的功能实现和依赖。在实际项目中,将这些 jar 文件添加到类路径,就可以利用 Spring Data...
SpringBoot会自动检测数据源,并根据配置自动配置JPA。开发者可以通过注解如`@Entity`定义实体类,`@Table`指定对应的数据库表,`@Id`标记主键,以及`@Column`定义字段等。 **权限控制** 在SpringBoot中,权限控制...
使用SpringBoot-JPA进行自定义保存及批量保存功能 使用SpringBoot-JPA进行自定义保存及批量保存功能是指在Spring Boot应用程序中使用JPA(Java Persistence API)来实现自定义的保存和批量保存功能。JPA是一个Java ...
内容概要:该项目为旅游网站,主要编程语言为java,主要框架为springboot-jpa-thmleaf。 适用人群:已工作或未工作的软件开发人员。 使用场景及目标:适合研究学习使用,以及项目初期快速搭建脚手架。 其他说明:暂...
Spring Boot的核心特性包括自动配置、起步依赖、内嵌Web服务器等,使得创建独立的、生产级别的基于Spring的应用变得简单。 Spring Data JPA则是Spring框架的一部分,用于简化JPA(Java Persistence API)的使用。...
SpringBoot集成了众多优秀组件,如Spring MVC、Spring Data JPA、Thymeleaf等,大大减少了开发者配置的工作量,提高了开发效率。 Vue.js,作为一个轻量级的前端JavaScript框架,因其易学易用、性能优秀、社区活跃等...
标题“springboot-jpa加上jdbctemple”指的是在Spring Boot项目中同时使用JPA(Java Persistence API)和JdbcTemplate的技术整合。这是一个常见的后端开发场景,涉及到Spring Boot的数据库访问层的构建,旨在提供...
这样,Spring Data JPA 会自动为我们生成 CRUD 方法,以及 `findByEmail` 这样的查询方法。 5. **Service 和 Controller**:在 Service 层,我们可以注入 Repository 实例,然后调用其方法进行业务处理。在 ...
Spring Boot通过自动配置,使得只需在项目中引入相应的依赖,即可自动配置好JPA的数据源、实体管理工厂、事务管理器等核心组件,极大地提高了开发效率。 在Spring Boot中,我们可以通过以下步骤来设置JPA: 1. ...
标题中的"springboot-jsp-jpa.7z"暗示了这是一个使用Spring Boot框架与JSP(JavaServer Pages)和JPA(Java Persistence API)技术构建的项目。这个压缩包文件很可能是为了帮助初学者理解如何在Spring Boot环境中...
- 自动配置:SpringBoot会根据项目中的依赖自动配置相关的Bean。 - 内嵌Servlet容器:如Tomcat、Jetty等,无需额外的服务器部署。 - Starter POMs:预定义的Maven或Gradle依赖集合,简化构建过程。 - 命令行工具...
首先,Spring Boot是一个基于Spring框架的快速开发工具,它通过预配置的依赖和自动配置功能,极大地简化了Spring应用的搭建和开发流程。在Spring Boot项目中,我们可以直接添加所需模块的starter,如`spring-boot-...
SpringBoot整合JPA实现自动创建数据库表自动建表,JPA逆向生成数据库表 运行环境 jdk8+tomcat9+mysql+IntelliJ IDEA+maven 项目技术(必填) springboot+jpa 数据库文件(可选) 新建一个test的数据库即可,表在...
通常包含`@SpringBootApplication`注解,这是Spring Boot应用的入口,它集成了Spring的`@Configuration`、`@EnableAutoConfiguration`和`@ComponentScan`三个注解,实现了自动配置和组件扫描。 接着,Web层是Spring...
hibernate-jpa-2.0-api-1.0.1.Final.jar