一.配置LitePal
1.在app/build.gradle文件中的dependencies闭包添加compile 'org.litepal.android:core:1.6.0'
2.右击app/src/main-new-Directory,在生产xml文件
<?xml version="1.0" encoding="utf-8"?>
<resources>
<litepal>
<dbname value = "BookStore"></dbname>
<version value = "1"></version>
<list>
</list>
</litepal>
</resources>
3.在AndroidManifest.xml中的application添加 android:name="org.litepal.LitePalApplication"
二.创建和升级数据库
1.类对应数据库中的表,而类中的每一个字段分别对应了表的每一个列。
public class Book {
private int id;
private String author;
private double price;
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;
}
2.将Book类添加到映射模型列表中
<version value = "1"></version>
<list>
<mapping class= "com.example.litepaltest.Book"></mapping>
</list>
3.执行完以上步骤,现在只要进行任意一次数据库的操作,BookStore.db数据库就会自动创建。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button) findViewById(R.id.create_database);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
LitePal.getDatabase(); // 创建数据库
}
});
}
三.使用LitePal玩数据
1.继承DataSupport类
public class Book extends DataSupport{
2.添加数据
Button button1 = (Button) findViewById(R.id.add_data);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Book book = new Book();
book.setName("KG");
book.setAuthor("CZK");
book.setId(22);
book.setPages(250);
book.setPrice(520);
book.setPress("unkonw");
book.save();
}
});
3.更新数据
Button button2 = (Button) findViewById(R.id.updata_daata);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Book book =new Book();
book.setName("MG");
book.setAuthor("LMX");
book.setId(22);
book.setPrice(250);
book.setPages(520);
book.setPress("unknow");
book.save();
book.setPrice(110);
book.save();//直接更新当前的数据
}
});
或者
Button button2 = (Button) findViewById(R.id.updata_daata);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Book book =new Book();
book.setName("MG");
book.setAuthor("LMX");
book.setId(22);
book.setPrice(250);
book.setPages(520);
book.setPress("unknow");
book.save();
book.setPrice(520);
book.setPages(250);
book.updateAll("name=? and author = ?","LMX","MG");
}
});
4.删除数据
使用button.deleteAll(Book.class,"prive<?","15")即可。