LitePal 数据库基本操作

LitePal官网

1、导入依赖

//LitePal数据库 Kotlin版--java版看官网
implementation 'org.litepal.android:kotlin:3.0.0'

2、创建xml数据库配置

创建基类=数据库表名+字段名

litepal.xml数据库配置

 

3、在Application中初始化LitePal

LitePal.initialize(this) //初始化数据库

4、操作数据库

增:

 var userBean = UserBean("张三")
 val save = userBean.save()

删:

 val deleteAll = LitePal.deleteAll(UserBean::class.java, "userName = ?", "李四")

改:

val contentValues = ContentValues()
contentValues.put("userName","修改的新内容")
val updateAll = LitePal.updateAll(UserBean::class.java, contentValues, "userName=?", "老内容")

查:

LitePal.where("userName like ?","%${et_main.text}%").limit(3).findAsync<UserBean>().listen {
     var stringBuffer = StringBuffer()
     it.forEach {
        stringBuffer.append("${it.toString()}\n")
     }
     tv_main.text = stringBuffer
 }

5、更新数据库

 

6、贴下代码-方便自己复制

app/src/main/assets/litepal.xml

<?xml version="1.0" encoding="utf-8"?>
<litepal>
    <!--设定数据库的名字-->
    <dbname value="LitePalDemo"></dbname>

    <!--设定数据库的版本号[需要纯数字]-->
    <version value="1"></version>

    <!--用于设定所有的映射模型-->
    <list>
        <mapping class="com.zxy.litepaldemo.UserBean"/>
    </list>
</litepal>
UserBean.kt基类
import org.litepal.crud.LitePalSupport

/**
 * Created by zxy on 2019/9/24-13:36
 * Class functions
 * ******************************************
 * *
 * ******************************************
 */

data class UserBean(val userName: String) : LitePalSupport()

MainActivity.kt

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }

    /**
     * 增加
     * @param view View
     */
    fun onAdd(view: View) {
        var userBean = UserBean("张三")
        val save = userBean.save()
    }

    /**
     * 删除
     * @param view View
     */
    fun onDelete(view: View) {
        val deleteAll = LitePal.deleteAll(UserBean::class.java, "userName = ?", "李四")
    }

    /**
     * 修改
     * @param view View
     */
    fun onUpdata(view: View) {
        val contentValues = ContentValues()
        contentValues.put("userName","修改的新内容")
        val updateAll = LitePal.updateAll(UserBean::class.java, contentValues, "userName=?", "老内容")
    }

    /**
     * 查询
     * @param view View
     */
    fun onSelect(view: View) {
            LitePal.where("userName like ?","%${et_main.text}%").limit(3).findAsync<UserBean>().listen {
                var stringBuffer = StringBuffer()
                it.forEach {
                    stringBuffer.append("${it.toString()}\n")
                }
                tv_main.text = stringBuffer
            }
    }

}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值