我有一个名为EmployeeDepartment的实体,如下所示
@IdClass(EmployeeDepartmentPK.class) //EmployeeDepartmentPK is a serializeable object
@Entity
EmployeeDepartment{
@Id
private String employeeID;
@Id
private String departmentCode;
---- Getters, Setters and other props/columns
}
Run Code Online (Sandbox Code Playgroud)
我有一个Spring Data Repository,如下所示
@RepositoryRestResource(....)
public interface IEmployeeDepartmentRepository extends PagingAndSortingRepository<EmployeeDepartment, EmployeeDepartmentPK> {
}
Run Code Online (Sandbox Code Playgroud)
此外,我有一个注册转换器从String转换为EmployeeDepartmentPK.
现在,对于一个由ID employeeID ="abc123"和departmentCode ="JBG"限定的实体,我希望在调用SDR接口时使用的ID是abc123_JBG.例如,http:// localhost/EmployeeDepartment/abc123_JBG应该获取结果,事实确实如此.
但是,当我尝试使用PUT保存实体时,Spring Data Commons的BasicPersistentEntity类中可用的ID属性的departmentCode值为abc123_JBG.这是错的.我不确定这是否是预期的行为.
请帮忙.
谢谢!