litepal更好的操作sqlite3

配置

在app下的build.gradle中加入

创建litepal.xml配置

在app/src/main下面创建assets,新建litepal.xml

<?xml version="1.0" encoding="utf-8" ?><litepal><dbname value="BookStore"></dbname><version value="2"></version><list><!-- 映射到类 --><mapping class="demo.jq.com.litepaltest.Book"></mapping><mapping class="demo.jq.com.litepaltest.Category"></mapping></list></litepal>

配置LitePalApplication,在AndroidMainfest.xml中

创建Book类

package demo.jq.com.litepaltest;/*** @author Jim*/public class Book {private int id;private String author;private double price;/*** 出版社*/private String press;private int pages;private String name;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getAuthor() {return author;}public void setAuthor(String author) {this.author = author;}public double getPrice() {return price;}public void setPrice(double price) {this.price = price;}public int getPages() {return pages;}public void setPages(int pages) {this.pages = pages;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPress() {return press;}public void setPress(String press) {this.press = press;}
}

创建分类类

package demo.jq.com.litepaltest;/*** @author jim*/public class Category {private int id;private String categoryName;private int categoryCode;public void setId(int id) {this.id = id;}public int getId() {return id;}public void setCategoryName(String categoryName) {this.categoryName = categoryName;}public String getCategoryName() {return categoryName;}public void setCategoryCode(int categoryCode) {this.categoryCode = categoryCode;}public int getCategoryCode() {return categoryCode;}
}

这个时候,调用Connector.getDatabase();

就会自动创建数据库。

import org.litepal.tablemanager.Connector;...// 初始化创建按钮Button createDatabase = (Button) findViewById(R.id.create_database);// 设置点击事件createDatabase.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v) {// 执行写入数据库操作Connector.getDatabase();}});

添加数据

// 初始化添加数据按钮Button addData = (Button) findViewById(R.id.add_data);addData.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v) {Book book = new Book();book.setName("The Da Vinci Code");book.setAuthor("Dan Brown");book.setPages(454);book.setPrice(16.96);book.setPress("XinNet");book.save();}});

更改数据

// 更改数据Button updateData = (Button) findViewById(R.id.update_data);updateData.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v) {Book book = new Book();book.setPress("XinHua.Net");book.update(1);}});

删除数据

// 删除数据Button deleteData = (Button) findViewById(R.id.delete_data);deleteData.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v) {DataSupport.deleteAll(Book.class,"id = ?","2");}});

查询数据

// 查询数据Button queryData = (Button) findViewById(R.id.query_data);queryData.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v) {List<Book> books = DataSupport.findAll(Book.class);for (Book book :books) {Log.d(TAG,"book name is "+book.getName());Log.d(TAG,"book author is "+book.getAuthor());Log.d(TAG,"book pages is "+book.getAuthor());Log.d(TAG,"book price is "+book.getPrice());Log.d(TAG,"book press is "+book.getPress());Log.d(TAG,"--------------------------");}}});

更多查询

// 查询数据Button queryData = (Button) findViewById(R.id.query_data);queryData.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View v) {Book firstBook = DataSupport.findFirst(Book.class);Log.d(TAG,"the id is "+firstBook.getId());Log.d(TAG,"book name is "+firstBook.getName());Log.d(TAG,"book author is "+firstBook.getAuthor());Log.d(TAG,"book pages is "+firstBook.getAuthor());Log.d(TAG,"book price is "+firstBook.getPrice());Log.d(TAG,"book press is "+firstBook.getPress());Log.d(TAG,"--------------------------");Book lastBook = DataSupport.findLast(Book.class);Log.d(TAG,"the id is "+lastBook.getId());Log.d(TAG,"book name is "+lastBook.getName());Log.d(TAG,"book author is "+lastBook.getAuthor());Log.d(TAG,"book pages is "+lastBook.getAuthor());Log.d(TAG,"book price is "+lastBook.getPrice());Log.d(TAG,"book press is "+lastBook.getPress());Log.d(TAG,"--------------------------");}});

转载于:https://www.cnblogs.com/jiqing9006/p/7700277.html

litepal更好的操作sqlite3,配置与基本操作相关推荐

  1. 配置郭神的LitePal(面向对象一样操作sqlite数据库,不再使用SQL语句)

    配置郭神的LitePal(面向对象一样操作sqlite数据库,不再使用SQL语句) 配置过程可见: https://github.com/guolindev/LitePal 但是我要补充一个小问题 然 ...

  2. IOS数据库操作SQLite3使用详解(转)

    iPhone中支持通过sqlite3来访问iPhone本地的数据库. 具体使用方法如下 1:添加开发包libsqlite3.0.dylib 首先是设置项目文件,在项目中添加iPhone版的sqlite ...

  3. IOS数据库操作SQLite3使用详解

    sqlite数据库iosdatabasesqlinteger 目录(?)[+] iPhone中支持通过sqlite3来访问iPhone本地的数据库. 具体使用方法如下 1:添加开发包libsqlite ...

  4. 【delphi】delphi操作sqlite3

    SQLite SQLite是一个老牌的轻量级别的本地文件数据库,完全免费且开源,不需要安装,无须任何配置,当然,这样管理功能就不是很强大了,但是它的主要应用也是在本地数据库,可以说是最简单好用的嵌入式 ...

  5. 《趣学CCNA——路由与交换》一第6章 操作与配置Cisco IOS设备6.1 认识Cisco设备...

    本节书摘来自异步社区<趣学CCNA--路由与交换>一书中的第6章,第6.1节,作者 田果 , 彭定学,更多章节内容可以访问云栖社区"异步社区"公众号查看 第6章 操作与 ...

  6. Golang操作sqlite3数据库教程

    Golang操作sqlite3数据库教程 本文介绍sqlite数据库,如何使用sqlite3包操作轻量级关系型数据库. sqlite概述 sqlite是嵌入式关系型数据库引擎,官方描述为自包含的.无服 ...

  7. [Golang数据库专题3]Golang语言操作SQLite3进行增删改查

    目录 一.SQLite3安装(linux) 1.2 在线安装 开始安装 目录下创建db 执行表创建语句 二.方案选型 三.编写代码 3.1 代码运行环境准备 Go语言环境 SQLite3生成db 3. ...

  8. linux操作入门---配置px4环境/安装eclipse

            笔者基本上在2016.06第一次实实在在接触linux,为的是linux下编译px4能更快些,然而摸索一段时间下在牛叔的帮助下仍然没有安装成功.时至至今终于独立下载配置好了px4,下载 ...

  9. CEPH集群操作入门--配置

    https://www.cnblogs.com/luxiaodai/p/10006036.ht CEPH集群操作入门--配置l CEPH集群操作入门--配置 阅读目录(Content) 概述 配置 存 ...

  10. 网工的常规操作:配置动态NAT

    网工常规操作:配置动态NAT 实验目的 1. 理解动态NAT的转换原理 2. 掌握动态NAT的配置方法 实验拓扑 实验需求 1. 根据实验拓扑图,完成设备的基本配置: 2. 在R2上创建Loopbac ...

最新文章

  1. 光端机图像出现噪点或者数据有时不通的情况
  2. 查阅 arXiv 论文新神器,一行代码比较版本差别,Github 新开源!
  3. python向it新增5个元素_Python序列、元组、列表、集合及字典笔记整理
  4. 帆软报表二次开发之读取.properties配置文件
  5. 构建前端Mock Server的利器/Json-Server
  6. 深入浅出推荐系统(四):召回:向量化的潮流
  7. java开发 微信商家转账到零钱,发起商家转账API,微信支付
  8. 硬盘不能进PE的问题与解决
  9. excel与python生成正态分布的数据,实践
  10. m3u8加密文件原理及下载脚本
  11. shell字符串截取掐头去尾操作
  12. 【学习笔记】Python基础入门知识笔记,万字攻略带你走进Python编程
  13. Java中文与Base64互转(解决中文乱码的问题)
  14. ime-mode 不支持Chrome | 输入框限制输入语言
  15. voronoi图编程构造_voronoi图的算法编程实现.doc
  16. 前端性能优化常用代码
  17. kali2.0安装flash插件
  18. Mac OSX系统下使用DosBox编写汇编
  19. 体温单怎么画 体温表_准备好承受体温-很多
  20. LAYOUT精益布局优化

热门文章

  1. TCP/IP 选项TcpTimedWaitDelay设置
  2. 新一代RPC框架-GRPC
  3. 如何使用postman带Token测试接口?
  4. 宝塔控制面板配置Nginx 安全证书
  5. 一个基于 SpringBoot2+redis+Vue 的商城管理系统,拼团、砍价、秒杀等都有,可二次开发接私活!...
  6. 缓存踩踏:Facebook史上最严重的宕机事件分析
  7. 代码调试神器:VS Code 开源新工具!
  8. Spring 最常用的 7 大类注解,女媛史上最强整理!
  9. 华为、阿里、京东停止社招转外包:头部公司们的谋局
  10. 20个令程序员泪流满面的瞬间