Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Android应用程序中构造SQLite访问?ORM(Lite)与否?_Java_Android_Sqlite_Orm_Ormlite - Fatal编程技术网

Java 如何在Android应用程序中构造SQLite访问?ORM(Lite)与否?

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应用程序,其中包括一个数据库和大约15个表。在Google的Android开发文档之后,我们现在编写了两个类型类、一个DB助手、一个数据提供者,并且为每个类型类还编写了一个排序适配器

这是可行的,但我的主要问题是,为了添加DB表,我需要创建一个新的类型类,编辑DB帮助程序和提供程序,并创建一个新的适配器。看到这是一个麻烦和容易出错的问题,我想这是一个ORM的完美配方

环顾四周,我发现唯一有意义的项目是。但是四处搜索,我甚至感觉不到ORMLite是Android中处理SQLite的常用方式

因此,我的问题如下:

  • 在Android应用程序中处理相当复杂的DBs最常用/最好的方法是什么?自制类还是类似ORMLite的ORM
  • 像ORMLite这样的ORM会使我的Android应用程序比编写自己的访问器慢很多吗
  • 对于在Android应用程序中访问SQLite,您是否有其他建议(其他ORMs或技术)

  • 这不是一个真正的答案,只是我在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方式非常麻烦。总之,每种方法都有其优缺点。我的建议是根据您的项目需要选择合适的@看见