本文共 1414 字,大约阅读时间需要 4 分钟。
官方文档参考
val db = Room.databaseBuilder( this, DaoFactory::class.java, "application_db_11" ).allowMainThreadQueries() .build() val dao = db.StudentDao()// dao.insertStudent(Student(1, "hello world", "aaa")) Log.i("studentInfo ", dao.getAll().toString())
实体类:
package com.lyr.myapplication.db.entityimport androidx.room.ColumnInfoimport androidx.room.Entityimport androidx.room.PrimaryKey/** * @Author lyr * @create 2020/10/15 14:15 */@Entity(tableName = "t_student")data class Student( @PrimaryKey val id: Int, @ColumnInfo val studentName: String, @ColumnInfo val content: String)
定义:
package com.lyr.myapplication.db.daoimport androidx.room.Daoimport androidx.room.Insertimport androidx.room.Queryimport com.lyr.myapplication.db.entity.Student/** * @Author lyr * @create 2020/10/15 14:26 */@Daointerface StudentDao{ @Query("select * from t_student") fun getAll():List@Insert fun insertStudent(vararg students:Student)}
抽象工厂:
package com.lyr.myapplication.dbimport androidx.room.Databaseimport androidx.room.RoomDatabaseimport com.lyr.myapplication.db.dao.StudentDaoimport com.lyr.myapplication.db.entity.Student/** * @Author lyr * @create 2020/10/15 14:28 */@Database(entities = arrayOf(Student::class),version = 1)abstract class DaoFactory: RoomDatabase (){ abstract fun StudentDao():StudentDao}
转载地址:http://ezyzi.baihongyu.com/