application.yml jpa的配置
spring:
jpa:
hibernate: #默认使用
#更新或者创建数据表结构 好处是 没表会自动创建 更新对象时会把自增主键更新并返回
ddl-auto: update
#每次增删改查控制台显示sql
show-sql: true
entity实体
import javax.persistence.*;
///使用JPA注解配置映射关系
@Entity //告诉JPA这是个实体类
@Table(name="tbl_user")//对应数据表 如果省略 默认表名就是user
public class User {
@Id //主键
@GeneratedValue(strategy = GenerationType.IDENTITY)//自增 唯一主键
private Integer id;
@Column(name = "last_name",length = 50) //和数据表对应的一个列
private String lastName;
@Column //省略参数 列名就是属性名
private String email;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
repository
import org.springframework.data.jpa.repository.JpaRepository;
///继承JpaRepository 来完成对数据库配置
public interface UserRepository extends JpaRepository<User,Integer> {
///泛型标明 实体类型 和主键类型
}
//非常简单 可以使用默认spring的默认实现
controller
@RestController
public class UserController {
@Autowired //本身就是JPA的repository 直接注入
UserRepository userRepository;
@GetMapping("/user/{id}")
public User getUser(@PathVariable("id") Integer id){
User user = userRepository.findById(id).get();
return user;
}
@GetMapping("/user")
public User insertUser(User user) {
User save = userRepository.save(user);
return save;
}
}
测试

网友评论