我的User.hbm文件是这样的,
<composite-id>
<key-property name="username" type="java.lang.String">
<column name="USERNAME"></column>
</key-property>
<key-property name="location" type="java.lang.String">
<column name="LOCATION"></column>
</key-property>
</composite-id>
用户类就是这样,
private String username;
private String location;
getter和setter
我已经覆盖了hashcode和equals方法。
在我的mvc表单控制器中,我正在尝试显示用户相关数据
我的jsp页面
<div>
<appfuse:label key="user.name" styleClass="desc"/>
<form:input path="username" id="tag" cssClass="text medium" cssErrorClass="text medium error"/>
</div>
我的表单controller.class
@RequestMapping(method = RequestMethod.POST)
public String onSubmit(User user, BindingResult errors,
HttpServletRequest request, HttpServletResponse response) throws Exception {
LOG.debug("entering 'onSubmit' method ...");
/////user.getUsername
}
我按表格数据提交后,会被添加到用户名
如果我尝试打印user.getUsername,则打印名称,例如:,hello。
任何人都可以解释为什么会发生这种情况如何解决它。 它与复合ID有关吗?
答案 0 :(得分:1)
答案 1 :(得分:0)
<form:hidden path="userName"/>
<div>
<appfuse:label key="user.name" styleClass="desc"/>
<form:input path="username" id="tag" cssClass="text medium" cssErrorClass="text medium error"/>
</div>
我删除了隐藏的已解决的问题