package com.newglee.video.util;
import java.util.ArrayList;
import java.util.List;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
public class DBManager {
private SQLiteDatabase db;
public DBManager(Context context) {
db = context.openOrCreateDatabase("videoinfo.db", Context.MODE_PRIVATE,
null);
}
public void add(List<BoxVideo> videos) {
try {
db.execSQL("create table if not exists video"
+ "(_id integer primary key autoincrement,name varchar,type integer,imgurl varchar,"
+ "grade float,director varchar,actor varchar,playtimes integer,"
+ "commenttimes integer,url varchar,intro varchar)");
ContentValues value = new ContentValues();
for (BoxVideo video : videos) {
value.put("name", video.getVideoName());
value.put("type", video.getVideoType());
value.put("imgurl", video.getVideoImgUrl());
value.put("grade", video.getVideoGrade());
value.put("director", video.getVideoDirector());
value.put("actor", video.getVideoActor());
value.put("playtimes", video.getVideoPlayTimes());
value.put("commenttimes", video.getVideoCommentTimes());
value.put("url", video.getVideoUrl());
value.put("intro", video.getVideoIntro());
db.insert("video", null, value);
value.clear();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
}
}
public List<BoxVideo> query() {
ArrayList<BoxVideo> videos = new ArrayList<BoxVideo>();
Cursor cursor = queryTheCursor();
while (cursor.moveToNext()) {
BoxVideo video = new BoxVideo();
video.setVideoName(cursor.getString(cursor.getColumnIndex("name")));
video.setVideoUrl(cursor.getString(cursor.getColumnIndex("url")));
video.setVideoImgUrl(cursor.getString(cursor
.getColumnIndex("imgurl")));
video.setVideoType(cursor.getInt(cursor.getColumnIndex("type")));
video.setVideoGrade(cursor.getFloat(cursor.getColumnIndex("grade")));
video.setVideoDirector(cursor.getString(cursor
.getColumnIndex("director")));
video.setVideoActor(cursor.getString(cursor.getColumnIndex("actor")));
video.setVideoPlayTimes(cursor.getInt(cursor
.getColumnIndex("playtimes")));
video.setVideoCommentTimes(cursor.getInt(cursor
.getColumnIndex("commenttimes")));
video.setVideoIntro(cursor.getString(cursor.getColumnIndex("intro")));
video.setVideoId(cursor.getInt(cursor.getColumnIndex("_id")));
videos.add(video);
}
cursor.close();
return videos;
}
public Cursor queryTheCursor() {
Cursor cur = db.rawQuery("SELECT * FROM video", null);
return cur;
}
public BoxVideo queryById(int id) {
BoxVideo video = new BoxVideo();
Cursor cursor =db.rawQuery("select * from video where _id=?", new String[]{String.valueOf(id)});
if (cursor.moveToFirst()) {
video.setVideoName(cursor.getString(cursor.getColumnIndex("name")));
video.setVideoUrl(cursor.getString(cursor.getColumnIndex("url")));
video.setVideoImgUrl(cursor.getString(cursor
.getColumnIndex("imgurl")));
video.setVideoType(cursor.getInt(cursor.getColumnIndex("type")));
video.setVideoGrade(cursor.getFloat(cursor.getColumnIndex("grade")));
video.setVideoDirector(cursor.getString(cursor
.getColumnIndex("director")));
video.setVideoActor(cursor.getString(cursor.getColumnIndex("actor")));
video.setVideoPlayTimes(cursor.getInt(cursor
.getColumnIndex("playtimes")));
video.setVideoCommentTimes(cursor.getInt(cursor
.getColumnIndex("commenttimes")));
video.setVideoIntro(cursor.getString(cursor.getColumnIndex("intro")));
return video;
}
return null;
}
public void closeDB() {
db.close();
}
}
记下代码以备后用