Android之LitePal增删改查—3
发布日期:2021-05-08 20:32:01 浏览次数:19 分类:精选文章

本文共 3557 字,大约阅读时间需要 11 分钟。

LitePal ORM数据库管理指南

1. ORM映射配置

LitePal采用对象关系映射(ORM)模式,需要配置映射模型。具体操作如下:

通过上述配置,指定Book类映射数据库表book

2. 数据库版本管理

数据库版本号的修改非常简单,只需在版本号字段加1即可:

此时数据库将自动生成新版本,确保迁移稳定。

3. 数据表操作

在LitePal中,进行增删改查操作需要继承DataSupport类:

public class MainActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        Button createDatabase = (Button) findViewById(R.id.create_database);        createDatabase.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                LitePal.getDatabase();            }        });        Button addData = (Button) findViewById(R.id.add_data);        addData.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Book book = new Book();                book.setName("java编程思想");                book.setAuthor("dan brown");                book.setPages(500);                book.setPress("unkonw");                book.setPrice(50.2);                book.save();            }        });        Button updateData = (Button) findViewById(R.id.update_data);        updateData.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Book book = new Book();                book.setName("java入门到精通");                book.setAuthor("dan brown");                book.setPages(50);                book.setPress("unkonw");                book.setPrice(55.2);                book.save();                book.setPrice(100.2);                book.save();            }        });        Button deleteData = (Button) findViewById(R.id.delete_data);        deleteData.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                DataSupport.deleteAll(Book.class, "price > ?", "90");            }        });        Button queryData = (Button) findViewById(R.id.query_data);        queryData.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                List
books = DataSupport.findAll(Book.class); for (Book book : books) { Log.d("Mainactivity", "book name is:" + book.getName()); Log.d("Mainactivity", "book author is:" + book.getAuthor()); Log.d("Mainactivity", "book pages is:" + book.getPages()); Log.d("Mainactivity", "book price is:" + book.getPrice()); Log.d("Mainactivity", "book press is:" + book.getPress()); } } }); }}

4. 常见操作示例

增加数据

Book book = new Book();book.setName("java编程思想");book.setAuthor("dan brown");book.setPages(500);book.setPress("unkonw");book.setPrice(50.2);book.save();

更新数据

Book book = new Book();book.setPrice(132.5);book.setAuthor("anchor");book.updateAll("name = ? and author = ?", "java入门到精通", "dan brown");

删除数据

DataSupport.deleteAll(Book.class, "price > ?", "90");

查询数据

List
books = DataSupport.findAll(Book.class);for (Book book : books) { Log.d("Mainactivity", "book name is:" + book.getName()); Log.d("Mainactivity", "book author is:" + book.getAuthor()); Log.d("Mainactivity", "book pages is:" + book.getPages()); Log.d("Mainactivity", "book price is:" + book.getPrice()); Log.d("Mainactivity", "book press is:" + book.getPress());}

通过以上方法,轻松管理Android应用中的数据库,充分发挥LitePal ORM的优势。

上一篇:Java se课程设计详解——数据库接口类(1)
下一篇:Android之SQLite增删改查(CRUD)——2

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2025年05月07日 11时53分52秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

Kubernetes原生的CICD工具Tekton详解 2023-01-29
Kubernetes多master节点高可用集群安装 2023-01-29
Kubernetes存储之Persistent Volumes简介 2023-01-29
Kubernetes学习总结(10)—— 何为云原生,与 kubernetes 是什么关系 2023-01-29
Kubernetes学习总结(11)—— Kubernetes Pod 到底是什么? 2023-01-29
Kubernetes学习总结(12)—— 学习 kubernetes 的10个技巧或建议 2023-01-29
Kubernetes学习总结(13)—— Kubernetes 各个组件的概念 2023-01-29
Kubernetes学习总结(14)—— Kubernetes 实用命令总结 2023-01-29
Kubernetes学习总结(15)—— Kubernetes 实战之部署 Mysql 集群 2023-01-29
Kubernetes学习总结(16)—— Kubernetes 实战之部署 Redis 集群 2023-01-29
Kubernetes学习总结(17)—— Kubernetes 快速入门需要掌握的知识点总结 2023-01-29
Kubernetes学习总结(18)—— Kubernetes 容器网络 2023-01-29
Kubernetes学习总结(1)——Kubernetes入门简介 2023-01-29
Kubernetes学习总结(2)——Kubernetes设计架构 2023-01-29
Kubernetes学习总结(3)——一年时间打造全球最大规模之一的Kubernetes集群,蚂蚁金服怎么做到的? 2023-01-29
Kubernetes学习总结(4)——Kubernetes v1.20 重磅发布 | 新版本核心主题 & 主要变化解读 2023-01-29
Kubernetes学习总结(5)——Kubernetes 常见面试题汇总 2023-01-29
Kubernetes学习总结(6)——Kubernetes 7周年:它为什么如此受欢迎? 2023-01-29
Kubernetes学习总结(7)——学习 Kubernetes 的 Pod 2023-01-29
Kubernetes学习总结(8)—— Kubernetes Pod 资源管理 和 Pod 服务质量 2023-01-29