51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1849|回复: 2
打印 上一主题 下一主题

Android ORM框架简单介绍

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-6-21 16:22:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚毕业时进入一家公司所做的项目就是负责android视频语音通话方面的,也有点像智能家居方面吧,那
时候刚出来,啥也不会,其实那时候动不动让我看看什么数据同步方向的逻辑啥的(也就是数据库操作
逻辑,幸好在学校学习了点SQL知识),那时候根本也没想过封装啥,只想着能快点独立干活就行了,
也没深入了解,现在想想有点后悔啊,其实那个项目对数据库要求挺高的,那时候的我也是个小白,根
本不知道项目之外还有什么样的世界,哎,算了,不说废话了,进入正题吧。

正文:

我们在开发Android应用时,保存数据有这么几个方式,

本地保存
网络存储(放在后台(提供API接口),还有一个是放在开放云服务上)。
对于第一种方式,即本地数据存储,如嵌入式SQLite,你可以选择直接使用SQL语句、Content Provider
或 ORM(对象关系数据映射)。
  对于 Android 应用的开发,主要是使用Java语言,所以适用于Java语言的一些ORM,也能移植于 An
droid 平台上。

最近想复习下数据库方面的知识了,所以本篇文档也当做一个笔记记录一下吧,以前因为都是做的实时性
要求比较高小项目,所以有的都没用到什么数据库,都是现取现用,一些配置文件也是保存到了Preferen
ce中。既然现在准备复习下数据库了,那就深入了解下吧。现在开源社区也有很多的ORM框架,但不知道
哪个好用些,所以就上网查了一下,简单的总结下,稍后一一分析一下再详说。
  先介绍一下ORM的概念,以前也一直听说,不过没详细了解啥意思。其全称叫做对象关系映射(Obj
ect Relation Mapping),是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的
转换。从效果上说,它其实是创建了一个可在编程语言里使用的“虚拟对象数据库”。面向对象是从软件
工程基本原则(如耦合、聚合、封装)的基础上发展起来的,而关系数据库则是从数学理论发展而来的. 两
者之间是不匹配的.而ORM作为项目中间件形式实现数据在不同场景下数据关系映射. 对象关系映射是一种
为了解决面向对象与关系数据库存在的互不匹配的现象的技术.ORM就是这样而来的。

ORM框架简介:

1. ActiveAndroid

Repository: https://github.com/pardom/ActiveAndroid
Description: ActiveAndroid是一个轻量级的orm框架,名称命令方式类似于Yii、Rails等使用的orm框架ActiveRecord。

2. OrmLite-Android

Repository: https://github.com/j256/ormlite-android
Description: OrmLite不是Android平台专用的orm框架,它是一个Java orm,OrmLite For Android增加了对A
ndroid平台的支持。

3. GreenDAO

Repository: https://github.com/greenrobot/greenDAO
Description: GreenDAO是一个轻量级,快速的orm框架。简化建表、查询、更新、插入、事务、索引的操作。
Features:
1、性能突出(比ormlite快4-5倍), performance
2、库小,核心包小于100k
3、简单易用的API
4、支持protobuf
5、自动生成数据库访问代码

4. Realm

Repository: https://github.com/realm/realm-java
Description: 移动端的数据库,适用于 Phone、Tablet、Wearable,支持 ORM,线程安全、支持连表及数据
库加密,比 SQLite 性能更好。
Features:
1、着重移动端
2、简单易用的API
3、支持线程安全,关系数据库和加密
4、访问快速
5、跨平台

Sugar ORM

Repository: https://github.com/satyan/sugar
Description: Android平台专用orm框架。
Features:
1、配置少
2、自动生成表结构
3、支持在不同模式版本直接切换



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    奋斗
    5 小时前
  • 签到天数: 1522 天

    连续签到: 1 天

    [LV.Master]测试大本营

    2#
    发表于 2018-6-26 11:13:47 | 只看该作者
    感谢分享·~
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-25 16:01 , Processed in 0.061729 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表