数据存储之ORMlite框架总结

ORMlite是一款轻量级的对象关系映射框架,主要应用于Java,支持多种数据库。使用ORMlite,开发者可以减少手动创建数据库和表的工作,通过简单的注解实现模型与数据库的映射。在Android中,ORMlite提供了方便快捷的SQLite数据库操作方式,只需几行代码即可实现数据管理。本文将介绍ORMlite的模型注解、数据库初始化以及如何通过Helper和DBManager进行数据库操作,包括增删改查的基础和复杂查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.介绍

ormlite 是类似hibernate的对象映射框架,主要面向java语言,具有轻量级、关系持久化等特点,支持着包括mysql,sqlite,和H2等多种的数据库。

作为一个开源的框架,ormlite的源代码、文档以及demo都比较多,版本的迭代更新也很迅速,这都是我们选择它的一个强心针。
官网:http://ormlite.com/
如果需要开发android,只需要下载core和android两个jar包: ormlite-core-4.48.jar ormlite-android-4.48.jar

在用这个框架之前,使用创建数据库以及建表时,都要写好多东西–helper、dao、以及一堆sql语句。时不时的哪里出个错,老恶心了!而ormlite对于android系统sqlite数据库的支持,只需要几行代码,写个公共的管理与泛型接口,就能做完全部操作。
接下来,让我们来看看它到底要怎么用。

2.使用之旅

首先,先创建一个模型,用来建表

@DatabaseTable(tableName = "Category")
public class Category {
   
   
    @DatabaseField(generatedId = true,CanBeNull = false)
    public int id;
    @DatabaseField(CanBeNull = true)
    public String cateName;
}

@DatabaseTable 如果默认为类名的话,后面不需要添加类名注释,当然也可以自定义这个表名参数(如“Category”)。
@DatabaseField 用于表中字段的注释,generatedId =true声明id为自增长,也就是主键。CanBeNull 表示该属性列是否可为空。其实除了这两个可注释的属性外,也可以指定类型、长度、是否唯一等属性。
具体如下:

columnName 指定字段名,不指定则变量名作为字段名
canBeNull 字段是否能被分配null值。默认是true。
dataType 指定字段的类型
defaultValue 当我们在表中创建新的记录时的一个字段的默认值。默认情况下是没有这个值的
width 字段的宽度,主要用于字符串字段。默认是0
id 这个字段是否是id,默认是false。在一个class中只有一个成变量可以有这个值。id字段是一条记录的唯一标识而且是必需的,只能在generatedId和 generatedIdSequence其中选一个。
generatedId 字段是否自动增加。默认为false。
generatedIdSequence 序列编号的名字,这个值在生成的时候会被使用。和generatedId相似,但是你能够指定使用的序列名称。默认是没有的。
foreign 指定这个字段的对象是一个外键,外键值是这个对象的id
persisted 指定是否持久化此变量,默认true
foreignAutoCreate 外键不存在时是否自动添加到外键表中
foreignColumnName 外键字段指定的外键表中的哪个字段

表模型

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值