springboot整合JPA使用实例

一、引入jpa的依赖


    org.springframework.boot
    spring-boot-starter-data-jpa

二、定制POJO类,并指定映射到的数据表

package com.ysw.demojpa.entity;
import javax.persistence.*;
@Entity
//告诉spring这是一个实体类
@Table(name = "myUser")//指定该POJO类与数据库中的某个表映射
public class User {
    @Id//标注一个主键
    @GeneratedValue(strategy = GenerationType.IDENTITY)//主键自增长
    private Integer id;
    @Column(length = 50)//标注数据表的属性,可以用name,length等自定义
    private String name;
    @Column//默认列名就是属性名,这里也可以不用注解
    private String age;
    ...set/get方法
}

主配置文件的配置
在这里插入图片描述

这样,在工程启动的时候,就会到数据库中查找自定义的表,如果找不到或者数据不对称,就会根据POJO类中的注解信息创建一个新表

三、自定义继承JpaRespository类的接口

public interface userRepository extends JpaRepository {
    //第一个泛型是被操作的POJO类,第二个泛型是主键的类型
}

JpaRepository继承父类,默认实现上级父类的内置接口

springboot整合JPA使用实例_第1张图片

四、使用实例

@Controller
public class TestController {
      @Autowired
      userRepository userRepository;
     @ResponseBody
     @GetMapping("/get/{id}")
     public User get(@PathVariable Integer id){
         return  userRepository.findOne(id);
     }
     @GetMapping("/save")
     @ResponseBody
     public void save(User user){
         userRepository.save(user);
     }
}

在userRespository接口中虽然我们没有定义,但是它继承了父类中的诸多方法,可以直接使用

你可能感兴趣的:(springboot整合JPA使用实例)