1. 首先,新建一个litepal的空项目
2. 布局(几个基本按钮)activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/create_database"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Create database" />
<Button
android:id="@+id/add_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Add data" />
<Button
android:id="@+id/restore_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Restore data"/>
<Button
android:id="@+id/updata_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Up data" />
<Button
android:id="@+id/query_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Query data" />
<Button
android:id="@+id/save_data"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Save data"/>
</LinearLayout>
3. 在build.gradle中,加入以下语句
implementation 'org.litepal.android:core:1.6.1'
4.新建assets文件夹
5. 在assets文件夹中添加litepal.xml文件。
<?xml version="1.0" encoding="utf-8"?>
<litepal>
<dbname value="person" ></dbname>
<version value="1" ></version>
<list>
<mapping class="com.example.litepal.db.Person"></mapping>
</list>
</litepal>
6. 新建db包
7.在db包中,新建Java类Person
package com.example.litepal.db;
import org.litepal.crud.DataSupport;
public class Person extends DataSupport {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
6.在MainActivity.java中,加入按钮功能(增、删、改、查)
package com.example.litepal;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import com.example.litepal.db.Person;
import org.litepal.LitePal;
import org.litepal.crud.DataSupport;
import java.util.List;
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){
Person person = new Person();
person.setName("张三");
person.setAge(20);
person.save();
}
});
//查询数据
Button queryData = (Button)findViewById(R.id.query_data);
queryData.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
List<Person>personList = DataSupport.findAll(Person.class);
for(Person person:personList){
Log.d("MainActivity","person name is "+ person.getName());
Log.d("MainActivity","person age is "+ person.getAge());
}
}
});
//修改数据
Button updateData = (Button)findViewById(R.id.updata_data);
updateData.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
Person person = new Person();
//将张三的年龄修改为26
person.setAge(26);
person.updateAll("name = ?","张三");
}
});
//删除数据
Button restoreData = (Button)findViewById(R.id.restore_data);
restoreData.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
DataSupport.deleteAll(Person.class, "age < ?", "20");//删除年龄小于20 的
}
});
}
}