JPA配置关系数据表-联合主键配置
程序员文章站
2022-04-24 22:26:17
...
JPA配置:联合主键
实体类-副:
/**
* 复合主键
*/
@Embeddable
public class UserRolesKey implements Serializable {
/** 用户id */
private String userId ;
/** 角色Id */
private String roleId ;
/** 组织机构Id */
private String grantOrgId;
// getter() setter()
}
实体类-主:
/**
* 用户角色关系
*/
@Entity
@Table(name="user_roles")
public class UserRoleEntity implements Serializable {
// 复合主键
@EmbeddedId
private UserRolesKey id;
/** 授权人 */
private String createUserId ;
// getter() setter()
}
Dao:
/**
* 用户角色维护
*/
@Repository
public interface UserRolesDao extends JpaRepository<UserRoleEntity,String> {
}
Service 业务逻辑层调用
{
UserRoleEntity urEntity = new UserRoleEntity();
UserRolesKey urKey = new UserRolesKey();
// 复合主键
urKey.setRoleId(roleId);
urKey.setUserId(userId);
urKey.setGrantOrgId(orgId);
// 主类
urEntity.setId(urKey);
urEntity.setCreateUserId(userId);
//添加记录
userRolesDao.save(urEntity);
// flush()方法,不加会报错
userRolesDao.flush();
// 删除记录
userRolesDao.delete(urEntity);
}
上一篇: java面试Socket相关
下一篇: 实现垂直居中布局