使用Hibernate时,通过前台提交信息构建的实体bean,如何直接存入数据库?【注:常规总是先通过标识get出实体bean,然后在此基础上为属性set新值,而后更新。能不能实现这种方式:前台bean有合法标识,其属性可以是不完全的,即只有要修改的属性,而直接把bean存入?】请求帮助,SOS。
你只能根据id得到一个持久化层,然后对这个持久化对象进行属性的赋值,不然按你那种不完全赋值的方法是会插入空值到数据库的
如果只想更新部分属性就只有用hql语句来update
可以直接保存,但对象中的属性中若有一些属性是另外的对象时就需要做一些处理了。
objectA a {
int i;
ObjectB b;
}
保存a的话,需要
b = dao.get(a.getB().getId());
a.setB(b);
对于对象属性我们经常是这么处理了,不然会hibernate会报错。尤其是属性b使用延迟加载方式的时候。若无对象属性完全可以直接保存。试试吧。