各位大侠,本人一小菜鸟,遇到一问题,望各位指点。  有一功能模块,涉及到几个步骤。第一步,用户信息登记。第二步,分配给该用户若干设备。第三步,给分配的设备订购一些商品。  现在数据时从xls文件一行行读取。每一行就包含了上面的这些信息。xls结构如下:ID, name,deviceID,productID
1     aa     1        1
1     aa     1        2
1     aa     2        1
2     bb     3        1
2     bb     4        1
.......现在我的数据库中用户信息一张表,用户设备信息一张表,设备订购信息一张表。现在我打算分三部分写数据库,先写用户,在写设备,在写订购
可是如果在写设备过程中出现异常,这时用户信息已经写到数据库了,可设备和订购都没写入。
下一次我在重新执行时,用户写入了就不能再写入了。所以现在就是一旦中间过程出现错误,数据就不一致了。这种情况,各位都是怎么处理的?帮帮我吧,谢谢。

解决方案 »

  1.   

    谢谢楼上各位的回复。数据库的事务控制我是知道的。我觉得我应该是在程序里加事务控制。我用的spring+struts+ibatis的框架。现在在dao层写了三个接口。一个写用户信息,一个写用户设备信息,一个写设备订购信息。用来写数据库。这三个接口在一个服务层的接口实现里调用,我只要把事务加在服务层的接口上就行吧?
      

  2.   

    嗯         用spring 的事务 控制一下服务层的接口就行了