Android中怎么利用LitePal对数据库进行操作,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
首先在app/build.grade文件中编辑
dependencies{
...
conmpile'org.litepal.android:core:1.5'
..
}
随后创建一个assets目录,创建一个litepal.xml
<?xml version="1.0" encoding="utf-8"?>
<litepal>
<dbname value="AbcStore" ></dbname>
<version value="2" ></version>
<list>
<mapping class="com.example.litepaltest.Book"></mapping>
</list>
</litepal>
然后在AndroidManifest.xml中添加代码
android:name="org.litepal.litePalApplication"
LitePal时对象关系映像(ORM)的模式,简单来说,就是将面向对象的语言和面向对象的数据库中建立一种映射关系,也就是说可以用面向对象的思维来操作数据库而不是再用SQLiteOpenHelper繁琐的步骤
创建一个Abc类
public class Abc extends DataSupport {
private int id;
private double price;
private int pages;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
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;
}
}
然后在litepal.xml中添加
<?xml version="1.0" encoding="utf-8"?>
<litepal>
<dbname value="AbcStore" ></dbname>
<version value="1" ></version>
<list>
<mapping class="com.example.litepaltest.Abc"></mapping>
</list>
</litepal>
然后来说说SQLiteOpenHelper的升级数据库机制,每次执行时都会drop掉数据库,然后重新创建,drop数据库的同时,里面的数据也丢失了,而在LitePal中升级数据库只需要修改所需要的内容,然后版本号加一,也就是
<?xml version="1.0" encoding="utf-8"?>
<litepal>
<dbname value="AbcStore" ></dbname>
<version value="2" ></version>
<list>
<mapping class="com.example.litepaltest.Abc"></mapping>
</list>
</litepal>
添加更新数据只需要,new一个Abc然后调用set就可以
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) {
Abc abc=new Abc();
abc.setname("litepal");
}
});
}}
删除数据则使用
DataSupport.deleteAll(Abc.class,"name=?","litepal")
查询数据
list<Abc> abc=DateSupport.findAll(Abc.class);
看完上述内容,你们掌握Android中怎么利用LitePal对数据库进行操作的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:http://blog.itpub.net/69917874/viewspace-2680054/