前言
这次有个需求,给项目角色创建一个模板,在数据库建表时发现,模板表template_project_role的主键需要为复合主键:
正文
这里采用@IdClass注解的方式来实现复合主键;
思路
- 编写一个复合主键类TemplateProjectRoleKey;
- 通过
@IdClass
注释在实体中标注复合主键; - 在
Repository
里标明主键为TemplateProjectRoleKey类;
实现
复合主键类
package com.tlgc.system.mvc.model.projectmanager;
import javax.persistence.Column;
import javax.persistence.Id;
public class TemplateProjectRoleKey implements java.io.Serializable {
/**构造函数,根据自己的主键修改**/
public TemplateProjectRoleKey(){
}
public TemplateProjectRoleKey(String roleId,String templateId){
this.ro