1.准备工作需要安装AS3.0 否则没法玩
2.套路出牌 引用库
//添加Android room 框架 implementation 'android.arch.persistence.room:runtime:1.0.0' annotationProcessor 'android.arch.persistence.room:compiler:1.0.0'3.创建数据对象表(javabean 模型)这里一个学生的为表
package com.example.qundui.myapplication.dbs; import android.arch.persistence.room.ColumnInfo; import android.arch.persistence.room.Entity; import android.arch.persistence.room.PrimaryKey; /** * Created by gsc on 2017/11/24. */ @Entity(tableName = "stu") public class Student { @PrimaryKey(autoGenerate = true) private int id ;//添加主键自增长 @ColumnInfo(name = "name") private String name;//添加字段name @ColumnInfo(name ="score" ) private float score;//添加字段score public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public float getScore() { return score; } public void setScore(float score) { this.score = score; } public Student(){ } }4 .创建一个数据库操作Dao的帮助类获取Dao
/** * Created by qundui on 2017/11/24. */ @Database(entities = {Student.class}, version = 1) public abstract class StudentDB extends RoomDatabase { public abstract StuDao getStudentDao(); }5.创建DAO 接口
package com.example.qundui.myapplication.dbs; import android.arch.persistence.room.Dao; import android.arch.persistence.room.Delete; import android.arch.persistence.room.Insert; import android.arch.persistence.room.OnConflictStrategy; import android.arch.persistence.room.Query; import android.arch.persistence.room.Update; import java.util.List; /** * Created by qundui on 2017/11/24. */ @Dao public interface StuDao { /** * 查询 * * @return */ @Query("SELECT * FROM stu") public List<Student> getAllStudents(); /** * 添加 * * @param students */ @Insert(onConflict = OnConflictStrategy.REPLACE) public void insertUser(Student... students); /** * 更新 * * @param students */ @Update public void updateUser(Student... students); /** * 删除 * * @param students */ @Delete public void deleteUser(Student... students); }
6,关键调用处使用(注意不能再主线程操作耗时你懂得......)
private void initdb() { StudentDB mUserDatabase = Room.databaseBuilder(getApplicationContext(), StudentDB.class, "stu").build(); mUserDao = mUserDatabase.getStudentDao(); // insertdb(mUserDao); } private void insertdb(StuDao mUserDao) { Student student=new Student(); student.setName("fdy"); student.setScore(20.0f); mUserDao.insertUser(student); System.out.println("----db-=====0K--------"); }查询 修改删除 雷同不做说明了