我正在使用第三方库,其中包含我希望能够通过 Spring(3.2 版)表单编辑的对象。问题在于该对象不使用 Java bean 命名约定,因为在某些情况下属性可能是动态的。相反,对象具有类似object.getAttr("attribute_name")
和的方法object.setAttr("attribute_name", value)
。我很容易编写 BeanWrapper 的实现来包装这种类型的对象,因为有一些方法可以查询哪些属性可用等。
我也不需要自定义编辑器,因为属性大多是内置类型。我所需要的只是一种自定义数据绑定的方法或找到一些其他方法来插入我的自定义 BeanWrapper,以便 Spring 的表单标记在绑定表单值时知道如何找到对象上的属性。看起来这应该相当容易(这就是为什么 BeanWrapper 是一个接口,对吧?)但我只是没有看到它......