刚毕业时进入一家公司所做的项目就是负责android视频语音通话方面的,也有点像智能家居方面吧,那时候刚出来,啥也不会,其实那时候动不动让我看看什么数据同步方向的逻辑啥的(也就是数据库操作逻辑,幸好在学校学习了点SQL知识),那时候根本也没想过封装啥,只想着能快点独立干活就行了,也没深入了解,现在想想有点后悔啊,其实那个项目对数据库要求挺高的,那时候的我也是个小白,根本不知道项目之外还有什么样的世界,哎,算了,不说废话了,进入正题吧。
正文:
我们在开发Android应用时,保存数据有这么几个方式,
- 本地保存
- 网络存储(放在后台(提供API接口),还有一个是放在开放云服务上)。
最近想复习下数据库方面的知识了,所以本篇文档也当做一个笔记记录一下吧,以前因为都是做的实时性要求比较高小项目,所以有的都没用到什么数据库,都是现取现用,一些配置文件也是保存到了Preference中。既然现在准备复习下数据库了,那就深入了解下吧。现在开源社区也有很多的ORM框架,但不知道哪个好用些,所以就上网查了一下,简单的总结下,稍后一一分析一下再详说。
先介绍一下ORM的概念,以前也一直听说,不过没详细了解啥意思。其全称叫做对象关系映射(Object Relation Mapping),是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里使用的“虚拟对象数据库”。面向对象是从软件工程基本原则(如耦合、聚合、封装)的基础上发展起来的,而关系数据库则是从数学理论发展而来的. 两者之间是不匹配的.而ORM作为项目中间件形式实现数据在不同场景下数据关系映射. 对象关系映射是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术.ORM就是这样而来的。