使用ORM工具来映射实体类和数据库表之间的关系,避免手动在应用程序和数据库中复制模型。
示例代码(使用Java和Hibernate ORM):
定义实体类:
@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "user_name")
private String userName;
@Column(name = "password_hash")
private String passwordHash;
// 省略其它属性和方法
}
定义Repository:
@Repository
public class UserRepository {
@Autowired
private SessionFactory sessionFactory;
public User findById(Long id) {
return sessionFactory.getCurrentSession().get(User.class, id);
}
// 省略其它数据访问方法
}
使用Repository:
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserRepository userRepository;
@GetMapping("/{id}")
public User getUser(@PathVariable Long id) {
return userRepository.findById(id);
}
// 省略其它控制器方法
}
下一篇:避免应用程序属性对Okta的依赖