开发者社区> 问答> 正文

Android ORM框架ActiveAndroid使用

在实际项目中我们会使用Android数据库存储一些不会变动的数据,Android本身提供了sqlite数据库,但是我们在使用时需要编写很多代码,个人觉得有些繁琐,程序员都是偷懒的,接下来将会介绍ActiveAndroid的使用。首先我们需要在AndroidManifest.xml中添加数据库名称与数据库版本号,

meta-data android:name="AA_DB_NAME" android:value="youDBName.db" meta-data android:name="AA_DB_VERSION" android:value="1"

接下来需要在Android studio gradle中进行配置

repositories { mavenCentral() maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } }

compile 'com.michaelpardo:activeandroid:3.1.0-SNAPSHOT'

基本的配置已经结束,下面进行代码编写,首先需要在Application中进行初始化,

@Override public void onCreate() { super.onCreate(); ActiveAndroid.initialize(this); } @Override public void onTerminate() { super.onTerminate(); ActiveAndroid.dispose(); } 下面开始创建数据库模型

@Table(name = "Address")
public class AddressEntity extends Model{
    @Column(name = "address_id")
    public  String address_id;
    @Column(name = "parent_id")
    public  String parent_id;
    @Column(name = "address_name")
    public  String address_name;
}
到这一步各位应该都能明[数控等离子切割机](http://www.158cnc.com) [http://www.158cnc.com](http://www.158cnc.com)白这是在创建表,Table代表这张表的名字,column代表列名,接下来就是保存数据操作了,

AddressEntity item = new AddressEntity(); item.address_id = "1"; item.address_name = "小三"; item.parent_id = "1"; item.save(); 通过一个对象将数据保存在数据库中,就是这么简单,最后就是查询操作了,返回的是List集合

new Select()
        .from(AddressEntity.class)
        .where("address_id = ?", address_id)
        .execute();
是不是so easy呢!根本不需要我们去编写很多代码实现数据存储,不过推荐大家使用GreenDao来实现

展开
收起
凹凹凸曼 2020-06-16 19:17:54 4480 0
1 条回答
写回答
取消 提交回答
  • Android ORM 框架之 ActiveAndroid 最近研究了一下Android中的ORM框架,其一是ActiveAndroid,ActiveAndroid算是一个轻量级的ORM框架,配置,使用还都算是比较简单的。

    初始化Jar包 Github地址,下载源代码 打开CMD,进入源码根目录 执行ant jar包生成,可以在dist文件夹里找到。 工程配置 在AndroidManifest.xml中需要添加数据库名和版本号 如果这两个都不写的话,默认会是Application.db,库版本号为1。

    在Application中初始化 可以继承com.activeandroid.app.Application,可以在自己的Application里初始化,看com.activeandroid.app.Application文件就明白了: public class Application extends android.app.Application { @Override public void onCreate() { super.onCreate(); ActiveAndroid.initialize(this); } @Override public void onTerminate() { super.onTerminate(); ActiveAndroid.dispose(); } } 所以如果不继承只需要在自己的Application 添加ActiveAndroid.initialize(this)和 ActiveAndroid.dispose()的操作即可。

    2020-06-19 15:00:40
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载