刚开始维护GITHUB多多指教,本项目源码地址:https://github.com/Jacksgong/Android-Database-Construct
始末
由于做一些小项目的时候,在创建数据库、创建表、执行表操作等数据库相关代码编写的时候进行了优化,统一了架构,因此分享出来。
ps: 目前架构基于ContentProvier
架构分布
- BaseContentProvider 负责数据库的规范
- BaseTableFields 规范数据表 字段(默认字段:
_id
,createAt
,modifiedAt
) - BaseTableHelper 负责数据表 规范(表名、主键、默认查询结果排序、表创建、表升级)
- BaseTableOperator 提供常用数据表的操作以及操作规范(某人已带功能:插入、更新、删除、搜索、数量、是否存在)
- CustomTableHelper 常用表规范(默认查询结果排列顺序、默认主键)
通过Sample来介绍使用
- 首先Sample中我们创建了一个SampleDB,通过集成BaseContentProvider来快速创建。
- 其次我们创建了UserInfoTable,并且为其提供了基本的数据库操作
####1. 创建SampleDB数据库(注意在AndroidManifest.xml中申明ContentProvider)
1 | public class SampleDB extends BaseContentProvider { |
####2. UserInfo表字段(name, sex, age)
1 | public class UserInfoFields extends BaseTableFields { |
####3. UserInfo表规范
1 | public class UserInfoHelper extends CustomTableHelper { |
####4. UserInfo表操作(实现下面,就已经带有了这些功能:插入、更新、删除、搜索、数量、是否存在)
1 | public class UserInfoOperator extends BaseTableOperator<UserInfoFields, UserInfoHelper> { |