我使用带有休眠验证器的spring mvc。我的问题是,当整数值为零时,它将在我的文本框中显示0。我只想显示空字符串。怎么做?
在我的JSP中:
<form:form action ="processForm" modelAttribute="customer" >
...
...
Free Passes: <form:input path="freePasses"/>
<form:errors path="freePasses" cssClass="error" />
<input type="submit" value="submit" />
</form:form>
我的客户类别:
public class Customer {
...
private int freePasses;
}
我的控制器
public class CustomerController {
@RequestMapping("/showForm")
public String showForm(Model model) {
model.addAttribute("customer",new Customer());
return "customer-form";
}
@RequestMapping("/processForm")
public String processForm(@Valid @ModelAttribute("customer") Customer cust,
BindingResult result) {
if(result.hasErrors()) {
return "customer-form";
} else {
return "customer-confirmation";
}
}
}
加载表单时,我想在“免费通过”字段中看到不为零的空白。
答案 0 :(得分:0)
如果条件标签,请使用<c:if>
JSP JSTL(java标准标签库),并检查条件的值为0,并将值设置为“”空字符串,如下所示。
<c:if test = "${customer.freePasses == 0}">
//put text area with empty string
</c:if>
答案 1 :(得分:0)
您使用的是原始类型int
,默认类型为0。
private int freePasses;
我建议您使用包装器Integer
来解决您的问题。
private Integer freePasses;
注意:一旦从int更改为Integer,请不要忘记重新生成getter / setter。