hibernate save
Date date=new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd-hh-mm-ss");
java.sql.Date d=new java.sql.Date(date.getTime());
if(planPriceList != null && planPriceList.size() != 0 && param.getTimeType().equals("1")){
for(int i = 0; i<planPriceList.size(); i++){
param.setAmt(planPriceList.get(i));
Integer j = i + 1;
param.setMonthValue(j.toString());
param.setCreateDate(d);
Param saveParam = new Param();
saveParam.setActiveFlag(param.getActiveFlag());
saveParam.setAmt(param.getAmt());
saveParam.setAuditor(param.getAuditor());
saveParam.setBusinessType(param.getBusinessType());
saveParam.setCompanyType(param.getCompanyType());
saveParam.setCreateDate(d);
saveParam.setFourSId(param.getFourSId());
saveParam.setGroupId(param.getGroupId());
saveParam.setMonthValue(param.getMonthValue());
saveParam.setOperator(param.getOperator());
saveParam.setTimeType(param.getTimeType());
saveParam.setUpdateDate(param.getUpdateDate());
saveParam.setYearValue(param.getYearValue());
super.save(saveParam);
}
}
else if(param.getTimeType().equals("0") && param.getAmt() != null){
for(int i=0; i<12; i++){
Param saveParam = new Param();
param.setCreateDate(d);
saveParam.setActiveFlag(param.getActiveFlag());
saveParam.setAmt(param.getAmt());
saveParam.setAuditor(param.getAuditor());
saveParam.setBusinessType(param.getBusinessType());
saveParam.setCompanyType(param.getCompanyType());
saveParam.setCreateDate(param.getCreateDate());
saveParam.setFourSId(param.getFourSId());
saveParam.setGroupId(param.getGroupId());
saveParam.setMonthValue(param.getMonthValue());
saveParam.setOperator(param.getOperator());
saveParam.setTimeType(param.getTimeType());
saveParam.setUpdateDate(param.getUpdateDate());
saveParam.setYearValue(param.getYearValue());
super.save(saveParam);
}
}
}
这是 dao层的 我从页面获取一个对象和一个list<Double> list里面存储了12个值 对应与对象中的
每个月的计划金额 一共有十二个月 所以我要存储12次
可是 如果 我直接在for循环里写
param.setAmt(planPriceList.get(i)); 然后save(param); 数据库中保存的只有一条记录
除非再 new 个新的对象一一赋值 才可以
我试过 把param。id 清空 但是没用 还是只保存一次
为什么 这个应该是关于 hibernate的原理 我不明白
相关推荐
Hibernate save persist merge探究
NULL 博文链接:https://dreamzhong.iteye.com/blog/1218885
Hibernate Save方法的基本介绍
Hibernate的Save方法是将Java对象保存到数据库中的基本方法之一。在保存过程中,Hibernate会自动执行必要的SQL语句,将对象的属性映射到相应的数据库表中的列。在保存过程中,Hibernate会自动执行必要的SQL语句,将对象的属性映射到相应的数据库表的列。需要注意的是,保存对象到数据库时,Hibernate会自动生成INSERT语句,并将对象的属性值插入到对应的表中。需要注意的是,保存对象到数据库时,Hibernate会自动生成INSERT语句,并将对象的属性值插入到对应的表中。
模拟hibernate的session.save()功能
这个资源对应的是我的博客里头的hibernate模拟程序的源码
Hibernate save() saveorupdate()的用法第1/2页
一个PO有三种状态: 1、未被持久化的VO 此时就是一个内存对象VO,由JVM管理生命周期 2、已被持久化的PO,并且在Session生命周期内 此时映射数据库数据,由数据库管理生命周期 3、曾被持久化过,但现在和Session已经detached了,以VO的身份在运行 这种和Session已经detached的PO还能够进入另一个Session,继续进行PO状态管理,此时它就成为PO的第二种状态了。这种PO实际上是跨了Session进行了状态维护的。 在传统的JDO1.x中,PO只有前面两种状态,一个PO一旦脱离PM,就丧失了状态了,不再和数据库数据关联,成为一个纯粹的内存VO,它即使进入一
解决Hibernate4执行save()或update()无效问题的方法
主要为大家详细介绍了解决Hibernate4执行save()或update()无效问题的方法,感兴趣的小伙伴们可以参考一下


Web 开发
