添加数据库和jpa依赖
![img_e16bcdbdfe39db888b4c0eebb5a525c6.png](https://i-blog.csdnimg.cn/blog_migrate/847130db3e8eb6bdbd7f2435ecb83843.png)
定义实体对象
我们将定义一个实体对象UserApply并将其存储到关系型数据库中,并使用JPA注解:
![img_80b49b19f834e712d304ac52b66341e1.png](https://i-blog.csdnimg.cn/blog_migrate/20f091de2dee8060122ffcfbeb8c8926.png)
id作为唯一标识符,这里用到了JPA注解
@GeneratedValue(strategy=GenerationType.IDENTITY)
表明它是一个自增字段
firstName和lastName没有任何注解,但User注解为@Entity所以它们也被映射为同名的字段
创建对象访问方法
Spring Data JPA项目使用JPA注解将Java对象转化为关系型数据库中的记录。它最大的特点是能够自动创建数据访问对象的实现,例如现在我们创建一个访问对象的接口:
![img_f80a41573870fa98aba612af5456a974.png](https://i-blog.csdnimg.cn/blog_migrate/7e02d21f09d718356cbfc6839548125d.png)
UserRepository继承了Spring Data JPA中的JpaRepository
![img_40545afc9cf447500012e06f9820ddae.png](https://i-blog.csdnimg.cn/blog_migrate/4aac08c93d30c077f7f850e732235dca.png)
已经包含了保存(save()),删除(delete()),查询(findOne(), findAll())等预定义方法,同时开发者还能够根据命名约定来扩展,findByLastName(String lastName)实际上等价于SQL语句select * from user where lastName=?。
在接口中定义这个方法后,无需实现它,Spring Data JPA会根据方法的名字自动实现这个方法,很方便吧!
总结
我们使用Spring Data JPA对关系型数据库进行访问,在实现过程中借助Spring Boot框架很轻易的配置了Spring Data JPA。这让我们更加专注于业务并且能够编写出质量更高、可维护性更好的代码。