用于Android开发的任何好的ORM工具?

任何在Android上工作的人('gPhone')是否知道我可以找到一个好的ORM工具? 代码是用Java编写的,数据库是SQLite。 我想找到的是一个给定对象定义的工具,它可以自动生成表格和CRUD函数(这很棒),或者,除此之外,可以使用表格定义,对象定义,并自动生成CRUD功能。 问题在于,所有这些都必须在Android框架内发生,Android框架对数据库访问的工作方式有自己的约定。


这个线程可能会给你一些探索:Hibernate的轻量级选择


以为我只需在我的ORMLite包中添加我的$ 0.02即可:

http://ormlite.com/

它是Hibernate的轻量级替代品,并使用原生Android OS数据库调用来支持Android上的SQLite。 它还支持在其他体系结构上使用JDBC的许多其他数据库类型。 我们有ORMLite问题的Android邮件列表。


这个问题不能年龄化,但建议的框架可以。 所以,这里首先列出我在这样的比较框架中发现的重要内容:

  • 有没有Maven或Gradle神器? (这显然是一个很大的优势,取决于你是否使用maven或gradle)
  • 代码是否可以通过简单的方式访问,包括快速评估活动的概述? (在这个问题上,在github上托管的代码对我来说是一个明显的优势)
  • 发布管理:是否有发布/发布标签和工件? (有一些是在github上托管的,需要git clone或者提供主tar包下载 - 对于我来说,如果甚至没有发布标签在README中设置和解决,那么这是一个大的减号)
  • 因为大小很重要,我提出了一些提示,很容易找到(我没有下载任何东西,所以从没有提供发布工件的项目中没有大小)
  • 这里有一个关于上面几点的框架列表。 我查了一些更像巴蒂斯和哈迪,但我只添加了那些在2011年后有一些活动。

  • http://ormlite.com,Maven artifact,52 kB,SVN,这个网站很困难,但似乎有很多例子,根据http://ormlite.com/changelog.txt,最后一个版本是2013年的4.48,https://github.com/j256/ormlite-core(发布标签),上次活动2015年3月
  • http://greendao-orm.com,良好的维护,Maven神器,关注点:性能快,体积小,内存消耗小。 Github:https://github.com/greenrobot/greenDAO/(发布标签,> 2300颗星),上次活动2014年11月
  • https://github.com/roscopeco/ormdroid,体积小,上次活动2014年8月
  • http://www.activeandroid.com,https://github.com/pardom/ActiveAndroid(> 2300星),良好的维护,社区,没有发布标签(下载点到主tarball),Maven artifact,上次活动2014年10月
  • http://droidparts.org,https://github.com/yanchenko/droidparts(发布标签,> 600颗星),还有依赖注入,Maven神器,积极维护
  • http://www.androrm.com,https://github.com/androrm/androrm(发布标签),上次活动2014年1月2日(github)
  • https://github.com/emilsjolander/sprinkles(发布标签,> 600颗星),最后活动2014年5月,Maven神器(感谢@AndroidGecko)
  • http://realm.io,https://github.com/realm/realm-java不仅取代了ORM,而且还取代了也适用于iOS(发布标签,> 1600颗星)的SQLite,它们是主动维护的,自己的Maven仓库
  • 我还没有尝试过其中的任何一种,但也许我可以通过列出当前活跃的项目来节省一些时间。 如果您知道其他满足上述某些要点并且正在进行一些严肃的开发(一段时间)的项目,请添加评论。

    编辑(2013年11月):将列表更新为项目的当前状态。 其中一些已经将发行标签添加到他们的github回购站以及Maven / Gradle支持。 干得好!

    编辑(2015年4月):更新了列表,添加了Sprinkles(按照@AndroidGecko的评论)和Realm.io。

    链接地址: http://www.djcxy.com/p/17189.html

    上一篇: Any good ORM tools for Android development?

    下一篇: What are some good Python ORM solutions?