在form下面直接声明bean x = new bean();利用这个实体对象来获取表单数据
表单只有user和password两个元素,但是bean还有其它属性。比如name email之类的,却是""而不是null。
这样把对象传到Hibernate的criteria来查询就不凑效了,怎么解决啊?
[b]问题补充:[/b]
手动设置null不是很麻烦吗?本来用javabean来做form属性取值,那样岂不很麻烦了?
[b]问题补充:[/b]
都是未初始化状态,但是有些却又是null,同样都是string型,为什么阿?
因为html在表单中定义了 input type="text" 之后,
在表单提交时,这个field的默认值就是空字符串。
有个解决办法,就是 你定义的javabean的property get方法里判断,如果是""
则返回null
[code="java"]
class SomeBean{
private String email;
public String getEmail() {
if ("".equals(email)) return null;
return email;
}
.....
[/code]
你手动把""设置为null
bean的字段默认值是""还是null,