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

bigtiger02 发布于 2013/11/02 23:42
阅读 1K+
收藏 1

环境
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)。



加载中
0
wyouflf
wyouflf
谢谢你的反馈 这个问题很早前就修复了 请更新到最新稳定版: https://github.com/wyouflf/xUtils
bigtiger02
bigtiger02
greate job.刚pull了源码,发现saveAll方法,另可否将saveAll()中单条插入变成批量插入,单条插入速度有点慢
0
wyouflf
wyouflf
批量时开启事物有助于提高效率DbUtils#configAllowTransaction(bool)
0
Gelink
Gelink
你好,多线程操作数据库中,经常遇到在事务中执行,另一条线程执行其他查询而造成数据库等待,往往是很久,请问这个怎么解决
返回顶部
顶部