GreenDao基本使用_
来源:互联网 发布:sql查询结果导出excel 编辑:程序博客网 时间:2024/04/30 09:28
Ben类:
@Entitypublic class User { @Id private long id; @Property private String name; @Property private int age;
MyUserDao:
public class MyUserDao { Context context; public MyUserDao(Context context) { this.context = context; } /** * 插入一条数据 */ public void insertUser(User user) { DaoMaster daoMaster = new DaoMaster(DBManager.getInstance(context).getWritableDatabase()); DaoSession daoSession = daoMaster.newSession(); UserDao userDao = daoSession.getUserDao(); userDao.insert(user); } /** * 插入用户集合 * * @param users */ public void insertUserList(List<User> users) { if (users == null || users.isEmpty()) { return; } DaoMaster daoMaster = new DaoMaster(DBManager.getInstance(context).getWritableDatabase()); DaoSession daoSession = daoMaster.newSession(); UserDao userDao = daoSession.getUserDao(); userDao.insertInTx(users); } /** * 查询用户列表 */ public List<User> queryUserList() { DaoMaster daoMaster = new DaoMaster(DBManager.getInstance(context).getReadableDatabase()); DaoSession daoSession = daoMaster.newSession(); UserDao userDao = daoSession.getUserDao(); QueryBuilder<User> qb = userDao.queryBuilder(); List<User> list = qb.list(); return list; } /** * 查询用户列表 */ public List<User> queryUserList(int age) { DaoMaster daoMaster = new DaoMaster(DBManager.getInstance(context).getReadableDatabase()); DaoSession daoSession = daoMaster.newSession(); UserDao userDao = daoSession.getUserDao(); QueryBuilder<User> qb = userDao.queryBuilder(); qb.where(UserDao.Properties.Age.gt(age)).orderAsc(UserDao.Properties.Age); List<User> list = qb.list(); return list; } /** * 更新一条记录 * * @param user */ public void updateUser(User user) { DaoMaster daoMaster = new DaoMaster(DBManager.getInstance(context).getWritableDatabase()); DaoSession daoSession = daoMaster.newSession(); UserDao userDao = daoSession.getUserDao(); userDao.update(user); } /** * 删除一条记录 * * @param user */ public void deleteUser(User user) { DaoMaster daoMaster = new DaoMaster(DBManager.getInstance(context).getWritableDatabase()); DaoSession daoSession = daoMaster.newSession(); UserDao userDao = daoSession.getUserDao(); userDao.delete(user); }}
DBManager:
public class DBManager { private final static String dbName = "test_db"; private static DBManager mInstance; private DaoMaster.DevOpenHelper openHelper; private Context context; private DBManager(Context context) { this.context = context; openHelper = new DaoMaster.DevOpenHelper(context, dbName, null); } /** * 获取单例引用 * * @param context * @return */ public static DBManager getInstance(Context context) { if (mInstance == null) { synchronized (DBManager.class) { if (mInstance == null) { mInstance = new DBManager(context); } } } return mInstance; } public SQLiteDatabase getReadableDatabase() { if (openHelper == null) { openHelper = new DaoMaster.DevOpenHelper(context, dbName, null); } SQLiteDatabase db = openHelper.getReadableDatabase(); return db; } public SQLiteDatabase getWritableDatabase() { if (openHelper == null) { openHelper = new DaoMaster.DevOpenHelper(context, dbName, null); } SQLiteDatabase db = openHelper.getWritableDatabase(); return db; }}
MainActivity:
public class MainActivity extends AppCompatActivity { private MyUserDao dao; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); dao = new MyUserDao(this); for (int i = 20; i < 25; i++) { User user = new User(); user.setId(Long.valueOf(i)); user.setAge(i * 3); user.setName("第" + i + "人"); dao.insertUser(user); } List<User> userList = dao.queryUserList(); for (User user : userList) { Log.e("TAG", "queryUserList--before-->" + user.getId() + "--" + user.getName() +"--"+user.getAge()); if (user.getId() == 10) { dao.deleteUser(user); } if (user.getId() == 13) { user.setAge(25); dao.updateUser(user); } } userList = dao.queryUserList(); for (User user : userList) { Log.e("TAG", "queryUserList--after--->" + user.getId() + "---" + user.getName()+"--"+user.getAge()); } }}
阅读全文
0 0
- GreenDao基本使用_
- GreenDao 的基本使用
- GreenDao 基本使用
- greenDao--3.2基本使用
- GreenDao-基本使用
- GreenDAO 3.0 基本使用
- greenDao 3.0基本使用
- greenDao的基本使用
- greenDAO基本使用详解
- GreenDao基本使用
- Android GreenDao基本使用
- Android GreenDao基本使用
- greenDao的基本使用
- GreenDao的基本使用
- greenDao的基本使用
- GreenDAO的使用基本篇
- 安卓 GreenDao 基本使用
- greenDao Orm 基本使用<一>
- BZOJ2748 DP
- SpringMVC整合FastJson:用"最快的json转换工具"替换SpringMVC的默认json转换
- Google是如何提供“无缝”的街景全景图的?
- 从I和II中得出aVR、aVL和aVF的计算公式
- 数据库_MYSQL_升级mysql数据库的方法
- GreenDao基本使用_
- IT项目的安全需求(二)— SQUARE
- 二级购物车自定义demo
- [转]【OpenCV入门教程之二】 一览众山小:OpenCV 2.4.8 or OpenCV 2.4.9组件结构全解析
- tmux 使用总结
- poj1273 Drainage Ditches(最大流dinic板子)
- 微信公众平台开发:JS-SDK之分享功能整理
- Tomcat下运行正常,weblogic却报错
- 何为设计中的美?