有关xutils的save(List<Object> entities)多态bug问题

发布于 2021-11-24 10:12:18 字数 1213 浏览 939 评论 3

环境
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) Server VM (build 23.25-b01, mixed mode)
android sdk 4.1.1 

今天在利用xutils进行开发的时候,遇到了一个需要批量添加的功能,所以我使用了

try {
	 			DbUtils dbUtils = DbUtils.create(this);
	 			dbUtils.configDebug(true);
	 			if(dbUtils.tableIsExist(Area.class)){
	 				return;
	 			}
	 			List<Area> areas = getAreaList();
	 			dbUtils.save(areas);
			} catch (Exception e) {
				e.printStackTrace();
			}
但是在使用过程中报错了,报出:
11-02 15:39:14.482: W/System.err(1953): java.lang.RuntimeException: this model[class java.lang.Object] has no any field
这个问题困扰了我很久,于是我debug跟踪调试,发现它调用的是DbUtils.save(Object entity);
于是我将DbUtils中的DbUtils.save(List<Object> entities);的名字修改为
DbUtils.saveList(List<?> entities);然后测试通过。

@wyouflf
1、不知是否是这个问题是否在测试过程中是否遇到过?
2、有点小小建议,建议可以将这个方法改名为saveList(List<?> entities)。



如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

眼眸里的那抹悲凉 2021-11-30 00:54:43

你好,多线程操作数据库中,经常遇到在事务中执行,另一条线程执行其他查询而造成数据库等待,往往是很久,请问这个怎么解决

夜无邪 2021-11-27 01:09:16

批量时开启事物有助于提高效率DbUtils#configAllowTransaction(bool)

苍暮颜 2021-11-24 12:23:43

greate job.刚pull了源码,发现saveAll方法,另可否将saveAll()中单条插入变成批量插入,单条插入速度有点慢

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文