当前位置: 首页 > news >正文

怎么做空包网站招聘网站开发需要多长时间

怎么做空包网站,招聘网站开发需要多长时间,自己做网站除了域名还需要什么,网站分哪些种类GreenDao 是一款针对 Android 平台优化的轻量级对象关系映射 (ORM) 框架#xff0c;它将 Java 对象映射到 SQLite 数据库#xff0c;以简化数据持久化操作。GreenDao 的主要优点包括高性能、低内存占用、易于使用以及对数据库加密的支持。 以下是基于源码的 GreenDao 实现原…GreenDao 是一款针对 Android 平台优化的轻量级对象关系映射 (ORM) 框架它将 Java 对象映射到 SQLite 数据库以简化数据持久化操作。GreenDao 的主要优点包括高性能、低内存占用、易于使用以及对数据库加密的支持。 以下是基于源码的 GreenDao 实现原理分析 1. 代码生成 GreenDao 的一大特性是在编译阶段生成所有必要的 DAOData Access Object类和相关辅助类而不是在运行时通过反射来创建这些类。这意味着当应用程序运行时GreenDao 不再需要解析复杂的元数据或执行反射调用从而提高了性能和响应速度。 生成过程 当你使用 GreenDao 时你需要添加一个注解处理器依赖到你的项目中。编译时GreenDao 的注解处理器会扫描带有特定注解如 Entity的类。根据这些类的定义处理器会生成 DAO 类、实体类的映射代码以及其他辅助类例如 DaoMaster 和 DaoSession。 2. DAO Master 和 DAO Session DaoMaster负责管理整个数据库环境包括创建和升级数据库版本。DaoMaster 包含了 DevOpenHelper 的实例用于数据库的创建和版本控制。DaoSession提供了一组方法用于访问和操作所有实体的 DAO。当你需要执行 CRUD 操作时通常会通过 DaoSession 来获取特定实体的 DAO 实例。 3. 实体映射 每个被标记为 Entity 的类都会被映射到一个数据库表。GreenDao 支持多种属性类型包括基本数据类型、枚举、数组和集合等。通过 Id 注解可以指定主键而 Unique 可以确保字段的唯一性。 4. 数据库操作 GreenDao 提供了一系列方法来执行常见的数据库操作如 insert, update, delete, load 和 queryBuilder。这些方法在 DAO 实例中定义允许以面向对象的方式进行数据库操作。 5. 性能优化 GreenDao 使用了缓存机制来加速查询通过缓存实体对象和 SQL 查询结果减少了数据库的直接访问次数。此外它还使用了代理模式和策略模式来封装不同的数据库操作提供了良好的扩展性和维护性。 6. 加密支持 通过集成 SqlCipher 或 SQLite 的加密版本GreenDao 可以提供数据库级别的加密功能增强了数据的安全性。 7. 异步操作 GreenDao 支持 RxJava 集成使得异步数据库操作变得更加简单和高效。 8.基本使用 第一步项目配置 首先你需要在你的项目中添加 GreenDao 的依赖。在你的模块级 build.gradle 文件中添加以下依赖 Groovy 1dependencies { 2 implementation org.greenrobot:greendao:3.2.2 3 kapt org.greenrobot:greendao:3.2.2 // kapt 用于处理注解处理器 4} 同时在 build.gradle 文件中加入 GreenDao 插件配置 Groovy 1apply plugin: com.android.application 2apply plugin: kotlin-android 3 4android { 5 // ... 6} 7 8dependencies { 9 // ... 10} 11 12greendao { 13 schemaVersion 1 // 数据库版本号 14 daoPackage com.example.yourapp.database // Dao 包名 15 targetGenDir src/main/java // 生成文件的目标目录 16} 第二步定义实体类 接下来定义 User 实体类使用 GreenDao 的注解进行标注 Java 1package com.example.yourapp.database; 2 3import org.greenrobot.greendao.annotation.Entity; 4import org.greenrobot.greendao.annotation.Id; 5import org.greenrobot.greendao.annotation.Generated; 6 7Entity 8public class User { 9 Id(autoincrement true) 10 private Long id; 11 private String name; 12 private int age; 13 14 public User(String name, int age) { 15 this.name name; 16 this.age age; 17 } 18 19 public Long getId() { 20 return id; 21 } 22 23 public void setId(Long id) { 24 this.id id; 25 } 26 27 public String getName() { 28 return name; 29 } 30 31 public void setName(String name) { 32 this.name name; 33 } 34 35 public int getAge() { 36 return age; 37 } 38 39 public void setAge(int age) { 40 this.age age; 41 } 42 43 Generated(hash 199499842) 44 public User(Long id, String name, int age) { 45 this.id id; 46 this.name name; 47 this.age age; 48 } 49 50 Generated(hash 1669913653) 51 public User() { 52 } 53} 第三步创建数据库 在你的应用程序中你需要创建 DaoMaster 和 DaoSession 的实例 Java 1import org.greenrobot.greendao.database.Database; 2 3import android.content.Context; 4 5public class AppDatabase { 6 private static DaoMaster.DevOpenHelper helper; 7 private static DaoMaster daoMaster; 8 private static DaoSession daoSession; 9 10 public static DaoSession getDaoSession(Context context) { 11 if (helper null) { 12 helper new DaoMaster.DevOpenHelper(context, user-db); 13 daoMaster new DaoMaster(helper.getWritableDatabase()); 14 daoSession daoMaster.newSession(); 15 } 16 return daoSession; 17 } 18} 第四步使用 GreenDao 现在你可以使用 AppDatabase.getDaoSession() 方法获取 DaoSession然后使用 UserDao 进行数据库操作 Java 1import org.greenrobot.greendao.query.QueryBuilder; 2 3import android.app.Activity; 4import android.os.Bundle; 5import android.view.View; 6import android.widget.Button; 7import android.widget.TextView; 8 9public class MainActivity extends Activity { 10 private Button insertButton; 11 private TextView textView; 12 13 Override 14 protected void onCreate(Bundle savedInstanceState) { 15 super.onCreate(savedInstanceState); 16 setContentView(R.layout.activity_main); 17 18 insertButton findViewById(R.id.insert_button); 19 textView findViewById(R.id.text_view); 20 21 insertButton.setOnClickListener(new View.OnClickListener() { 22 Override 23 public void onClick(View v) { 24 insertUser(); 25 } 26 }); 27 } 28 29 private void insertUser() { 30 DaoSession daoSession AppDatabase.getDaoSession(this); 31 UserDao userDao daoSession.getUserDao(); 32 33 User user new User(John Doe, 30); 34 userDao.insert(user); 35 36 QueryBuilderUser queryBuilder userDao.queryBuilder(); 37 ListUser users queryBuilder.where(UserDao.Properties.Name.eq(John Doe)).list(); 38 textView.setText(users.get(0).getName()); 39 } 40} 以上就是一个基本的 GreenDao 使用示例展示了如何定义实体类、创建数据库、以及如何插入和查询数据。注意实际项目中可能需要根据具体需求调整数据库的创建逻辑比如处理数据库升级的情况。 结论 GreenDao 的设计原则是尽量减少运行时的开销通过预编译代码生成和缓存机制来提升性能。它提供了丰富的 API 来简化数据库操作并且通过注解驱动的方式降低了使用门槛。如果你正在寻找一个高性能且易于使用的 Android 数据库解决方案GreenDao 是一个值得考虑的选择。
http://www.dnsts.com.cn/news/273382.html

相关文章:

  • 广州网站优化关键词公司宁波建网站公司
  • 来客网站建设手赚网站哪里可以做
  • wordpress做付费下载站大连软件培训
  • 湛蓝 网站开发域名网址查询
  • 在线学习网站模板wordpress视频显示控件
  • 网站的html千图网素材下载网站
  • 模板网站外贸建站手机移动端网站怎么做的
  • 做问卷调查的网站有哪些内容网业小游戏在线玩
  • 太原在线网站建设wordpress怎么修改密码
  • 拓尔思网站建设公司网站兼容手机
  • 浙江省城乡建设网站wordpress黑客主题
  • 智能建站系统 网站建设的首选万表手表官网
  • 徐州金网网站建设增城新闻头条今天
  • 聊城网站建设公司电话国外专门做视频翻译网站
  • 网站建设还能赚钱吗电子商务网站建设的展望
  • 建三江廉政建设网站展厅设计费收费标准
  • 深圳低价建站宁波江北网站建设
  • 深圳网站开发公司有哪些各大搜索引擎收录入口
  • 北京网站建设一条龙三亚
  • led视频网站建设免费创建网站的软件
  • 做网站领券收佣金学校网站设计首页
  • 长春seo服务公司网站自己可以学习优化吗
  • 临沂网站建设费用1万流量网站 服务器配置
  • 拼团做的比较好的网站介绍个人网站的ppt怎么做
  • 如何把购物网站做成非经营网站官方网站建设公司
  • 布吉做网站公司网站搜索引擎优化技术
  • 炫酷网站建设网络运营是什么专业
  • 网站设计美工要怎么做seo是什么意思 职业
  • 克隆网站到wordpress修改企业网站建设的层次
  • 棋牌网站开发找人做网站安全吗