java - Spring转换器将null转换为空集合

标签 java spring spring-mvc typeconverter

我有一个 spring mvc 3.0 Web 应用程序。

我正在使用 Spring 转换器(无 PropertyEditors)将 id(字符串)转换为域实体。这甚至适用于开箱即用的集合,没有任何问题。 例如,根据 HTML 多选框中的用户选择填充表单对象中的一组实体。

除非用户没有选择任何内容。然后 Form-Object 的属性 ( Set<Entity> selection ) 得到 null 。即使我在表单对象的构造函数中为该属性分配一个空集合。 每次表单对象填充不包含用户选择的 http 请求时,selectionnull 取代。但我想要一个空集合!

所以我的问题是:如何配置 Spring 转换器来填充 Collection如果转换器输入为空,则字段为空集合而不是 null? -- 或者如果输入为空,则最好完全忽略该字段。

最佳答案

您可以为 Set 创建一个自定义绑定(bind)器,但是在 getter/setter 中放置一个 if-else(检查是否为 null)可能更容易selection

关于java - Spring转换器将null转换为空集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8140064/

相关文章:

java - Google Protocol Buffer 和 UTF-16

java - 是否可以在运行时访问类型参数上的注释?

java - Spring MVC CrudRepository findByIn

java - [Spring MVC]- 如何检索 map 中的所有表单参数?

java - 在 eclipse 中找不到带有 Appium 的构造函数 AndroidDriver

java - 如何获取通过在工作目录中仅设置文件名来实例化的 File 的 File.getParent() ?

spring - 结果行: null from HibernateTemplate Find()

spring - 使用 maven 启动时如何配置 jhipster 应用程序以在不同的端口上运行

java - 创建一个扩展 Spring 标签库的自定义标签库

spring - ArtifactDescriptorException : Failed to read artifact descriptor