小结:greenDAO和LitePal的区别

简介: 这两个框架思想都差不多,都是把面向对象映射成关系型语言,主要区别有以下几个:1. greenDAO的version等数据库属性设置都是在对应的模型类里面完成的,以Java class的属性变量的形式存储;而LitePal是在另外的一个xml文件中定义。

这两个框架思想都差不多,都是把面向对象映射成关系型语言,

主要区别有以下几个:

1. greenDAO的version等数据库属性设置都是在对应的模型类里面完成的,以Java class的属性变量的形式存储;而LitePal是在另外的一个xml文件中定义。

img_24b47358582a59d3d076fbe1674fe0f1.jpe
图片发自简书App


2.greenDAO将会生成Java数据对象(实体)和DAO对象。这些DAO对象被用来让实体有最好的合理映射射方式。

而LitePal是直接将Java模型类映射成SQLite数据库对象;

3.添加关系数据表的属性时,greenDAO通过生成的Java实体类的实例调用对应数据类型的方法进行属性添加:

img_22f3b4447f33d91d7c34bab619541902.jpe
图片发自简书App

而LitePal是在开发者自行写的模型类中通过定义Java class的属性变量的形式添加:

img_c1f4b48458d3064dd8511a1ca7261b89.jpe
图片发自简书App


4.两个框架的增删改查操作风格不一(下面列举一个查询例子的代码片段):

greenDAO:

img_e2eab027bb5ec50298e6c47602a5a32e.png
图片发自简书App

LitePal:

img_f8bbd6a55571b7f94d743e51027b976e.jpe
图片发自简书App

小结:

两者根本思想上是相似的,都是面向对象语言跟关系型语言之间的映射,但是两者的映射过程以及数据库操作风格都不尽相同。在使用的时候可以根据具体的操作环境或者个人的编程风格习惯进行抉择。

目录
打赏
0
0
0
0
6
分享
相关文章
【Xamarin.Android】使用实体框架构建Android应用程序
数据是任何应用程序开发的一个重要组成部分,移动应用程序也不例外;作为开发人员,处理数据是我们的一个重要决策,对移动应用开发也是如此。从键值对存储到SQLite,有许多选项可用,但是,.NET开发者往往特别熟悉的是实体框架。
1530 0
一个全新的RecyclerView Adapter框架源码开源
一个全新的RecyclerView Adapter框架源码开源
332 0
一个全新的RecyclerView Adapter框架源码开源
.NET Micro Framework动态调用C/C++底层代码(原理篇)
.NET Micro Framework和WinCE系统不同,从应用开发角度来说,仅支持C#开发(从V4.2版本开始,才支持VB.NET开发),而不像WinCE应用开发,既可以用C#/VB.Net,也可以用EVC等工具进行C/C++开发。
985 0
GreenDao3.0版本基础
greenDAO3基本使用 greenDAO3开始使用注解的方式定义实体类(entity),并且是通过安装gradle插件来生成代码。之前的版本则是通过建立一个独立的Java-lib工程来存放生成的文件。
1626 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等