我想使用 Spring 存储库从 LDAP 检索多值属性。我的实际代码是这样的:@Entry(objectClasses = { "class1", "class2" }, base="ou=my_base_dn")public final class MyLdapEntity { @Id private Name dn; @Attribute(name="name") private String name; @Attribute(name="sureName") private String sureName; @Attribute(name="multiValuedAttr") private String[] multiValuedAttr;}和我的存储库类:@Repositorypublic interface MyLdapRepository extends CrudRepository<MyLdapEntity, Long> {}当我尝试获取多值属性时,我只能使用第一个条目来完成。有什么办法可以用注释来完成这个映射吗?
1 回答
qq_笑_17
TA贡献1818条经验 获得超7个赞
解决了。
与其声明multiValuedAttrwithString[]它必须定义为List<String>
@Entry(objectClasses = { "class1", "class2" }, base="ou=my_base_dn")
public final class MyLdapEntity {
@Id
private Name dn;
@Attribute(name="name")
private String name;
@Attribute(name="sureName")
private String sureName;
@Attribute(name="multiValuedAttr")
private String[] multiValuedAttr;
}
也许原因List<String>有方法添加元素而不显式增加数组大小。
添加回答
举报
0/150
提交
取消