GreenDao环境搭建

2024-05-29 00:38
文章标签 搭建 环境 greendao

本文主要是介绍GreenDao环境搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境的配置
Eclipse几乎不用了在这里我们着重介绍Android studio的配置以及基本使用
green dao的优势我这里就不再介绍想看的同学可以查看它的官网链接如下

green dao官网

1.首先需要配置我们的工程的gradle
代码如下:

buildscript {repositories {jcenter()}dependencies {classpath 'com.android.tools.build:gradle:2.2.2'classpath 'org.greenrobot:greendao-gradle-plugin:3.2.0'//这里是我们要添加的greendao的插件}
}

配置完成工程的gradle之后我们需要处理我们的model的gradle
2.配置model的gradle
代码如下:

//1.引入插件
apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao'//这里我们需要引入green dao的插件
//2.引入工程依赖
dependencies {compile fileTree(include: ['*.jar'], dir: 'libs')compile 'com.android.support:appcompat-v7:23.1.1'compile 'org.greenrobot:greendao:3.2.0'//这里是我们添加的greendao的依赖
}

到了这里我们的工程就具备了greendao的环境依赖
3.接下来我们就像一般的程序配置一样配置我们的application
代码如下(这个配置可有可无主要是为了获取application的context)

public class MyApplication extends Application {static Context context;@Overridepublic void onCreate() {super.onCreate();context = getApplicationContext();}public static Context getAppContext() {return context;}
}

4.接下来我的处理是写一个manager让所有的应用到greendao的地方都通过一个daoSession控制
配置如下

public class MarsKangDbManager {private static DaoSession daoSession;private static DaoSession setUpDateBase() {DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(MyApplication.getAppContext(), "MARSKANG.db", null);DaoMaster daoMaster = new DaoMaster(devOpenHelper.getWritableDb());return daoMaster.newSession();}public static DaoSession getDataBaseInstance() {if (daoSession == null) {daoSession = setUpDateBase();}return daoSession;}
}

通过上个单例我们就获得了一个公共的daoSession这样的话当我们需要数据库升级的时候就不必配置N多个调用的地方了。
5.有了工程依赖有了工具类接下来我们需要创建实体类也是十分简单的
一个简单的实体类如下

@Entity(nameInDb = "USER")
public class User {@NotNull@Id(autoincrement = true)private long id;@NotNull@Property(nameInDb = "USER_NAME")private String userName;@NotNull@Property(nameInDb = "PASS_WORD")private String passWord;@NotNull@Property(nameInDb = "USER_POWER")private String userPower;}

到了这里我们介绍下这些注解的意思
@Entity 代表实体类意思是我们要创建数据库后面的(nameInDb = “USER”)代表我们给这个数据库表起名字为USER
@NotNull代表这一列是非空列在保存过程中不能将null值插入到这一列中去
@Property(nameInDb = “PASS_WORD”) 这个代表要创建的这一列是数据库的列同时它的列名是PASS_WORD

注解写到这里就算写完了接下来我们要做的事情就是根据官方的说法点击下面图片的小绿箭头运行程序
studio界面

接下来再看我们的实体类截图如下
截图
我们看画黑线的地方这些类是之前没有的当我们运行之后就生成了画黑线的3个类了之后我们再看看我们的User类这里贴上完成代码
代码如下

@Entity(nameInDb = "USER")
public class User {@NotNull@Id(autoincrement = true)private long id;@NotNull@Property(nameInDb = "USER_NAME")private String userName;@NotNull@Property(nameInDb = "PASS_WORD")private String passWord;@NotNull@Property(nameInDb = "USER_POWER")private String userPower;@Generated(hash = 1258220019)public User(long id, @NotNull String userName, @NotNull String passWord,@NotNull String userPower) {this.id = id;this.userName = userName;this.passWord = passWord;this.userPower = userPower;}@Generated(hash = 586692638)public User() {}public long getId() {return this.id;}public void setId(long id) {this.id = id;}public String getUserName() {return this.userName;}public void setUserName(String userName) {this.userName = userName;}public String getPassWord() {return this.passWord;}public void setPassWord(String passWord) {this.passWord = passWord;}public String getUserPower() {return this.userPower;}public void setUserPower(String userPower) {this.userPower = userPower;}
}

我们可以看到greendao给我们不仅创建了构造方法还创建了getter以及setter方法既然greendao已经替我们做了这么多工作了那接下来我们需要处理的应该就不多了。
6.那接下来我们看看配置后的使用

 private void init() {UserDao dao = MarsKangDbManager.getDataBaseInstance().getUserDao();User user = new User(1, "abc", "123", "001");dao.insert(user);}

我们只需要从我们的manager中获取DaoSession 在调用getUserDao方法就实例化完我们的dao对象之后我们创建user对象当对向值都赋完之后调用一个insert方法就完成了我们的录入操作。
在接下来的章节中我们会介绍greendao的基础使用以及高级使用我们的基础环境配置就介绍到这里了。

这篇关于GreenDao环境搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1012154

相关文章

python项目环境切换的几种实现方式

《python项目环境切换的几种实现方式》本文主要介绍了python项目环境切换的几种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 如何在不同python项目中,安装不同的依赖2. 如何切换到不同项目的工作空间3.创建项目

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js

MongoDB搭建过程及单机版部署方法

《MongoDB搭建过程及单机版部署方法》MongoDB是一个灵活、高性能的NoSQL数据库,特别适合快速开发和大规模分布式系统,本文给大家介绍MongoDB搭建过程及单机版部署方法,感兴趣的朋友跟随... 目录前言1️⃣ 核心特点1、文档存储2、无模式(Schema-less)3、高性能4、水平扩展(Sh

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

k8s搭建nfs共享存储实践

《k8s搭建nfs共享存储实践》本文介绍NFS服务端搭建与客户端配置,涵盖安装工具、目录设置及服务启动,随后讲解K8S中NFS动态存储部署,包括创建命名空间、ServiceAccount、RBAC权限... 目录1. NFS搭建1.1 部署NFS服务端1.1.1 下载nfs-utils和rpcbind1.1

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版