AS数据库封装

Android Studio 中数据库进行封装使用

UserTable

//创建表
public class UserTable {

    public static final String TAB_NAME = "user";
    public static final String ID = "id";
    public static final String NAME = "name";
    public static final String PASSWORD = "password";
    
    public static final String CREATE_TAB = "create table "+TAB_NAME+" ("+ID+" Integer primary key autoincrement,"+NAME+" varchar(30),"+PASSWORD+" varchar(30) );";


}

UserDB 创建数据库

//表的数据库创建
public class UserDB extends SQLiteOpenHelper {

    public UserDB(@Nullable Context context) {
        super(context,"xiaoming.db",null,1);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(UserTable.CREATE_TAB);

    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    }
}

usertabledao
操作类 (增删改查)

//操作类
public class UserTableDao {
    private UserDB mHelper;

    public UserTableDao(Context context) {
        mHelper = new UserDB(context);
    }

    //添加用户
    public void addUser(UserInfo userInfo) {
        //获取数据库对象
        SQLiteDatabase db = mHelper.getReadableDatabase();
        ContentValues values = new ContentValues();
        values.put(UserTable.ID, userInfo.getId());
        values.put(UserTable.NAME, userInfo.getName());
        values.put(UserTable.PASSWORD, userInfo.getPassword());

        db.insert(UserTable.TAB_NAME, null, values);
    }

    //删除
    public int deleteUser(String id) {
        if (id == null) {
            return -1;
        }
        SQLiteDatabase db = mHelper.getReadableDatabase();

        int deleteId = db.delete(UserTable.TAB_NAME, UserTable.ID + "=?", new String[]{id});
        return deleteId;
    }

    //修改
    public int updata(UserInfo userInfo,String id){
        if (id == null){
            return  -1;
        }
        ContentValues values = new ContentValues();
        SQLiteDatabase db = mHelper.getReadableDatabase();
        values.put(UserTable.NAME,userInfo.getName());
        values.put(UserTable.PASSWORD,userInfo.getPassword());
        int updateUser = db.update(UserTable.TAB_NAME, values, id, null);

        return updateUser;
    }

    //查询
    public List<UserInfo> getUserMsg() {

        List<UserInfo> userInfos = new ArrayList<>();
        //获取数据库对象
        SQLiteDatabase db = mHelper.getReadableDatabase();
        String sqlCheck = "select  * from " + UserTable.TAB_NAME;
        Cursor cursor = db.rawQuery(sqlCheck, null);

        if (cursor != null) {
            while (cursor.moveToNext()) {
                UserInfo userInfo = new UserInfo();
                userInfo.setId(cursor.getString(cursor.getColumnIndex(UserTable.ID)));
                userInfo.setName(cursor.getString(cursor.getColumnIndex(UserTable.NAME)));
                userInfo.setPassword(cursor.getString(cursor.getColumnIndex(UserTable.PASSWORD)));
                userInfos.add(userInfo);
            }
            cursor.close();
        }

        return userInfos;
    }

}

Model(初始化UserTableDao)

public class Model {
    
    private static Model model = new Model();
    private UserTableDao userTableDao;
    private Model(){

    }

    public static Model getInstance(){
        return model;
    }

    //初始化
    public void init(Context context){
        userTableDao = new UserTableDao(context);
    }

    public UserTableDao getUserTableDao(){
        return userTableDao;
    }

}


Application(model进行初始化)

public class MyApplication extends Application {

    private static Context context;

    @Override
    public void onCreate() {
        super.onCreate();
        context = this;
        Model.getInstance().init(context);
    }

    public static Context getContext(){
        return context;
    }
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值