SpringBoot—Spring Data JPA
迪丽瓦拉
2025-05-28 22:45:02
0

Spring Data JPA

JPA与Spring Data JPA

参考:https://blog.csdn.net/cd546566850/article/details/107180272/ 通过这篇文章对JPA和Spring Data JPA 有最直观的了解
在这里插入图片描述

在这里插入图片描述

Springboot整合Spring Data JPA

  1. pom.xml

4.0.0org.springframework.bootspring-boot-starter-parent2.7.9 com.liwangjpa0.0.1-SNAPSHOTjpaDemo project for Spring Boot1.8org.springframework.bootspring-boot-starter-data-jpaorg.springframework.bootspring-boot-starter-webcom.mysqlmysql-connector-jruntimeorg.springframework.bootspring-boot-starter-testtestorg.springframework.bootspring-boot-maven-plugin
  1. application.properties
spring.datasource.url=jdbc:mysql:///test2?useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=root# 使用的数据库类型
spring.jpa.database=mysql
spring.jpa.database-platform=mysql
# 显示sql
spring.jpa.show-sql=true
# 当在java实体类中新增了一个字段,在应用重新运行时,会将字段添加到数据库表中的新列,但不会移除先前存在的列或约束
spring.jpa.hibernate.ddl-auto=update
# 配置数据库方言,默认创建数据库表使用的是myisam引擎,指定方言是为了使用innodb引擎
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect
  1. 创建 Book 类
@Entity(name = "t_book")
public class Book {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Long id;private String name;private String author;@Overridepublic String toString() {return "Book{" +"id=" + id +", name='" + name + '\'' +", author='" + author + '\'' +'}';}public Long getId() {return id;}public void setId(Long id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAuthor() {return author;}public void setAuthor(String author) {this.author = author;}
}
  1. 这时试运行项目,查看数据库 test2 下是否生成 book 表
    在这里插入图片描述
    运行成功,创建表
    在这里插入图片描述
  2. 创建BookDao 接口,实现JpaRepository
public interface BookDao extends JpaRepository {
}
  1. 测试保存数据到数据库
@SpringBootTest
class JpaApplicationTests {@AutowiredBookDao bookDao;@Testvoid contextLoads() {Book b = new Book();b.setName("三国演义");b.setAuthor("罗贯中");bookDao.save(b);}}

刷新数据表
在这里插入图片描述
7. 测试查询、删除、更新
在这里插入图片描述

	@Testvoid test01() {// 查询所有数据,现在数据库添加多条记录List list = bookDao.findAll();System.out.println("list = " + list);System.out.println("-------------------");// 根据id 查询Optional book = bookDao.findById(3L);System.out.println("book = " + book);}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. 测试分页
	@Testvoid test03() {// 分页查询页码从0 开始PageRequest pageRequest = PageRequest.of(0, 3, Sort.by(Sort.Order.asc("id")));Page page = bookDao.findAll(pageRequest);System.out.println("总记录数 = " + page.getTotalElements());System.out.println("总页数 = " + page.getTotalPages());System.out.println("查到的数据 = " + page.getContent());}

在这里插入图片描述
在这里插入图片描述

到这,Spring Data Jpa 的简单使用就结束了了。后续继续更新自定义数据操作的使用。

可以看看我的个人博客:
网站:https://www.fuzm.wang / https://liwangc.gitee.io
—————————————————————————

作为初学者,很多知识都没有掌握,见谅,如有错误请指出,以期进步,感谢!。后续有新的学习,继续补充上来。

相关内容