Android eclipse下数据开源框架GreenDao的配置
1、前言
ORM(Object-RelationMapping,对象关系映射),是一种为了解决面向对象与数据库存在的互一匹配的现象的技术,通过描述对象和关系数据库之间的映射,将程序中的对象自动持久化到关系数据库中。web中有很多的框架,像ssh2这些框架,其中的hibernate对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲使用对象编程思维来操作数据库。当然Android中也有这样的框架,其中之一就是GreepDAO。GreepDAO是一个可以帮助Android开发者快速将Java对象映射到SQLLite数据库的表单中的ORM解决方案。使用GreepDAO框架,心对对象的形式去访问数据库。如果大家熟悉web中的sping+hibernate+struts的话,这就跟hibernete是一样的原理。
2、首先要下载三个包,

下载地址:http://download.csdn.net/detail/csm_qz/8569031
3、在eclipse里面那一个java项目就取名叫MyGreenDao,记住是java项目,不是android项目。然后把三个包导入进去。导入的方法:项目-》build path->configur build path,在Java Build Path里面选择Libraries->Add External JARs,然后选中上面下载的三个包-》OK。包就导入进去了
4、MyGreenDao里面有一个源文件src,再创建一个src-gen(创建方法:MyGreenDao-》new->source folder),也可以不用创建源文件,看自己的需要了

5、在src下创建 一个类,里面的代码如下:
package com; import java.io.IOException; import de.greenrobot.daogenerator.DaoGenerator;
import de.greenrobot.daogenerator.Entity;
import de.greenrobot.daogenerator.Schema; public class GreenDao {
public static void main(String[] args) throws IOException, Exception {
// 参数3是数据库版本号,
//“com.cn.speedchat.greendao”是包名,也就是说生成的Dao文件会在这个包下
Schema schema = new Schema(1, "com.cn.speedchat.greendao");
addStu(schema);
//这个是生成Dao文件的路径的位置,这个代表当前工程的上一级目录的javagreendao的src-gen文件夹里面,
//其实就是跟src同一级目录,所以你自己要在src同一级目录下新建一个src-gen文件夹待会要生成的文件
new DaoGenerator().generateAll(schema, "src-gen");
} //增加Stu表
private static void addStu(Schema schema){
Entity msg = schema.addEntity("stu");//stu就相当于表名了
msg.addIdProperty().autoincrement();//创建表的id为主键并且是自增的,
msg.addIntProperty("age").notNull();//age整型不能为空
msg.addStringProperty("name").notNull();//name String型不能为空
}
}
我这里只是简单的创建一个表,用java运行这个类,刷新一下,就会在你之前创建的包src-gen下com.cn.speedchat.greendao里面有一些生成4个类,代码有报错,不用管它
DaoMaster.java是进行连接到SQLLite中创建表,如果有多张表,全部都在这里面创建
DaoSession.java
stu.java是实体对象,里面的属性就是数据库里面的字段
stuDao.java
参考网站:http://www.android100.org/html/201504/25/139839.html
Android eclipse下数据开源框架GreenDao的配置的更多相关文章
- 数据库开源框架GreenDao的使用解析
数据库开源框架GreenDao的使用解析 1,GreenDao概述 1),greenDao是一个当下十分火热的数据库开源框架,或者说是一个帮助Android开发者将数据存到SQLite中的一个开源项目 ...
- [转]六款值得推荐的android(安卓)开源框架简介
本文转自:http://www.jb51.net/article/51052.htm .volley 项目地址 https://github.com/smanikandan14/Volley-demo ...
- 六款值得推荐的android(安卓)开源框架简介(转)
1.volley 项目地址 https://github.com/smanikandan14/Volley-demo (1) JSON,图像等的异步下载: (2) 网络请求的排序(scheduli ...
- 几款值得推荐的android(安卓)开源框架简介
技术不再多,知道一些常用的.不错的就够了. 该文章自有需要的时候,mark一下. 顺序不代表排名,根据自己需求进行选择即可. 1.volley 项目地址 https://github.com/sman ...
- 六款值得推荐的android(安卓)开源框架简介
1.volley 项目地址 https://github.com/smanikandan14/Volley-demo (1) JSON,图像等的异步下载: (2) 网络请求的排序(scheduli ...
- 六款值得推荐的android(安卓)开源框架
1.volley 项目地址 https://github.com/smanikandan14/Volley-demo (1) JSON,图像等的异步下载: (2) 网络请求的排序(scheduli ...
- Android的SwipeToDismiss第三方开源框架模拟QQ对话列表侧滑删除,置顶,将头像图片圆形化处理。
<Android SwipeToDismiss:左右滑动删除ListView条目Item> Android的SwipeToDismiss是github上一个第三方开源框架(github ...
- 六款值得推荐的android(安卓)开源框架简介【转】
http://my.oschina.net/u/1244156/blog/380647 1.volley 项目地址 https://github.com/smanikandan14/Volley-de ...
- Delphi下IOCP开源框架:DIOCP 成功应用案例分享
首先说明,该项目不是本人的项目,本文转自盒子. 该项目使用的DIOCP版本为1.0,目前diocp为3.5 以下是盒子的原文 ------------------------------------- ...
随机推荐
- 第一次用Github desktop(mac)提交代码遇到的问题
1.新建代码仓库 2.生成密钥 ssh-keygen -C 'your@email.address' -t rsa 3.到根目录下的.ssh文件夹下找到id_rsa.pub文件,将里面的内容复制到下图 ...
- 你好,C++(2)1.3 C++世界版图1.4 如何学好C++
1.3 C++世界版图 C++语言的发展过程,不仅是一个特性不断增加.内容不断丰富的过程,更是一个在应用领域中不断攻城略地的过程.在其30余年的发展过程中,C++在多个应用领域都得到了广泛的应用和发 ...
- xml程序 个人练习1
package cn.gdpe.xml2; import java.io.File;import java.io.FileOutputStream;import java.util.List; imp ...
- mysql创建存储过程中的问题
1.在创建存储过程成功后,使用call 存储过程名执行时报错: Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_gener ...
- JavaScript 继承机制小记
读<JavaScript: the good parts>, 关于对象继承这块小记一笔: function Base(v){ this.baseValue = v; this.getBas ...
- php设计模式之迭代器模式
今天的PHP设计模式系列的主角是迭代器(Iterator)模式,迭代器模式提供了抽象:位于对象图不明部分的一组对象(或标量)集合上的迭代. 迭代器(Iterator)模式,它在一个很常见的过程上提供了 ...
- 在Apache中利用ServerAlias设置虚拟主机接收多个域名和设置域名泛解析
ServerAlias:服务器别名,在Apache中可以用于设置虚拟主机接收到个域名,也可以用于接收泛解析的域名.具体的设置方法如下: 一.用于设置虚拟主机接收多个域名 一个虚拟主机常常会接收多个域名 ...
- IOS各类问题
1.The resource could not be loaded because the App Transport Security policy requires the use of a s ...
- bzoj3637: Query on a tree VI
Description You are given a tree (an acyclic undirected connected graph) with n nodes. The tree node ...
- bzoj2597: [Wc2007]剪刀石头布
Description 在一些一对一游戏的比赛(如下棋.乒乓球和羽毛球的单打)中,我们经常会遇到A胜过B,B胜过C而C又胜过A的有趣情况,不妨形象的称之为剪刀石头布情况.有的时候,无聊的人们会津津乐道 ...