Ormlite或sqlite哪个有利于Android透视?

时间:2013-08-12 07:14:55

标签: android android-sqlite ormlite

我很困惑哪个适合Android视角的Ormlitesqlite。 请你能给我一个建议,哪个更适合使用我们的Android应用程序。并使易用和支持所有Android设备? 我想在我们的项目中使用ormlite,但在此之前我想确定它对我和我的应用程序是否有用。如果有人在此之前使用过,请指导我。我非常感谢你的想法.Thnaks

4 个答案:

答案 0 :(得分:17)

ORMLite是一个开源软件框架,它在Java类和SQL数据库之间提供轻量级对象关系映射(ORM)。

如果你使用这个框架你最终使用sqlite数据库(ORMLite不是数据库),它允许你为你的应用程序实现一个好的架构,我总是喜欢使用ORMLite

如果你想开始使用它,这是我的blog on ORMLite !!

答案 1 :(得分:6)

ORMLite有两个.jar文件:ormlite-core.jar(275KB)和ormlite-android(50KB)库

优势: -

  1. 用于复杂的数据库操作

  2. 无需记住SQL查询

  3. 喜欢大尺寸应用

  4. 缺点: -

    1. 不必要地增加申请尺寸

    2. 与greenDao(另一个ORM)

    3. 相比,有点慢

答案 2 :(得分:0)

虽然其他答案都很完美,但我想提一下使用ORMs的另一个方面,比如Ormlite和SQlite。

ORM(例如Ormlite)很好用,因为它们减少了工作量和代码量,但我已经阅读了this,我在这里提到了这个意见:

  

我们通常不建议使用对象关系映射库   除非你有非常复杂的数据并且你有急需。他们   往往很复杂,需要时间学习。如果你决定去   ORM你应该注意它是否是过程安全的   如果您的应用程序需要它,就像许多现有的ORM解决方案一样   令人惊讶的是没有。

答案 3 :(得分:0)

您也可以选择查看Storm(https://github.com/supaldubey/storm/

它提供了整洁的界面,并没有要求覆盖或实现模型的任何基类。

它还会自动创建并自动升级您的模型

您可以添加到Gradle并轻松开始使用

在父母:

maven {url“http://dl.bintray.com/cubestack/maven”}

在Gradle项目中:

 dependencies {
        compile 'in.cubestack.android.lib:storm:1.0g'
    }

第1步:定义表格:

    @Table(name = "DEMO_ENTITY")
    class Entity {
   @PrimaryKey
   @Column(name="ID", type = FieldType.INTEGER)
   private int id;
    }

第二步(定义数据库)

数据库也有可以应用的注释,可以定义多个数据库。

@Database(name="MY_DB", tables = {Entity.class, AnotherEntity.class}, version = 2)
class Database {}

第三步(开始使用)

随着数据库为我们准备好,我们可能会开始使用它,如下所示:

检索

StormService service = new BaseService(getContext(), Database.class);
List<Entity> savedEntities  = service.findAll(Entity.class);

同样,它有保存,删除等方法。