请问jfinal 怎么实现像mybatis plus之类的 批量 修改插入

// 批量修改插入
boolean saveOrUpdateBatch(Collection<T> entityList);
// 批量修改插入
boolean saveOrUpdateBatch(Collection<T> entityList, int batchSize);

像这2个方法,在实践过程中是大量使用的

评论区

JFinal

2020-10-20 12:42

用一下 Db.batchSave/batchUpdate 这样的 API,具体用法在这些 API 注释中有 demo,鼠标放在这些方法上会自动弹出注释来

hiado

2020-10-20 12:57

https://www.oschina.net/question/64242_48250

你上面的方法,我能理解,不过,
有时候,数据集中,一些数据是要插入,有些已存在的,是要更新的
如果是自己用你上面的2个方法,需要多写循环+判断吧?

hiado

2020-10-20 12:59

也就是哪些是需要 insert 哪些是 update 的,底层封装好了。省的每个人都封装,这个在很多框架都有,使用者会轻松很多

杜福忠

2020-10-20 15:34

@hiado mysql的话,本来就支持的,比如:
String sql = "insert into user(name, cash) values(?, ?) ON DUPLICATE KEY UPDATE cash=VALUES(cash)";
int[] result = Db.use().batch(sql, "name, cash", modelList, 500);

prelove

2020-10-20 16:36

replace into 试试呢

hiado

2020-10-21 16:48

就是要自己写sql比较麻烦,不然用原生sql + batch是可以的
多谢大家

热门反馈

扫码入社