提交表单时在控制器中获取空值
Posted
技术标签:
【中文标题】提交表单时在控制器中获取空值【英文标题】:getting null value in the controller while submitting the form 【发布时间】:2015-12-28 23:18:01 【问题描述】:我在这里使用提交操作提交表单。在 Controller 中,模型对象显示空值。假设我正在使用 request.getParameter("mcodeName") - 那么我正在获得价值。当我使用 getMcode() 方法时,乳清值为空。请帮我解决这个问题。
@RequestMapping(value="/masterCode.do", method=RequestMethod.POST) 公共 ModelAndView addMasterCode(HttpServletRequest req, HttpServletResponse res, @ModelAttribute("masterCodeBean") MasterCodeBean mCodeBeanObj) 日志信息(“”); 字符串 mCodeName = mCodeBeanObj.getMaster_code_name(); //获取null 字符串 mCodeStatus = mCodeBeanObj.isActive(); //获取null System.out.println("请求代码" + req.getParameter("mCodeName")); System.out.println("请求激活:" + req.getParameter("激活")); ModelAndView 模型 = null; 尝试 model = new ModelAndView("masterCode"); codeDelegate.addMasterCodeDetails(mCodeBeanObj); model.addObject("masterCodeBean", mCodeBeanObj); catch(异常 e) System.out.println(EXCEP_ERR); 返回模型;我的表单绑定模型属性如
【问题讨论】:
选择状态: 【参考方案1】:
抱歉,我没有足够的声望来发表评论。所以我在这里写答案。
<form:form id="mCodeForm" method="post" action="masterCode.do" modelAttribute="masterCodeBean">
Enter Product Name : <form:input id="mCodeName" path="mCodeName" /> <br>
Select Status : <form:select id="active" path="isActive">
<form:option value="0" label="Active" />
<form:option value="1" label="De-Active" />
</form:select>
<span> <input type="submit" value="Save" id="save_mstCdeMgr"/> </span> </form:form>
setter 和 getter 应该遵循一些代码约定。
假设如果你有mCodeName
作为类变量,那么getMCodeName()
和setMCodeName(String mCodeName)
。
当您使用表单标记时,路径只不过是modelAttribute
字段名称。无需编写 id 和 name 属性,因为它在运行时生成它们。某些客户端验证或 javascript 相关目的需要该 id。
<form:input id="mCodeName" path="mCodeName" />
在运行时转换为 html 代码为<input type="text" id="mCodeName" name="mCodeName" />
试试这个,让我知道。
【讨论】:
以上是关于提交表单时在控制器中获取空值的主要内容,如果未能解决你的问题,请参考以下文章