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

两个人能用的一个公司做网站吗电子商务网站设计方案

两个人能用的一个公司做网站吗,电子商务网站设计方案,辅导班广告去哪个网站做,wordpress页眉语言GreenDAO 是一款开源的面向 Android 的轻便、快捷的 ORM 框架,将 Java 对象映射到 SQLite 数据库中,我们操作数据库的时候,不再需要编写复杂的 SQL语句, 在性能方面,greenDAO 针对 Android 进行了高度优化,…

GreenDAO 是一款开源的面向 Android 的轻便、快捷的 ORM 框架,将 Java 对象映射到 SQLite 数据库中,我们操作数据库的时候,不再需要编写复杂的 SQL语句, 在性能方面,greenDAO 针对 Android 进行了高度优化,最小的内存开销 、依赖体积小 同时还是支持 数据库加密。

greenDAO 官网地址:greenrobot.org/greendao/

greenDAO GitHub 源码地址:greenrobot/greenDAO
 

GreenDao 特征

    1、支持 protocol buffer(protobuf) 协议
    GreenDao 支持 protocol buffer(protobuf) 协议数据的直接存储,如果你通过 protobuf 协议与服务器交互,将不需要任何的映射
    2、代码生成
    greenDAO 会根据配置信息自动生成核心管理类以及 DAO 对象
    3、性能
    所有 ORM 数据库的,greenDAO 是最快的,greenDAO 不作性能方面任何妥协

核心类介绍
1、DaoMaster:

使用 greenDAO 的入口点。DaoMaster 负责管理数据库对象(SQLiteDatabase)和 DAO 类(对象),我们可以通过它内部类 OpenHelper 和 DevOpenHelper SQLiteOpenHelper 创建不同模式的 SQLite 数据库。
2、DaoSession :

管理指定模式下的所有 DAO 对象,DaoSession 提供了一些通用的持久性方法比如插入、负载、更新和删除实体。
3、XxxDAO :

对于每个实体类, greenDAO 都会生成一个与之对应 DAO 对象,如:User 实体,则会生成一个 UserDao 类
4、Entities:

可持久化对象。通常,实体对象代表一个数据库行,使用标准 Java 属性(如一个 POJO 或 JavaBean )

集成GreenDao

1、build.gradle(Module:app)中添加配置与依赖

(1)

apply plugin: 'org.greenrobot.greendao' //添加greendao apply plugin
android {**
}

(2)

android {**// greendao配置greendao {//数据库版本号,升级时修改schemaVersion 1//生成的DAO,DaoMaster和DaoSession的包路径。默认与表实体所在的包路径相同daoPackage 'com.chy.greendao'//生成源文件的路径。默认源文件目录是在build目录中的(build/generated/source/greendao)targetGenDir 'src/main/java'}}

(3)

//引入GreenDao数据库,存储数据
implementation 'org.greenrobot:greendao:3.3.0' // add library
//Gson依赖
implementation 'com.google.code.gson:gson:2.8.5'

2、build.gradle(Project:xxx)中添加配置

// 添加插件 更好支持GreenDao
classpath 'org.greenrobot:greendao-gradle-plugin:3.3.0'

创建Myapplication类:

public class Myapplication extends Application {public static DaoSession daoSession;@Overridepublic void onCreate() {super.onCreate();initDb();}/*** 数据库初始化* */public void initDb () {
//        获取SQLiteOpenHelper对象devOpenHelperDaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(this, "mydb.db");
//        获取SQLiteDatabaseSQLiteDatabase db = devOpenHelper.getWritableDatabase();
//        加密数据库(这句话无法运行)//Database database = devOpenHelper.getEncryptedWritableDb("12345");//DaoMaster daoMaster = new DaoMaster(database);
//        创建DaoMaster实例
//        DaoMaster保存数据库对象(SQLiteDatabase)并管理特定模式的Dao类(而不是对象)。
//        它具有静态方法来创建表或将它们删除。
//        其内部类OpenHelper和DevOpenHelper是在SQLite数据库中创建模式的SQLiteOpenHelper实现。DaoMaster daoMaster = new DaoMaster(db);
//        管理特定模式的所有可用Dao对象daoSession = daoMaster.newSession();}}

 在AndroidManifest.xml添加自定义的Myapplication

创建Entity

package com.chy.table;import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Id;
import org.greenrobot.greendao.annotation.Property;
import org.greenrobot.greendao.annotation.Generated;@Entity(nameInDb = "patrol_table")
public class PatrolTable {/*** 主键 Long型,可以通过@Id(autoincrement = true)设置自增长。* 通过这个注解标记的字段必须是Long,数据库中表示它就是主键,并且默认是自增的。*/@Id(autoincrement = true)private Long id;/*** Unique 属性给数据库的列添加了一个唯一性限制。注意,SQLite也会隐式地为它创建一个索引。* Property :属性指定数据库的字段名称。默认是驼峰转成大写的下划线隔开的名称,比如:UserAge 转成 USER_AGE*/// @Unique@Property(nameInDb = "patroler_massif")private String patrolerMassif;// 巡查地块@Property(nameInDb = "patroler_person")private String patrolerPerson;// 巡查人员@Property(nameInDb = "patroler_time")private String patrolerTime;// 巡查时间@Generated(hash = 2022133330)public PatrolTable(Long id, String patrolerMassif, String patrolerPerson,String patrolerTime) {this.id = id;this.patrolerMassif = patrolerMassif;this.patrolerPerson = patrolerPerson;this.patrolerTime = patrolerTime;}@Generated(hash = 824963258)public PatrolTable() {}public Long getId() {return this.id;}public void setId(Long id) {this.id = id;}public String getPatrolerMassif() {return this.patrolerMassif;}public void setPatrolerMassif(String patrolerMassif) {this.patrolerMassif = patrolerMassif;}public String getPatrolerPerson() {return this.patrolerPerson;}public void setPatrolerPerson(String patrolerPerson) {this.patrolerPerson = patrolerPerson;}public String getPatrolerTime() {return this.patrolerTime;}public void setPatrolerTime(String patrolerTime) {this.patrolerTime = patrolerTime;}}

创建完entity,点击Make Project 如图所示:

如果配置正确,会在配置的包目录下自动会生成DaoMaster,DaoSession 和XXXDao 类 。

 

定义GreenDaoManager类:

/*** 自定义Manager* */
public class GreenDaoManager {private Context mContext;private PatrolTableDao mPatrolTableDao;// 构造函数private GreenDaoManager(Context context){mContext = context;mPatrolTableDao = Myapplication.daoSession.getPatrolTableDao();}/*** 单例* */private static GreenDaoManager INSTANCE;public static GreenDaoManager getInstance(Context context){if (INSTANCE == null){INSTANCE = new GreenDaoManager(context);}return INSTANCE;}//添加一条数据到数据库public long insertPatrolTable (PatrolTable patrolTable) {long flag = mPatrolTableDao.insertOrReplace(patrolTable);return flag;}// 批量插入数据public void insertPatrolTables(List<PatrolTable> patrolTableList){mPatrolTableDao.insertInTx(patrolTableList);}//查询所有public List<PatrolTable> queryPatrolTable(){QueryBuilder<PatrolTable> query = mPatrolTableDao.queryBuilder().orderAsc(PatrolTableDao.Properties.Id);return query.list();}//查询地块名称public List<PatrolTable> queryMassif(String massifName){QueryBuilder<PatrolTable> query = mPatrolTableDao.queryBuilder();query = query.where(PatrolTableDao.Properties.PatrolerMassif.eq(massifName)).orderAsc(PatrolTableDao.Properties.Id);;return query.list();}//查询巡查人员public List<PatrolTable> queryPerson(String personName){QueryBuilder<PatrolTable> query = mPatrolTableDao.queryBuilder();query = query.where(PatrolTableDao.Properties.PatrolerPerson.eq(personName)).orderAsc(PatrolTableDao.Properties.Id);return query.list();}//删除指定数据public void deletePatrolTable(PatrolTable patrolTable){mPatrolTableDao.delete(patrolTable);}//更新数据public void updatePatrolTable(PatrolTable patrolTable){mPatrolTableDao.update(patrolTable);}}

使用:

private void initDB(){GreenDaoManager instance = GreenDaoManager.getInstance(this);//创建数据PatrolTable patrolTable = new PatrolTable();patrolTable.setPatrolerPerson("张三");patrolTable.setPatrolerMassif("南湖公园");patrolTable.setPatrolerTime("2023-8-8 11:21");/** 添加数据 **/long flag = instance.insertPatrolTable(patrolTable);System.out.println(flag);/** 获取数据 **/List<PatrolTable> patrolTables = instance.queryMassif(patrolTable.getPatrolerMassif());Gson gson = new Gson();String json = gson.toJson(patrolTables);System.out.println("JSON"+json);/** 修改数据 **/PatrolTable updatePatrolTable = new PatrolTable();updatePatrolTable.setId(1l);updatePatrolTable.setPatrolerPerson("李四");updatePatrolTable.setPatrolerMassif("西湖公园");updatePatrolTable.setPatrolerTime("2023-8-10 11:21");instance.updatePatrolTable(updatePatrolTable);/*** 获取所有数据* */List<PatrolTable> allPatrolTables = instance.queryPatrolTable();Gson gson2 = new Gson();String json2 = gson2.toJson(allPatrolTables);System.out.println("JSON2"+json2);}

http://www.hkea.cn/news/920754/

相关文章:

  • 南宁老牌网站建设公司正版google下载
  • 网站做信用认证有必要吗微信朋友圈推广平台
  • 电子政务网站建设要求百度关键词规划师
  • 博客网站开发毕设免费大数据分析网站
  • 深圳教育平台网站建设好消息疫情要结束了
  • 国外设计文章的网站淘宝代运营靠谱吗
  • 市桥网站建设sem论坛
  • 猎头公司是做什么的可靠吗排名优化外包公司
  • 扶贫网站建设关键词查询神器
  • 沈阳酒店企业网站制作公司2023年9月疫情又开始了吗
  • 厦门专业网站建设如何快速推广一个新产品
  • 帮人做传销网站违法吗seo网站排名助手
  • 如何做优品快报下的子网站营销型网站建设目标
  • 用织梦做网站调用乱码营业推广是什么意思
  • 做走私网站北京口碑最好的it培训机构
  • 网站建设OA系统开发it培训机构哪家好
  • 网站运维可以做哪些域名查询网站入口
  • 网站开发的基本语言外贸平台自建站
  • 女生自己做网站营销方法有哪些
  • 怎么自己做网站吓别人金融网站推广圳seo公司
  • 彩票网站的客服有做吗海淀seo搜索优化多少钱
  • 河源哪有做网站网页模板设计
  • 手机网站可以做英文版本吗近三天时政热点
  • 怎么做网站游戏网络优化排名培训
  • ic外贸网站建设黑帽seo技巧
  • 实业有限公司网站怎么做百度一下了你就知道官网
  • 企业电子商务网站推广平台有哪些渠道
  • 本地用织梦做网站百度的网站网址
  • 基础展示营销型型网站新闻发稿平台有哪些
  • 做游戏赚钱的网站最新新闻热点事件2022