src\MyApplication\app\src\main\java\com\example\administrator\myapplication\db\DatabaseHelper.java
This commit is contained in:
parent
d043fb64a3
commit
07fb02b92d
|
@ -0,0 +1,37 @@
|
|||
package com.example.administrator.myapplication.db;
|
||||
|
||||
import android.content.Context;
|
||||
import android.database.sqlite.SQLiteDatabase;
|
||||
import android.database.sqlite.SQLiteOpenHelper;
|
||||
|
||||
public class DatabaseHelper extends SQLiteOpenHelper {
|
||||
|
||||
public static final String COOLNOTE_DATABASE_NAME = "coolnote";
|
||||
|
||||
public static final String NOTE_TABLE_NAME = "htq_Notebook";
|
||||
|
||||
public static final String CREATE_NOTE_TABLE = "create table "
|
||||
+ NOTE_TABLE_NAME
|
||||
+ " (_id integer primary key autoincrement, objectid text, iid integer,"
|
||||
+ " time varchar(10), date varchar(10), content text, color integer)";
|
||||
|
||||
public static final String NEWS_LIST = "osc_news_list";
|
||||
|
||||
public static final String CREATE_NEWS_LIST_TABLE = "create table "
|
||||
+ NOTE_TABLE_NAME + "(" + "_id integer primary key autoincrement, "
|
||||
+ "news_id interger, title varchar(10), " + ")";
|
||||
|
||||
public DatabaseHelper(Context context) {
|
||||
super(context, COOLNOTE_DATABASE_NAME, null, 1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreate(SQLiteDatabase db) {
|
||||
db.execSQL(CREATE_NOTE_TABLE);
|
||||
// db.execSQL(CREATE_NEWS_LIST_TABLE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}
|
||||
|
||||
}
|
|
@ -0,0 +1,180 @@
|
|||
package com.example.administrator.myapplication.db;
|
||||
|
||||
import android.content.Context;
|
||||
import android.database.Cursor;
|
||||
import android.database.sqlite.SQLiteDatabase;
|
||||
|
||||
|
||||
import com.example.administrator.myapplication.entity.NotebookData;
|
||||
import com.example.administrator.myapplication.utils.AccountUtils;
|
||||
import com.example.administrator.myapplication.utils.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class NoteDatabase {
|
||||
private final DatabaseHelper dbHelper;
|
||||
|
||||
public NoteDatabase(Context context) {
|
||||
super();
|
||||
dbHelper = new DatabaseHelper(context);
|
||||
}
|
||||
|
||||
/**
|
||||
* 增
|
||||
*
|
||||
* @param data
|
||||
*/
|
||||
public void insert(NotebookData data) {
|
||||
String sql = "insert into " + DatabaseHelper.NOTE_TABLE_NAME;
|
||||
|
||||
sql += "(_id, objectid, iid, time, date, content, color) values(?, ?, ?, ?, ?, ?, ?)";
|
||||
|
||||
SQLiteDatabase sqlite = dbHelper.getWritableDatabase();
|
||||
sqlite.execSQL(sql, new String[] { data.getId() + "",
|
||||
data.getIid() + "", data.getObjectId(), data.getUnixTime() + "", data.getDate(),
|
||||
data.getContent(), data.getColor() + "" });
|
||||
sqlite.close();
|
||||
}
|
||||
|
||||
/**
|
||||
* 删
|
||||
*
|
||||
* @param id
|
||||
*/
|
||||
public void delete(int id) {
|
||||
SQLiteDatabase sqlite = dbHelper.getWritableDatabase();
|
||||
String sql = ("delete from " + DatabaseHelper.NOTE_TABLE_NAME + " where _id=?");
|
||||
sqlite.execSQL(sql, new Integer[] { id });
|
||||
sqlite.close();
|
||||
}
|
||||
|
||||
/**
|
||||
* 改
|
||||
*
|
||||
* @param data
|
||||
*/
|
||||
public void update(NotebookData data) {
|
||||
SQLiteDatabase sqlite = dbHelper.getWritableDatabase();
|
||||
String sql = ("update " + DatabaseHelper.NOTE_TABLE_NAME + " set iid=?, objectid=?, time=?, date=?, content=?, color=? where _id=?");
|
||||
sqlite.execSQL(sql,
|
||||
new String[] { data.getIid() + "", data.getObjectId() + "", data.getUnixTime() + "",
|
||||
data.getDate(), data.getContent(),
|
||||
data.getColor() + "", data.getId() + "" });
|
||||
sqlite.close();
|
||||
}
|
||||
|
||||
public List<NotebookData> query() {
|
||||
return query(" ");
|
||||
}
|
||||
|
||||
/**
|
||||
* 查
|
||||
*
|
||||
* @param where
|
||||
* @return
|
||||
*/
|
||||
public List<NotebookData> query(String where) {
|
||||
SQLiteDatabase sqlite = dbHelper.getReadableDatabase();
|
||||
ArrayList<NotebookData> data = null;
|
||||
data = new ArrayList<NotebookData>();
|
||||
Cursor cursor = sqlite.rawQuery("select * from "
|
||||
+ DatabaseHelper.NOTE_TABLE_NAME + where, null);
|
||||
for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) {
|
||||
NotebookData notebookData = new NotebookData();
|
||||
notebookData.setId(cursor.getInt(0));
|
||||
notebookData.setObjectId(cursor.getString(1));
|
||||
notebookData.setIid(cursor.getInt(2));
|
||||
notebookData.setUnixTime(cursor.getString(3));
|
||||
notebookData.setDate(cursor.getString(4));
|
||||
notebookData.setContent(cursor.getString(5));
|
||||
notebookData.setColor(cursor.getInt(6));
|
||||
data.add(notebookData);
|
||||
}
|
||||
if (!cursor.isClosed()) {
|
||||
cursor.close();
|
||||
}
|
||||
sqlite.close();
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
/**
|
||||
* 重置
|
||||
*
|
||||
* @param datas
|
||||
*/
|
||||
public void reset(List<NotebookData> datas) {
|
||||
if (datas != null) {
|
||||
SQLiteDatabase sqlite = dbHelper.getWritableDatabase();
|
||||
// 删除全部
|
||||
sqlite.execSQL("delete from " + DatabaseHelper.NOTE_TABLE_NAME);
|
||||
// 重新添加
|
||||
for (NotebookData data : datas) {
|
||||
insert(data);
|
||||
}
|
||||
sqlite.close();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存一条数据到本地(若已存在则直接覆盖)
|
||||
*
|
||||
* @param data
|
||||
*/
|
||||
public void save(NotebookData data) {
|
||||
List<NotebookData> datas = query(" where _id=" + data.getId());
|
||||
if (datas != null && !datas.isEmpty()) {
|
||||
update(data);
|
||||
} else {
|
||||
insert(data);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// /**
|
||||
// * 合并一条数据到本地(通过更新时间判断仅保留最新)
|
||||
// *
|
||||
// * @param data
|
||||
// * @return 数据是否被合并了
|
||||
// */
|
||||
// public boolean merge(NotebookData data) {
|
||||
// Cursor cursor = sqlite.rawQuery(
|
||||
// "select * from " + DatabaseHelper.NOTE_TABLE_NAME
|
||||
// + " where _id=" + data.getId(), null);
|
||||
// NotebookData localData = new NotebookData();
|
||||
// // 本循环其实只执行一次
|
||||
// for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) {
|
||||
// localData.setId(cursor.getInt(0));
|
||||
// localData.setIid(cursor.getInt(1));
|
||||
// localData.setUnixTime(cursor.getString(2));
|
||||
// localData.setDate(cursor.getString(3));
|
||||
// localData.setContent(cursor.getString(4));
|
||||
// localData.setColor(cursor.getInt(5));
|
||||
// }
|
||||
// // 是否需要合这条数据
|
||||
// boolean isMerge = localData.getUnixTime() < data.getUnixTime();
|
||||
// if (isMerge) {
|
||||
// save(data);
|
||||
// }
|
||||
// return isMerge;
|
||||
// }
|
||||
|
||||
public void destroy() {
|
||||
dbHelper.close();
|
||||
}
|
||||
|
||||
public void insertIntroduce(Context context)
|
||||
{
|
||||
NotebookData editData=new NotebookData();
|
||||
if (editData.getId() == 0) {
|
||||
editData.setId(-1
|
||||
* StringUtils.toInt(
|
||||
StringUtils.getDataTime("dddHHmmss"), 0));
|
||||
}
|
||||
editData.setUnixTime(StringUtils.getDataTime("yyyy-MM-dd HH:mm:ss"));
|
||||
editData.setContent("欢迎使用嗖藏,赶快记下你此刻的灵感吧!");
|
||||
editData.setUserId(AccountUtils.getUserId(context));
|
||||
save(editData);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue