GreenDao自动生成Android数据库操作代码
2017-02-14 14:23
423 查看
1、环境准备
1.1 jar包
![](https://img-blog.csdn.net/20170214142049936?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmFpeXVhbndlaQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
1.2 生成器的代码
![](https://img-blog.csdn.net/20170214142201046?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmFpeXVhbndlaQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
2、需要编写生重点内容成操作数据的代码
/**
* Generates entities and DAOs for the example project DaoExample.
*
* Run it as a Java application (not Android).
*
* @author Markus
*/
public class ExampleDaoGenerator {
3、执行步骤2,自动生成如下代码
![](https://img-blog.csdn.net/20170214141840060?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmFpeXVhbndlaQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
4、编写数据库操作类的方法 增 删 改 查
public class AvPresenter {
}
1.1 jar包
1.2 生成器的代码
2、需要编写生重点内容成操作数据的代码
/**
* Generates entities and DAOs for the example project DaoExample.
*
* Run it as a Java application (not Android).
*
* @author Markus
*/
public class ExampleDaoGenerator {
public static void main(String[] args) throws Exception { //第一个为数据库的版本号,第二个是自动生成数据库相关文件的包名 Schema schema = new Schema(1000, "com.smartspyeye.livevideo.dao"); // 一旦你拥有了一个 Schema 对象后,你便可以使用它添加实体(Entities)了。 addNote(schema); // 最后我们将使用 DAOGenerator 类的 generateAll() 方法自动生成代码,此处你需要根据自己的情况更改输出目录这里我创建一个java-gen的文件夹。 new DaoGenerator().generateAll(schema, "../greendaoGenerator/src-gen"); } private static void addNote(Schema schema) { //"HistoryMessage"与数据库对应的javabean对象 Entity note = schema.addEntity("HistoryMessage"); //设置主键字段 note.addIdProperty(); //设置Javabean属性与数据库SendUserName字段 note.addStringProperty("SendUserName"); //设置Javabean属性与数据库MsgCount字段 note.addStringProperty("MsgCount"); }
3、执行步骤2,自动生成如下代码
4、编写数据库操作类的方法 增 删 改 查
public class AvPresenter {
public static final String dbName = "audioVideo.db"; // public static final String dbName = "HistoryMessage.db"; private DaoMaster.DevOpenHelper helper; private DaoMaster daoMaster; private DaoSession daoSession; private HistoryMessageDao historyMessageDao; public AvPresenter(Context context) { helper = new DaoMaster.DevOpenHelper(context, dbName, null); daoMaster = new DaoMaster(helper.getWritableDatabase()); daoSession = daoMaster.newSession(); } public AvPresenter(Context context, String dbName) { helper = new DaoMaster.DevOpenHelper(context, dbName, null); daoMaster = new DaoMaster(helper.getWritableDatabase()); daoSession = daoMaster.newSession(); } // 添加一条数据 public long add(HistoryMessage hs) throws Exception { return daoSession.insertOrReplace(hs); } // 更新单条数据 public void update(HistoryMessage hs) throws Exception { daoSession.update(hs); } // 查询所有数据 public List<HistoryMessage> loadHistoryMessageAll() throws Exception { return daoSession.getHistoryMessageDao().loadAll(); } // 删除单条数据 public void deleteHistoryMessage(HistoryMessage hs) throws Exception { daoSession.delete(hs); } // 删除所有数据 public void deleteHistoryMessageAll() throws Exception { daoSession.deleteAll(HistoryMessage.class); } /** * 根据用户名条件查询用户信息,映射到Javabean对象 * * @param SendUserName * @return * @throws Exception */ public HistoryMessage getMessageBySendUserName(String SendUserName)throws Exception { Query<HistoryMessage> build = daoSession.queryBuilder(HistoryMessage.class).where(Properties.SendUserName.eq(SendUserName)).build(); List<HistoryMessage> list = build.list(); return list.get(0); } public void close() { if (daoSession != null) { daoSession.clear(); daoSession = null; } if (helper != null) { helper.close(); helper = null; } }
}
相关文章推荐
- Android GreenDao使用总结(包括模型生成、增删改查、修改存储路径、数据库更新升级和加解密数据库)
- Android的用GreenDao操作数据库
- Android Studio平台使用GreenDao操作数据库
- Android操作数据库的框架-GreenDao基本使用记录
- 数据库操作-----开源第三方---greendao-----所有的dao和model自动生成,不用写,懒人必备
- Android GreenDao介绍和Generator生成表对象代码
- Android数据库操作--greenDAO的入门使用
- Android GreenDao数据库操作之增删改查
- Android中数据库操作框架greenDAO介绍与使用
- [置顶] Android数据库GreenDAO3.2.2的使用(三,GreenDao操作外部数据库----操作.db数据库)
- Android数据库操作第三方库GreenDao的使用
- Android数据库操作—— GreenDao让你的数据操作更简单
- Android 操作数据库的框架——greenDAO的学习
- Android 操作数据库的框架——greenDAO的学习
- 【译】MVC3 20个秘方-(2)通过脚手架自动生成controller和view ----代码先行/数据库先行
- 偷懒日志 - 自动生成代码 - 第三步 生成Dao
- [C#]一步一步开发自己的自动代码生成工具之一:获取SQL2005的数据库表结构
- 拖拽自动生成的DataGridView和BindingSource操作数据库(增加,修改,删除)---自己实现
- C#分析数据库结构,使用XSL模板自动生成代码
- C#分析数据库结构,使用XSL模板自动生成代码 - 清清月儿 .NET万花筒 Asp.net技术 Asp.net教程 Asp.net源码 Asp.net基础 Asp.net控件 Asp.net入门 - CSDNBlog