创建 缓存的字段
@Entity
public class NewsBean{
@Id(autoincrement = true)
private Long id;
private String title;
private String image;
private String desc;
}
点击Build---Rebuild--Project后 生成greendao包
创建工具类 增删改查
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import java.util.List;
import soexample.umeng.com.liujin20181121.greendao.DaoMaster;
import soexample.umeng.com.liujin20181121.greendao.NewsBeanDao;
public class NewsBeanJsonUtils {
private NewsBeanJsonUtils newsDao;
private static NewsBeanJsonUtils mNewsBeanJsonUtils;
private NewsBeanDao newsBeanDao;
public static NewsBeanJsonUtils getNewsBean(){
if (mNewsBeanJsonUtils==null){
mNewsBeanJsonUtils = new NewsBeanJsonUtils();
}
return mNewsBeanJsonUtils;
}
//初始化
public void init(Context context){
DaoMaster.DevOpenHelper helper = new DaoMaster.DevOpenHelper(context, "news");
SQLiteDatabase db = helper.getWritableDatabase();
DaoMaster mDaoMaster = new DaoMaster(db);
newsBeanDao = mDaoMaster.newSession().getNewsBeanDao();
}
//添加
public void insert(NewsBean newsBean){
newsBeanDao.insert(newsBean);
}
//查询全部
public List<NewsBean> queryAll(){
return newsBeanDao.loadAll();
}
//查询单个
public NewsBean query(String key){
return newsBeanDao.load(Long.parseLong(key));
}
//删除全部
public void deleteAll(){
newsBeanDao.deleteAll();
}
//删除单个
public void delete(String key){
newsBeanDao.deleteByKey(Long.parseLong(key));
}
//改
public void update(NewsBean newsBean){
newsBeanDao.update(newsBean);
}
}
在App中初始化init方法
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
Fresco.initialize(this);
//初始化init方法
NewsBeanJsonUtils.getNewsBean().init(this);
}
}
存储数据
NewsBean newsBean = new NewsBean();
newsBean.setImage(list1.get(i).getImages());
newsBean.setPrice(list1.get(i).getPrice()+"");
newsBean.setTitle(list1.get(i).getTitle());
//添加到newsBean
NewsBeanJsonUtils.getNewsBean().insert(newsBean);
取出数据 展示数据
List<NewsBean> newsBeans = NewsBeanJsonUtils.getNewsBean().queryAll();
mRecyclerView = (RecyclerView)get(R.id.recy);
HuanCunAdapter adapter = new HuanCunAdapter(context,newsBeans);
LinearLayoutManager manager = new LinearLayoutManager(context);
mRecyclerView.setLayoutManager(manager);
mRecyclerView.setAdapter(adapter);