如何从html表单向Spring控制器传递空值
在我的应用程序中,我有一个表单,用户可以在其中插入或不插入值;因此,这些值是可选的(最终,用户无法插入值并在SQL端获得如何从html表单向Spring控制器传递空值,spring,spring-mvc,forms,jdbctemplate,Spring,Spring Mvc,Forms,Jdbctemplate,在我的应用程序中,我有一个表单,用户可以在其中插入或不插入值;因此,这些值是可选的(最终,用户无法插入值并在SQL端获得select*) 为此,我使用了Spring JdbcTemplates和语法: (? is null or name_variable = ?) 在测试之后,它可以在后端工作 问题是,使用这种语法,如果我想允许用户不在表单中插入值x,我必须将null值传递给控制器(使用此语法的DAO方法)。如果我的表单中有as输入类型,text,如何执行此操作?对于表单中要传递空值的特定字
select*
)
为此,我使用了Spring JdbcTemplates和语法:
(? is null or name_variable = ?)
在测试之后,它可以在后端工作
问题是,使用这种语法,如果我想允许用户不在表单中插入值x,我必须将
null
值传递给控制器(使用此语法的DAO方法)。如果我的表单中有as输入类型,text
,如何执行此操作?对于表单中要传递空值的特定字段,请使用If-else和toString()在控制器端进行检查
如果存在值x,则将null
传递到数据库。使用此代码解决:
@InitBinder
public void initBinder(WebDataBinder binder) {
binder.registerCustomEditor(String.class, new StringTrimmerEditor(true));
}
你不能简单地将空的
“
输入文本值映射为控制器中的null
吗?嗯,那么,如果我有一个输入值“Info”,id(以“infoname”的形式),在我的控制器中,我有:@RequestParam(name=“infoname”,required=false)字符串信息我必须如何创建控件?我只是希望我理解了你的意思:执行类似if(name.toString()=“info”){name=”“;}