位置: 编程技术 - 正文

Android快速开发--使用ORMLite操作数据库(android 快速开发工具)

编辑:rootadmin

推荐整理分享Android快速开发--使用ORMLite操作数据库(android 快速开发工具),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:安卓开发速成,快速开发android应用,android 快速开发,android 快速开发,快速入门android开发,android 快速开发工具,android app快速开发,android app快速开发,内容如对您有帮助,希望把文章链接给更多的朋友!

OrmLite是一个数据库操作辅助的开源框架,主要面向Java语言。在Android面向数据库开发中,是一个比较流行的开源框架,方便操作而且功能强大,今天来学习一下,最近的项目中也有所涉及,写个博客来记一下吧,感谢大神团队贡献如此实用的开源框架,这里是OrmLite的官方网址: 1.需要在@DatabaseTable注解中填入表名 2.在@DatabaseField(columnName=”“)填入字段名,设置字段的属性等等

字段属性说明

ORMLite为我们提供了全面的字段属性的支持,下面我们来具体看一下吧:

cloumnName:指定字段名,不指定则变量名作为字段名canBeNull:是否可以为nulldataType:指定字段的类型foreign 指定这个字段的对象是一个外键,外键值是这个对象的idforeignAutoCreate 外键不存在时是否自动添加到外间表中foreignAutoRefresh 外键值,自动刷新foreignColumnName外键字段指定的外键表中的哪个字段generatedId:指定字段为自增长的id,不能id,generatedIdSequence通用id:指定字段为idindex:索引persisted:指定是否持久化此变量,默认truethrowIfNull,如果空值抛出异常useGetSet:指定ormlite访问变量使用set,get方法默认使用的是反射机制直接访问变量unique:字段值唯一uniqueIndex 唯一索引uniqueCombo整列的值唯一创建数据库

与Android中的数据库创建相似,使用OrmLite创建数据库需要我们创建一个SqlOpenHelper继承OrmLiteSqliteOpenHelper,在OrmLiteSqliteOpenHelper也有两个重要方法,分别是onCreate和onUpgrade,负责数据库创建以及升级时的操作

Dao是一个很重要的类, 这些Dao对象用于以后的数据库操作,其包含两个泛型,第一个泛型表DAO操作的类,第二个是标记数据表的ID。

数据库操作

创建了我们自己的数据库之后就可以来,对数据库操作了,接下来我们看看如何进行数据库的增删查改

插入操作

这些方法使用起来都比较简单,我们只需将自己的Bean传入到下列方法中即可

create:插入一条数据 createIfNotExists:如果不存在则插入createOrUpdate:如果存在则更新查询操作

OrmLite为我提供了一系列的查询操作,方法很多,而且很多都是只看方法名就可以知道的,这里就不逐一介绍了,在这里介绍一下如何使用QueryBuilder进行复杂查找。

首先调用personDao.queryBuilder();获得该Dao下的QueryBuilder对象,接下来设置QueryBuilder的查询条件,最后通过QueryBuilder的query方法获得List对象,Android快速开发--使用ORMLite操作数据库(android 快速开发工具)

下面介绍几个常用的builder下的查询, 1.多字段条件查询:

2.查询并按顺序输出

orderBy的方法第一参数表示按那个字段进行排序,第二个参数表示是否为升序。

3.分页查询

删除和更改操作

与查询操作类似,ORMLite同样为我们提供了一系列的方法,同时也提供了复杂删除,复杂更改的DeleteBuilder和UpdateBuilder,其用法与QueryBuilder相似,就不详细介绍了。

将数据库放置在SD卡

Android创建数据库默认的存储路径是在/data/data/packagename/database 目录之下,一方面如果数据库庞大将占用系统存储空间,另一方面如果没有获得系统ROOT权限,将不能直观的看到该数据库。所以在最后介绍一下如何将数据库建立在指定的SD卡目录之下。

这个在ORMLite中并没有提供,自己来动手写一写吧。阅读一下Android的源码可以很容易发现,Android数据库存放的目录是由ContextWrapper类下的public File getDatabasePath(String name)方法决定的,那么我们只需创建自己的Context覆盖该方法即可。

之后我们在创建SQLOpenHelper时,只需传入我们自己的DatabaseContext 即可,如

ORMLite相关文件下载

附上ORMLite相关jar文件以及官方文档说明:点击下载

深入源码剖析LruCache 引言:最近许多人在博客中提到自己在面试时被问LruCache的原理是?,发现自己之前完全没有接触过这个知识点,本着知其然知其所以然的态度,先搜索

adb push、adb install 和强制安装 1.adbpushXXX.apk目录是将apk发送到手机指定的目录adbpushtest.apk/sdcard/test/test.apk2.adbinstall电脑中apk的路径是安装电脑中的apk到手机adbinstall/Users/test/test.apk3.强

使用Ant自动签名、打包Android apk并且自动安装到手机 一、建立Ant打包Apk新建一个TestAnt项目创建App的签名密钥参考我的这篇github,欢迎Star|点击这里取到密钥后,在项目中创建一个keystore的文件夹,复制密

标签: android 快速开发工具

本文链接地址:https://www.jiuchutong.com/biancheng/382257.html 转载请保留说明!

上一篇:Android酷炫实用的开源框架(UI框架)(安卓样式大全)

下一篇:深入源码剖析LruCache(如何分析源码)

  • 委托加工物资增值税纳税义务发生时间
  • 房地产开发企业土地增值税预缴
  • 处置固定资产简易征收
  • 企业注销了,报表的银行存款还有余额
  • 工会经费计提多了跨年
  • 驾驶培训费可以报销吗
  • 超过保质期存储时间或变质的食品应该怎样处理
  • 当月确认收入下年怎么算
  • 生产车间计提折旧分录
  • 商业汇票概念股票
  • 投资收益在什么科目
  • 增值税附加税可以抵扣吗?
  • 有一个公司能做多少事情
  • 自然人借款给企业的涉税风险
  • 减免税款交企业所得税吗
  • 主营业务收入增速怎么算
  • 建筑业进项税额转出
  • 印花税可以根据企业流水申报吗
  • 苹果Mac电脑怎么锁屏
  • 公司车辆违章怎么办
  • 公司决议效力确认纠纷
  • 高新技术企业研发人员比例要求
  • 有限合伙企业如何退出合伙人股份
  • wordpress网站打开很慢
  • php中的header函数
  • 电脑方案表格
  • macos字体
  • 吃鸡到底用什么显卡性价比最高?
  • php socket select
  • 对账小技巧
  • 员工离职的类型
  • 结转出租包装物因不能使用而报废的残料价值
  • vue中使用swiper6
  • 运输取得的收入
  • 增值税免征与即征的区别
  • wordpresscom
  • Attentional Feature Fusion 注意力特征融合
  • modulenotfounderror
  • 售后租回交易的第二年利息怎么算
  • 兼职劳务报酬如何入账
  • js对象模型是什么
  • 事业单位会计准则与政府会计准则的区别
  • 填制和审核会计凭证,可以监督各项经济业务的合法
  • 企业所得税是指哪些
  • 建筑公司劳务分包开票内容怎么写
  • 金税四期主要监控的内容
  • 所得税营业成本包括管理费用吗
  • SQL Server实时同步更新远程数据库遇到的问题小结
  • 文化事业建设费的征收标准
  • 对于产品开发阶段的评价
  • 仓库盘点后的数据怎么处理
  • 以土地使用权投资入股是否缴纳增值税
  • 长期股权投资权益法初始成本的确定
  • 免税货物如何开具发票
  • 其他综合收益相反科目
  • 小型微利企业年报填什么表
  • 增值税留抵退税申请流程
  • 减免税款月末是否结平
  • ubuntu安装教程14.04
  • MySQL-tpch 测试工具简要手册
  • sql,join
  • mysql 5.6.14 win32 解压缩版(免安装)安装配置教程
  • window 脚本
  • Windows Server 2008网络中顺畅访问“邻居”
  • centos 安装
  • centos8 redhat
  • 关闭windows游戏
  • rhel6.5安装
  • windows如何编辑内容
  • 编程javascript
  • android.permission.interact_across_users_full
  • bootstrap基础教程 源代码
  • vue分页组件page
  • nodejs使用视频教程
  • shell命令su
  • jquery prototype
  • 浙江税务app不能网上办税
  • 结转城市维护建设税
  • 国际贸易争端的形式
  • 没有代理记账资质的公司从事代理记账业务
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设