当前位置: 代码迷 >> 综合 >> 在SpringBoot项目中使用JPA实现简单的数据库操作
  详细解决方案

在SpringBoot项目中使用JPA实现简单的数据库操作

热度:82   发布时间:2024-02-01 22:35:28.0

集成准备

首先确定使用SpringData Jpa,那么集成工作如下

1. pom文件引入依赖

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.3.RELEASE</version><relativePath/>
</parent><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.6</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency>
</dependencies>

2. application.yml文件中加入如下

spring:datasource:url: jdbc:mysql://localhost:3306/db01?characterEncoding=utf8&useSSL=false&rewriteBatchedStatements=trueusername: rootpassword: 123456driver-class-name: com.mysql.jdbc.Driverjpa:database: mysqldatabase-platform: org.hibernate.dialect.MySQL5Dialectshow-sql: truehibernate:ddl-auto: none

其中hibernate.ddl-auto的值的含义如下

  • create:每次运行程序时,都会重新创建表,故而数据会丢失
  • create-drop:每次运行程序时会先创建表结构,然后待程序结束时清空表
  • upadte:每次运行程序,没有表时会创建表,如果对象发生改变会更新表结构,原有数据不会清空,只会更新
  • validate:运行程序会校验数据与数据库的字段类型是否相同,字段不同会报错
  • none: 禁用DDL处理

只要这这两步,SpringData Jpa就集成到SpringBoot中了,非常简单