看看这次能坚持学习多久,老咸鱼了
litepal
这玩意就是 用来操作数据库的
使用步骤
数据库的创建
首先要在build.gradle中导入依赖:
implementation 'org.litepal.guolindev:core:3.1.1'
-
在src—>main下new Directory 取名为assets
-
在assets下new file,取名为litepal.xml
-
往其中键入
<dbname></dbname>中的value是数据库的名称
<version></version>中的value是数据库的版本号
-
随后在AndroidMainfest.xml中的<application中键入
<application
android:name="org.litepal.LitePalApplication" -
然后新建一个类,这里以今天做天气预报的City为例,里面的每一个字段即对应表中的每一个列,类名City则为表名,这个City类要继承LitePalSupport。
public class City extends LitePalSupport {
private String city;
private String cityId;
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getCityId() {
return cityId;
}
public void setCityId(String cityId) {
this.cityId = cityId;
}
}
-
然后需要将City类添加到映射模型中,也就是最开始建的litepal.xml中,mapping标签中的class要完整到包名到我们创建的那个类
-
最后只需要进行一次任意的数据库操作或者对应的地方键入Connector.getDatabase();即可完成数据库的创建;我在这里是按书上的写个按钮然后设置监听,将Connector.getDatabase();键入。
添加数据、查询数据、删除数据
因为我是要做天气预报,所以今天这个没有学很多只学了最基本的一些
-
添加数据
这里我也是按书上的写个按钮监听然后键入
Book book = new Book();
book.setCity("北京");
book.setCityId("1");
book.save();
-
查询数据
我这边是加条件的查询对应的数据,也是写在按钮监听里面的
List<City> cities = LitePal.where("city = ?","北京").find(City.class);
for (City city : cities){
Log.d("selectBei",city.getCityId());
}
还有就是将表格里所有数据全遍历出来,循环打印出来
List<City> books = LitePal.findAll(City.class);
for (City City:books){
data.add(city.getName());
data.add(city.getAuthor());
}
for (String ccc:data){
Log.d("data",ccc);
}
-
删除数据
LitePal.deleteAll(City.class,"City = ?","北京");
自己想的天气预报
遇到的问题
书里面实体类是继承DataSupport后来百度后发现这个被弃用了,现在是继承LitePalSupport。
参考文献:
《第一行代码》(第二版)

浙公网安备 33010602011771号