GreenDao缓存数据,展示数据

本文介绍了如何利用GreenDao在Android中实现数据缓存。首先创建Bean层并实现相关方法,确保包含toString方法。然后建立DaoManager封装类。接下来,创建适配器,并在主界面通过DaoManager的单例模式操作数据,包括添加数据到集合以及查询并展示数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

新建一个Bean层,并实现里面的方法,编译完之后记得加上toString方法,以便添加数据

@Entity
public class GreenBean {
    @Id(autoincrement = true)
    private Long id;
    private String title;
    private int price;
    private String img;
    }

创建一个DaoManger封装类

package jiaoyibo.bawei.com.zhanshi02;

import android.content.Context;

import jiaoyibo.bawei.com.zhanshi02.db.DaoMaster;
import jiaoyibo.bawei.com.zhanshi02.db.DaoSession;

/**
 * <p>文件描述:<p>
 * <p>作者:JYB<p>
 * <p>创建时间:2019/3/17<p>
 * <p>更改时间:2019/3/17<p>
 * <p>版本号:1<p>
 */
public class DaoManger {
    public static DaoManger mInstaces;
    private final DaoSession daoSession;
    private DaoManger(Context context){
        daoSession = DaoMaster.newDevSession(context, "bw.db");
    }
    public static DaoManger getmInstaces(Context context){
        if (mInstaces == null) {
            synchronized (DaoManger.class){
                if (mInstaces == null) {
                    mInstaces = new DaoManger(context);
                }
            }
        }
        return mInstaces;
    }
    public DaoSession daoSession(){
        return daoSession;
    }
}

接着就是创建适配器,创建完后,到主页面进行操作
先在主页面调用DaoManger的单利模式

		DaoSession daoSession = DaoManger.getmInstaces(this).daoSession();
        greenBeanDao = daoSession.getGreenBeanDao();

往集合里面添加数据

	for(int i=0;i<spus.size();i++){
            String name = spus.get(i).getName();
            int praise_num = spus.get(i).getPraise_num();
            String url = spus.get(i).getPic_url();
            greenBeanDao.insert(new GreenBean(null, name, praise_num, url));
        }

查询并展示

		//查询方法
            List<GreenBean> list = greenBeanDao.queryBuilder().build().list();
            Toast.makeText(this,list+"",Toast.LENGTH_SHORT).show();
            //获取适配器
            GreenAdapter greenAdapter = new GreenAdapter(this);
            //取出数据
            greenAdapter.setList(list);
            //设置适配器
            rev.setAdapter(greenAdapter);
            //设置布局样式
            rev.setLayoutManager(new LinearLayoutManager(this));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值