package com.llf.common.db; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import com.llf.common.entity.JcodeEntity; import java.util.ArrayList; import java.util.List; /** * Created by llf on 2017/3/22. * 发现操作工具类 */ public class JcodeDao { private DBHelper mSqliteOpenHelp; public JcodeDao(Context context) { mSqliteOpenHelp = new DBHelper(context); } /** * 增加一条记录 */ public long insertRecord(JcodeEntity jcodeEntity) { if (queryById(jcodeEntity.getTitle()) != null) { return -1; } SQLiteDatabase sqLiteDatabase = mSqliteOpenHelp.getWritableDatabase(); ContentValues values = new ContentValues(); values.put("imgUrl", jcodeEntity.getImgUrl()); values.put("title", jcodeEntity.getTitle()); values.put("detailUrl", jcodeEntity.getDetailUrl()); values.put("content", jcodeEntity.getContent()); values.put("author", jcodeEntity.getAuthor()); values.put("authorImg", jcodeEntity.getAuthorImg()); values.put("watch", jcodeEntity.getWatch()); values.put("comments", jcodeEntity.getComments()); values.put("like", jcodeEntity.getLike()); long rowId = sqLiteDatabase.insert("jcode", "imgUrl", values); sqLiteDatabase.close(); return rowId; } /** * 删除一条记录 * 返回值是受影响的行数,-1表示失败 */ public int deleteRecord(String title) { SQLiteDatabase sqLiteDatabase = mSqliteOpenHelp.getWritableDatabase(); int deleteResult = sqLiteDatabase.delete("jcode", "title=?", new String[]{title}); sqLiteDatabase.close(); return deleteResult; } /** * 查询 */ public List<JcodeEntity> queryRecords() { List<JcodeEntity> datas = new ArrayList<>(); SQLiteDatabase readableDatabase = mSqliteOpenHelp.getReadableDatabase(); Cursor cursor = readableDatabase.rawQuery("select * from jcode", null); while (cursor.moveToNext()) { JcodeEntity entity = new JcodeEntity(); entity.setImgUrl(cursor.getString(cursor.getColumnIndex("imgUrl"))); entity.setTitle(cursor.getString(cursor.getColumnIndex("title"))); entity.setDetailUrl(cursor.getString(cursor.getColumnIndex("detailUrl"))); entity.setContent(cursor.getString(cursor.getColumnIndex("content"))); entity.setAuthor(cursor.getString(cursor.getColumnIndex("author"))); entity.setAuthorImg(cursor.getString(cursor.getColumnIndex("authorImg"))); entity.setWatch(cursor.getString(cursor.getColumnIndex("watch"))); entity.setComments(cursor.getString(cursor.getColumnIndex("comments"))); entity.setLike(cursor.getString(cursor.getColumnIndex("like"))); datas.add(entity); } cursor.close(); readableDatabase.close(); return datas; } public JcodeEntity queryById(String title) { JcodeEntity entity = null; SQLiteDatabase readableDatabase = mSqliteOpenHelp.getReadableDatabase(); Cursor cursor = readableDatabase.query("jcode", new String[]{"title", "detailUrl", "content"}, "title=?", new String[]{title}, null, null, null); if (cursor.moveToNext()) { entity = new JcodeEntity(); entity.setTitle(cursor.getString(cursor.getColumnIndex("title"))); entity.setDetailUrl(cursor.getString(cursor.getColumnIndex("detailUrl"))); entity.setContent(cursor.getString(cursor.getColumnIndex("content"))); } return entity; } /** * 修改记录 */ public int updateRecord(JcodeEntity jcodeEntity, String id) { SQLiteDatabase sqLiteDatabase = mSqliteOpenHelp.getWritableDatabase(); ContentValues values = new ContentValues(); values.put("imgUrl", jcodeEntity.getImgUrl()); values.put("title", jcodeEntity.getTitle()); values.put("detailUrl", jcodeEntity.getDetailUrl()); values.put("content", jcodeEntity.getContent()); values.put("author", jcodeEntity.getAuthor()); values.put("authorImg", jcodeEntity.getAuthorImg()); values.put("watch", jcodeEntity.getWatch()); values.put("comments", jcodeEntity.getComments()); values.put("like", jcodeEntity.getLike()); int updateResult = sqLiteDatabase.update("jcode", values, "id=?", new String[]{String.valueOf(id)}); sqLiteDatabase.close(); return updateResult; } }