环境:java1.5,eclipse,nc ,Oracle
需求:写个接口,通过传来的json串修改Oracle的数据
我是遍历一条一条修改的,但是这样不行,说数据量过大数据库就崩了,怎么做到一次数据库操作就可以完成批量修改,数据都是一张表上的
而且这些数据会有一个状态属性,状态为0表示已经修改过了,不能再修改,状态为-1表示还没修改
首先接受json字符串,解析转化成对象,然后放进list中,List<User>这样.
然后sql的话可以用批量修改.传list就行
状态为0表示已经修改过了,不能再修改,状态为-1表示还没修改 这个你update的时候加条件就行,where id=#{id} and status='-1'
看你的数据层用什么实现的,一般的框架都封装了批量操作的功能,比如mybatis,按官方文档或者百度一个操作教程做就可以
还有JDK1.5这有点古董了吧。。。
nc本身有这个方法类,底层实现后相当于Oracle的in,就可以一条sql同时修改多条状态
然后我还要做一个表其中一个数量信息需要加上另外一个表的数量信息,解决了好久,发现可以用merge,之前没了解过,现在都解决了