Java 如何在Android应用程序中构造SQLite访问?ORM(Lite)与否?
我正在和一位同事一起开发一个Android应用程序,其中包括一个数据库和大约15个表。在Google的Android开发文档之后,我们现在编写了两个类型类、一个DB助手、一个数据提供者,并且为每个类型类还编写了一个排序适配器 这是可行的,但我的主要问题是,为了添加DB表,我需要创建一个新的类型类,编辑DB帮助程序和提供程序,并创建一个新的适配器。看到这是一个麻烦和容易出错的问题,我想这是一个ORM的完美配方 环顾四周,我发现唯一有意义的项目是。但是四处搜索,我甚至感觉不到ORMLite是Android中处理SQLite的常用方式 因此,我的问题如下:Java 如何在Android应用程序中构造SQLite访问?ORM(Lite)与否?,java,android,sqlite,orm,ormlite,Java,Android,Sqlite,Orm,Ormlite,我正在和一位同事一起开发一个Android应用程序,其中包括一个数据库和大约15个表。在Google的Android开发文档之后,我们现在编写了两个类型类、一个DB助手、一个数据提供者,并且为每个类型类还编写了一个排序适配器 这是可行的,但我的主要问题是,为了添加DB表,我需要创建一个新的类型类,编辑DB帮助程序和提供程序,并创建一个新的适配器。看到这是一个麻烦和容易出错的问题,我想这是一个ORM的完美配方 环顾四周,我发现唯一有意义的项目是。但是四处搜索,我甚至感觉不到ORMLite是Andr
这不是一个真正的答案,只是我在android上使用DB的经验的反馈 我问了自己同样的问题,你是对的,这不太清楚 在Android应用程序中处理相当复杂的DBs最常用/最好的方法是什么?自制类还是类似ORMLite的ORM 我认为在大多数情况下,人们试图在应用程序中避免使用复杂的数据库,当他们做不到的时候,他们可能会使用Android方式(自制类)。(只是我的建议) 像ORMLite这样的ORM会使我的Android应用程序比编写自己的访问器慢很多吗 如果你所说的复杂是指关系,在同一类型中有大量的af读/写。Ormlite肯定会减慢你的应用程序速度。(我的经验)。当您这样做时,访问肯定会更快(因为您不是程序或猴子),但实现和维护的时间会更长 对于在Android应用程序中访问SQLite,您是否有其他建议(其他ORMs或技术) 再次重申,这只是我的建议,但如果您可能是完全或部分复制的数据库(基于服务器),则必须询问您: “我的用户真的可以在没有网络的情况下使用应用程序吗?” 如果他不能,优化您对服务器的请求,但不要创建本地数据库。维护起来会更快更简单 最后,我从未测试过此类解决方案,但这应该是一种“中间方法”-->我认为他们正在开发一个库(目前为beta版)
希望能有所帮助。我们将有大约15个具有相当多关系的表,但每秒最多有5个读/写操作。你认为ORM在这种情况下会更慢吗?你也会说“当你这样做的时候,访问肯定会更快(…),但是它的实现和维护时间会更长。”你这里说的“它”是什么意思,使用还是不使用ORMLite?你是说使用ORM需要更长的时间来实现吗?我指的是实现你自己的类,在运行时它会更快,但实现的时间更长。使用ORM将更容易实现和维护。5读/写这是一个缓慢的比特率。奥姆莱特可能会做得很好。如果您已经有了pojo,那么添加ormlite注释非常快。因此,如果您真的需要一个数据库,您可以开始使用OrmLite。如果它成功了,那好吧。如果没有,您可以开始考虑其他方法,但由于实施起来没有那么多工作。。。这不会造成很大的时间损失。ORMLite会减慢应用程序速度的原因是它严重依赖于反射。android中的反射非常耗时,而且还没有得到应有的优化。也就是说,为应用程序引入一些结构并大大简化代码库始终是一个好主意。使用SQLite数据库的默认Android方式非常麻烦。总之,每种方法都有其优缺点。我的建议是根据您的项目需要选择合适的@看见