一.为什么要运用litepal
因为litepal是一种数据库工具,利用它可以很轻松的解决数据库问题,减少代码量,节约时间
二.如何应用litepal
1.首先在添加依赖环境
compile 'org.litepal.android:core:1.6.1'
2.之后在project工程下找到app/src下创建一个assets文件夹,并创一个litepal.xml的file文件。
3.在其中把下文代码复制粘贴
<?xml version="1.0" encoding="utf-8"?>
<litepal>
<dbname value="demo" />
<dbname value="demo" />
<version value="1" />
<version value="1" />
<list>
<mapping class="org.litepal.litepalsample.model.Album" />//这里是自己创建的类的名称
<mapping class="org.litepal.litepalsample.model.Song" />
</list>
</litepal>
4.在布局中写几个按钮的布局,具体的就不在这里演示了
5.在Activity中写如下代码
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private EditText albunet;
private Button addbtn;
private Button delbtn;
private Button xiugaibtn;
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// SQLiteDatabase db = LitePal.getDatabase();
BindId();
}
@SuppressLint("WrongViewCast")
private void BindId() {
albunet = findViewById(R.id.ll_et_album);
addbtn = findViewById(R.id.add_blum_cc);
xiugaibtn = findViewById(R.id.add_blum_cc1);
delbtn = findViewById(R.id.add_blum_cc2);
btn = findViewById(R.id.chaxun_btn);
addbtn.setOnClickListener(this);
xiugaibtn.setOnClickListener(this);
delbtn.setOnClickListener(this);
btn.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.add_blum_cc:
String cmc = albunet.getText().toString();
float price = 109.9f;
Album album = new Album();
album.setName(cmc);
album.setPrice(price);
album.save();//保存至数据库
break;
case R.id.add_blum_cc1:
Album album1 = DataSupport.find(Album.class, 1);
album1.setName("cmc");
album1.save();
break;
case R.id.add_blum_cc2:
// int row=DataSupport.delete(Album.class,1);//只是删除一行数据
int row = DataSupport.deleteAll(Album.class, "id>?", "3");//删除3行数据
Toast.makeText(this, "您删除了" + row + "行数据", Toast.LENGTH_SHORT).show();
break;
case R.id.chaxun_btn:
// List<Album> albumList=DataSupport.findAll(Album.class);
List<Album> albumList = DataSupport.where("id<?", "4").find(Album.class);
for (Album a :
albumList) {
Log.e("main", a.getName() + "********");
}
break;
}
}
}