RefreshpresenterImp public class RefreshpresenterImp implements Refreshpresenter{ private RefreshView refreshView; private final RefreshModelImp refreshModelImp; private Context context; private MyDao dao; public RefreshpresenterImp(RefreshView refreshView, Context context) { this.refreshView = refreshView; this.context = context; refreshModelImp = new RefreshModelImp(); dao = new MyDao(context); } @Override public void showData(final String page) { boolean connect = NetStateUtils.isConnect(context); Log.e("JBK",connect+""); if(connect){ refreshModelImp.showData(page, new OnNetListener() { @Override public void OnSuccess(String result) { String replace = result.replace("null(", "").replace(")", ""); dao.insert(Api.REFRESH_URL + "?type=501" + page,replace); RefreshBean refreshBean = new Gson().fromJson(replace, RefreshBean.class); List<RefreshBean.DataBean> data = refreshBean.getData(); refreshView.showData(data); } @Override public void OnSuccess(byte[] bytes) { } @Override public void onFailed(Exception e) { } }); }else{ refreshView.showToast("没有网络", Toast.LENGTH_SHORT); String select = dao.select(Api.REFRESH_URL + "?type=501" + page); RefreshBean refreshBean = new Gson().fromJson(select, RefreshBean.class); List<RefreshBean.DataBean> data = refreshBean.getData(); refreshView.showData(data); } } public void closeView(){ if(refreshView != null){ refreshView = null; } } }
Refreshpresenter public interface Refreshpresenter { void showData(String page); }
RefreshModelImp public class RefreshModelImp implements RefreshModel{ @Override public void showData(String page, OnNetListener onNetListener) { OkhttpUtils.getInstener().doGet(Api.REFRESH_URL+"?type=50"+page,onNetListener); } }
MyDao public class MyDao { private MyHelper myHelper; public MyDao(Context context) { myHelper = new MyHelper(context); } //添加 public void insert(String path,String json){ SQLiteDatabase sqLiteDatabase = myHelper.getWritableDatabase(); //添加之前把相同的数据删除 sqLiteDatabase.delete("news","urlpath = ?",new String[]{path}); //进行数据库的添加 ContentValues values = new ContentValues(); values.put("urlpath",path); values.put("jsondata",json); sqLiteDatabase.insert("news",null,values); Log.e("JBK","添加成功"); } //查询 public String select(String path){ String data = ""; SQLiteDatabase sqLiteDatabase = myHelper.getWritableDatabase(); Cursor cursor = sqLiteDatabase.query("news", null, "urlpath = ?", new String[]{path}, null, null, null); while (cursor.moveToNext()){ data = cursor.getString(cursor.getColumnIndex("jsondata")); } return data; } }
MyHelper public class MyHelper extends SQLiteOpenHelper { public MyHelper(Context context) { super(context, "mydb", null, 1); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL("create table news(id integer primary key autoincrement,urlPath text,jsondata text)"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } }