注入employeeService ,new一个employee对象,从表单获得数据填充这个对象, 底层执行的方法时 getSession().saveorUpdate(), 由于表单数据只填充了15个要修改的数据,所以其它5个字段为空,调用saveorUpdate()后数据为空。先从数据库取得当前要修改的对象 再从表单获得数据set进去。但是提示 two open sessions 错误。
从数据库获取对象时打开了session,而你存数据时使用另外一个session,才提示这个错误。
方法一: 获取对象后关闭session, 修改时再打开session。
方法二: 获取对象和修改对象使用同一个session。个人觉得第二个比较好!
从数据库获取对象时打开了session,而你存数据时使用另外一个session,才提示这个错误。
方法一: 获取对象后关闭session, 修改时再打开session。
方法二: 获取对象和修改对象使用同一个session。个人觉得第二个比较好!
解决方案 »
- 我想问个关于hibernate的问题,求解答,hql相关的
- 怎样在web.xml中设置session的失效时间,在应用程序中又要怎样判断?
- Silverlight跨域访问Weblogic上部署的WebService发生问题
- 我连接Oracle的时候出现了这个异常是怎么回事呀
- 菜鸟发问
- 问个关于java和cpp通信的问题
- struts in action中的第一个例子, servelt.getDebug()这个方法找不到啊?
- 需要把HttpRequest保存到数据库里的一个字段里,求解
- 一个问题,要做一个j2ee的项目,linux下选用的服务器是apache 1.3.20+tomcat 4.0,不知道这个事怎么支持j2ee的
- 问一下java连接mysql的问题
- 这是我对Hibernate中inverse属性的理解,不知道,对不对~
- 如何判断是否从数据库中取到图片???
应该是申明一个employee对象,根据你要更新的employee对象的PK查出你的employee实体,
把查出的实体赋值给申明的employee对象
再把从表单获取的数据set进去。
执行saveorUpdate()。
那要看你spring里面怎么配置的了。你试试在 service中一个方法里面 查对象,并修改它。最好 上码看看。