} catch (SQLException e) {
e.printStackTrace();
}
}
@Override // 数据库版本更新时调用的方法
public void onUpgrade(SQLiteDatabase database, ConnectionSource connectionSource, int oldVersion, int newVersion) {
try {
TableUtils.dropTable(connectionSource, OneTableBean.class, true);
onCreate(database, connectionSource);
} catch (SQLException e) {
e.printStackTrace();
}
}
// 释放资源
@Override
public void close() {
super.close();
for (String key : daos.keySet()) {
Dao dao = daos.get(key);
dao = null;
}
}
}
注:新表建立必须在onCreate创建
- 构建Bean对应的dao
import android.content.Context;
import com.j256.ormlite.dao.Dao;
import com.j256.ormlite.stmt.QueryBuilder;
import java.sql.SQLException;
import java.util.List;
import cn.tsou.ormlite.bean.OneTableBean;
import cn.tsou.ormlite.manager.DatabaseHelper;
/**
-
操作OneTableBean数据表的Dao类,封装这操作OneTableBean表的所有操作
-
通过DatabaseHelper类中的方法获取ORMLite内置的DAO类进行数据库中数据的操作
-
-
调用dao的create()方法向表中添加数据
-
调用dao的delete()方法删除表中的数据
-
调用dao的update()方法修改表中的数据
-
调用dao的queryForAll()方法查询表中的所有数据
*/
public class OneTableDao {
// ORMLite提供的DAO类对象,第一个泛型是要操作的数据表映射成的实体类;第二个泛型是这个实体类中ID的数据类型
private Dao<OneTableBean, Integer> dao;
public OneTableDao(Context context) {
try {
this.dao = DatabaseHelper.getInstance(context).getDao(OneTableBean.class);
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
-
创建数据
-
@param data
*/
public void create(OneTableBean data) {
try {
dao.createOrUpdate(data);
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
-
创建数据集合
-
@param datas
*/
public void createList(List datas) {
try {
dao.create(datas);
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
-
向user表中添加一条数据
-
-
create:插入一条数据或集合
-
-
createIfNotExists:如果不存在则插入