一、创建项目并导入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
创建
?
?
?
?
?
?
@Entity |
将实体类Book创建成表,默认不指定就是类名,name指定表名 |
@ID |
主键 |
@GeneratedValue |
自增长 |
?
?
1.2
?
?
创建
?
?
?
?
?
?
?
?
?
?
1.3
JAP的功能函数
?
?
?
?
在这里定义你的查询规则就ok了
?
?
?
?
?
?
1.3.1
保存
1.3.2
修改
注:如果数据库中没有该数据则是添加,存在则是修改
?
?
1.3.3
删除
?
?
1.3.4
?
?
查询太多就举例分页把
?
?
?
?
?
?
?
?
三、自定义查询
?
?
同样还是在BookDao里写
?
?
注:nativeQuery=true代表使用sql语句查询,默认使用JPA ql查询
?
?
?
?
?
?
?
?
?
?
四、自定义添加修改
?
?
BookDao类
?
?
注:@Query @Modifying @Transactional三个注解一个不能少
?
?
@Modifying |
对数据库修改操作 |
@Transactional |
事务 |
?
?
图片中的两种写法都可以,第一种顺序不能颠倒
@Param不是mybatis的那个这个是jpa的
原文地址:https://www.cnblogs.com/fernfei/p/12113045.html