jpa mysql_Spring Boot实战系列(2)数据存储之Jpa操作MySQL

快速导航

MySql

Mysql数据库这里要用到Spring-Data-Jpa,它是JPA规范下提供的Repository层的实现,可以使用Hibernate、OpenJpa等框架进行开发。关于JPA规范,它的全称Java Persistence API(Java持久化API)一个ORM规范,具体实现还是Hibernate等,JPA为我们提供了CRUD的接口。

常用方法

更多详细方法及使用参考官方文档 https://docs.spring.io/spring-data/jpa/docs/current/reference/html/

save(): 保存、更新

delete: 删除,或者deleteByProperty Property为字段属性名

findOne(): 通过id查询

findByProperty(type Property): 通过属性查询,例如表中的name字段查询,实现方式 findByName(String name)

findAll(): 查询所有数据

findAll(new PageRequest(1, 20)): 分页

添加依赖

项目根目录 pom.xml 添加依赖 spring-boot-starter-data-jpa mysql-connector-java

org.springframework.boot

spring-boot-starter-data-jpa

mysql

mysql-connector-java

修改配置文件

application.yml

mysql相关配置

datasource 数据源

driver-class-name 驱动名称

```url`` 数据库地址(hots:port/database)

username 数据库用户名

password 数据库密码

spring:

datasource:

driver-class-name: com.mysql.jdbc.Driver

url: jdbc:mysql://127.0.0.1:3306/dbUser?useUnicode=true&characterEncoding=utf-8&useSSL=true

username: root

password: 123456

jpa相关配置

hibernate: 相关配置信息有以下几种类型

ddl-auto:create: 每次运行加载不管之前是否有数据都会自动创建一个表,会造成数据丢失。

ddl-auto:update: 第一次加载会创建新的数据接口,之后只会在原有表基础之上进行迭代。

ddl-auto:validate: 验证类里面的属性与表结构是否一致。

ddl-auto:create-drop: 每次退出时删除。

ddl-auto:node: 默认什么都不做。

show-sql: 是否打印SQL,在开发时可以开启方便调试。

database: 数据库类型。

spring:

jpa:

hibernate:

ddl-auto: update

show-sql: true

database: mysql

实例

Spring-Data-Jpa实现CRUD操作

实现以下需求:

GET: 查询所有用户信息

GET: 根据年龄获取用户信息

POST: 增加用户(姓名、年龄)

PUT: 修改用户

DELETE: 删除用户

创建表

就是创建存储的User实体(User类)

是不需要手动去数据库创建表的,以下创建的User类和定义的属性会对应到数据库中的表和字段,这就需要应用jpa的特性了,看下以下注解。

@Entity: 代表此类映射为数据库的表结构

@Id: 指定一个主键

@GeneratedValue: 配置主键相关信息

Table: 使用一个特定的数据库表来保存主键

IDENTITY: 数据库自动生成

AUTO: 主键由程序控制,默认值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值