Android数据库(SQLite)框架——LitePal实战入门

转载请表明出处:http://blog.csdn.net/iwanttohitren/article/details/51660116

首先,引用一下百度百科对LitePal的定义:LitePal是GitHub上一款开源的Android数据库框架。LitePal是一款开源的Android数据库框架,采用了对象关系映射(ORM)的模式,将平时开发时最常用的一些数据库功能进行了封装,使得开发者不用编写一行SQL语句就可以完成各种建表、増删改查的操作。并且LitePal很“轻”,jar包大小不到100k,而且近乎零配置,这一点和Hibernate这类的框架有很大区别。目前LitePal的源码已经托管到了GitHub上。下面从一个简单的例子开始解说LitePal的


第一步:导入库

eclipse开发环境:首先下载jar,建议下载最新版本的,然后放入你新建工程的libs中
AndroidStudio开发环境:修改你新建工程的build.gradle,增加一个新的依赖库,如下:

dependencies {
    compile 'org.litepal.android:core:1.3.2'
}

第二步:新建并配置litepal.xml

在AndroidStudio开发环境下,在app/src/main文件夹下新建assets文件夹,然后在assets文件夹下新建litepal.xml文件,文件内容如下:

<?xml version="1.0" encoding="utf-8"?>
<litepal>
    <!--
       这里是你的android数据库的名字,可以直接写一个名称,框架会自动给你加上名
       称.db,例如下面的例子的结果为生成一个userinf.db的数据库。例: 
        <dbname value="userinf" ></dbname>
    -->
    <dbname value="userinf" ></dbname>

    <!--
        这里是数据库的版本,就像我们使用SqliteOpenHelper建立数据库一样,第一次建
        立数据库需要给数据库一个版本。如果想更新数据库的设置,只要在此基础上加1就可
        以了。例:
        <version value="1" ></version>
    -->
    <version value="1" ></version>

    <!--
        这里是实体类和数据库中的表的映射配置,一个类对应数据库中一张表,类中的一个字
        段对应表中的一列。例:    
        <list>
            <mapping class="com.tianlanse.mvpdemo.bean.UserBean"></mapping>
        </list>
    -->
    <list>
           <mapping class="com.tianlanse.mvpdemo.bean.UserBean"></mapping>
    </list>

    <!--
        这个是定义数据userinf.db存储在哪里,有两个参数"internal"和"external"可
        以选择。"internal"表示数据库存储在数据库文件夹的内部存储中,其他人不能访
        问。"external"表示存储在外部的存储中,所有人可以访问。默认情况下
        是"internal"。例:
        <storage value="external"></storage>
    -->

</litepal>

app文件夹目录的结构图如下:
这里写图片描述

第三步:配置Application

使用过第三方平台或者框架的同志们应该对这一步不陌生,在使用第三方的平台或者框架之前,需要在Application中初始化它们。这里我们新建一个MyApplication类(我是建立在MainActivity同级目录下了),继承LitePalApplication。然后在AndroidManifest.xml文件下配置MyApplication的路径,代码如下:
MyApplication.java

public class MyApplication extends LitePalApplication {
}

AndroidManifest.xml

<application
        android:name=".MyApplication"
        .......
</application>

第四步:新建实体类

实体类需要继承LitePal的DataSupport,类中的字段可以添加注解。新建一个用户类UserBean,包括用户ID,姓名,年龄。代码如下:

public class UserBean extends DataSupport{

    @Column(unique = true,nullable = false)
    private int mId;
    @Column(nullable = false)
    private String mName;
    @Column(nullable = false)
    private String mAge;

    //getter和setter
    ...
 }

然后再litepal.xml中添加类和表的映射:

<list><mapping class="com.tianlanse.mvpdemo.bean.UserBean"></mapping>

当建立数据库的时候,数据库中就会自动生成userbean表,并且包含mId,mName,mAge三列。生成数据库的语句如下:

SQLiteDatabase db = Connector.getDatabase();

第五步:生成数据库

上面我们已经写了生成数据库的语句,我们只需在MainActivity类中的onCreate()方法中调用一下就ok了,代码如下:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //生成数据库
        SQLiteDatabase db = Connector.getDatabase();
    }
}

部署并运行一下整个程序,正常运行程序后,在DDMS管理器中的file explorer下的data/data/包名/databases文件夹下回看到生成的数据userinf.db,效果如下图:
这里写图片描述
导出数据库,用Sqlite expert工具打开userinf.db数据库后,查看userbean表效果如下:
这里写图片描述


到这里使用开源框架LitePal成功创建了用户数据库和用户信息表,配置和操作是不是很简单。下一篇:我们将涉及使用LitePal对用户数据的添删改查操作。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值