JPA
1)简介
2)整合SpringDataJPA
jpa-orm(Object Relational Mapping)
1、编写一个JPA实体类
//使用JPA注解配置映射关系
@Entity//告诉JPA这是一个实体类(和数据表映射的类)
@Table(name="tbl_user")//@table 来指定和那个数据表对应,如果省略就是类名小写
public class User {
@Id //标明是主键
@GeneratedValue(strategy = GenerationType.IDENTITY)//自增主键
private Integer id;
@Column(name="last_name",length = 50)//这是和数据表对应的列
private String lastName;
@Column//默认省略。列名就是属性名
private String email;
2、编写一个Dao接口来操作实体类
//继承JpaRepository来完成对数据库操作
public interface UserRepository extends JpaRepository<User,Integer> {
}
3、基本的配置
spring:
jpa:
hibernate:
#更新或者创建表结构
ddl-auto: update
#控制台显示SQL
show-sql: true
现在我们还没有在数据库新建任何表。但我们直接把程序运行起来,就可以看到已经为我们创建了这个表
我们新增一个password字段。
@Column//默认省略。列名就是属性名
private String passWord;
运行后就在库里也新增了password字段。
4、编写一个controller
@RestController
public class UserController {
@Autowired
UserRepository userRepository;
@GetMapping("/user/{id}")
public User getUser(@PathVariable("id") Integer id)
{
User user = userRepository.getOne(id);
return user;
}
@GetMapping("/user")
public User insertUser(User user)
{
User save=userRepository.save(user);
return save;
}
}
运行起来看一下。get,看到了相关的select语句