jfinal batchSave 问题

问题:保存List字段时 会根据集合中第一个对象字段 做insert 插入

如: list集合中第一个对象中 有5个字段 第二个对象有8个字段

做批量保存时,会根据第一个对象中得字段进行插入。此时第二个对象中多得那3个字段就会消失,插入时并不会

把多得字段进行插入。都会是空得。

正常开发程序过程中,不太可能做到 完全保证第一个对象中得字段都有值 

解决方法: 

1.也可以在插入时对对象所有字段指定一个空串或者默认值 也可以解决。

2.可以用手动指定方式对数据进行指定插入

// 定义要插入得字段
String columns = "id, name, age, address";
// 自定义sql语句
String sql = "insert into TableName (" + columns + ") values(?, ?)";
// 使用手动指定字段插入得方式进行插入
int[] result = Db.use().batch(sql, columns, list, 500)


评论区

北流家园网

2023-02-23 10:09

这位大佬说得比较全面https://jfinal.com/share/2629

zzutligang

2023-02-28 09:54

这个方法还是挺好的。

热门分享

扫码入社