欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SpringData关键字查询实现方法详解

程序员文章站 2022-09-16 22:19:05
一、创建项目并导入jap相关依赖1.1 org.springframework.boot <...

一、创建项目并导入jap相关依赖

1.1

<dependency>
  <groupid>org.springframework.boot</groupid>
  <artifactid>spring-boot-starter-data-jpa</artifactid>
</dependency>
<dependency>
  <groupid>com.alibaba</groupid>
  <artifactid>druid-spring-boot-starter</artifactid>
  <version>1.1.10</version>
</dependency>
<dependency>
  <groupid>mysql</groupid>
  <artifactid>mysql-connector-java</artifactid>
  <scope>runtime</scope>
  <version>5.1.27</version>
</dependency>

1.2

 application.perteries配置

spring.datasource.type=com.alibaba.druid.pool.druiddatasource

spring.datasource.username=root

spring.datasource.password=123

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/jpa?useunicode=true&characterencoding=utf8&usessl=true&servertimezone=gmt

#将sql语句展示到控制台

spring.jpa.show-sql=true

spring.jpa.database=mysql

spring.jpa.database-platform=mysql

#ddl-auto:create----每次运行该程序,没有表格会新建表格,表内有数据会清空

#ddl-auto:create-drop----每次程序结束的时候会清空表

#ddl-auto:update----每次运行程序,没有表格会新建表格,表内有数据不会清空,只会更新

#ddl-auto:validate----运行程序会校验数据与数据库的字段类型是否相同,不同会报错

spring.jpa.hibernate.ddl-auto=update

#采用哪种方言

spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.mysql57dialect

二、关键字查询

1.1

创建

SpringData关键字查询实现方法详解

SpringData关键字查询实现方法详解

@entity

将实体类book创建成表,默认不指定就是类名,name指定表名

@id

主键

@generatedvalue

自增长 

1.2

创建

SpringData关键字查询实现方法详解

SpringData关键字查询实现方法详解

1.3

jap的功能函数

SpringData关键字查询实现方法详解

SpringData关键字查询实现方法详解

在这里定义你的查询规则就ok了

1.3.1

保存

SpringData关键字查询实现方法详解

1.3.2

修改

SpringData关键字查询实现方法详解

注:如果数据库中没有该数据则是添加,存在则是修改 

1.3.3

删除

SpringData关键字查询实现方法详解

1.3.4

查询太多就举例分页把

SpringData关键字查询实现方法详解

三、自定义查询

同样还是在bookdao里写

SpringData关键字查询实现方法详解

注:nativequery=true代表使用sql语句查询,默认使用jpa ql查询

SpringData关键字查询实现方法详解

四、自定义添加修改

  bookdao类

SpringData关键字查询实现方法详解

注:@query @modifying @transactional三个注解一个不能少

@modifying

对数据库修改操作

@transactional

事务

图片中的两种写法都可以,第一种顺序不能颠倒

@param不是mybatis的那个这个是jpa的

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。