SpringBoot使用JPA

1、引入pom依赖


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

2、定义实体类,与数据库里的表对应:

实体类:

@Entity(name = "user")
@Table(name = "t_user")
public class User implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(name = "user_name")
    private String userName;

    private Integer sex;

    private String note;

    // getter() and setter()...
}

数据库表:


注释:

  • @Table指定对应数据库的表名
  • @Id表示该属性为数据表主键
  • @GeneratedValue表示生成主键的策略,这里依赖数据库递增策略
  • @Column标注属性名与数据库的字段名对应。

3、定义JPA接口

@Repository
public interface JpaUserRepository extends JpaRepository {
}

该接口不需要实现类,Spring会根据JPA接口规范帮我们实现。

4、定义Controller

@Controller
@RequestMapping(value = "/")
@Slf4j
public class UserController {

    @Autowired
    private JpaUserRepository jpaUserRepository;

    @GetMapping("/getUser")
    public Object findUserById(Long id) {
        return jpaUserRepository.findById(id).get();
    }
}

5、向SpringBoot指定扫描接口和实体类路径

@SpringBootApplication
@EnableJpaRepositories("com.example.demo.dao")
@EntityScan("com.example.demo.entity")
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

启动项目,访问controller对应的接口,即可得到从数据库读取的User值。

你可能感兴趣的:(SpringBoot使用JPA)