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

做视频网站利润如何品牌网络推广公司排名

做视频网站利润如何,品牌网络推广公司排名,凡客科技,网架加工厂家DBFlow#xff0c;综合了 ActiveAndroid, Schematic, Ollie,Sprinkles 等库的优点。同时不是基于反射#xff0c;所以性能也是非常高#xff0c;效率紧跟greenDAO其后。基于注解#xff0c;使用apt技术#xff0c;在编译过程中生成操作类#xff0c;使用方式和ActiveAndr…DBFlow综合了 ActiveAndroid, Schematic, Ollie,Sprinkles 等库的优点。同时不是基于反射所以性能也是非常高效率紧跟greenDAO其后。基于注解使用apt技术在编译过程中生成操作类使用方式和ActiveAndroid高度相似使用简单。 特性 1、无缝支持多个数据库 2、使用annotation processing提高速度 3、ModelContainer类库可以直接解析像JSON这样的数据 4、增加灵活性的丰富接口。 github仓库https://github.com/Raizlabs/DBFlow DBFlow在国内可能用的人不是很多所以中文介绍很少所以就有了这篇文章接下来就让我们一起学习DBFlow。 一、引入依赖、初始化 需要引入apt和maven配置项目的 build.gradle buildscript {repositories {jcenter()}dependencies {classpath com.android.tools.build:gradle:2.0.0-beta6classpath com.neenbedankt.gradle.plugins:android-apt:1.8} }allprojects {repositories {jcenter()maven { url https://jitpack.io }} } 配置app的build.gradle apply plugin: com.android.application apply plugin: com.neenbedankt.android-apt def dbflow_version 3.0.0-beta4 android {compileSdkVersion 23buildToolsVersion 23.0.2defaultConfig {applicationId cn.taoweiji.dbflowexampleminSdkVersion 14targetSdkVersion 23versionCode 1versionName 1.0}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile(proguard-android.txt), proguard-rules.pro}} }dependencies {compile fileTree(dir: libs, include: [*.jar])apt com.github.Raizlabs.DBFlow:dbflow-processor:${dbflow_version}compile com.github.Raizlabs.DBFlow:dbflow-core:${dbflow_version}compile com.github.Raizlabs.DBFlow:dbflow:${dbflow_version} } 需要在Application的onCreate对DBFlow进行初始化 public class MyApplication extends Application {Overridepublic void onCreate() {super.onCreate();FlowManager.init(this);} } 记得修改AndroidManifest.xml applicationandroid:name.MyApplication ../ 二、数据库创建、表创建 定义数据库 我这里定义了一个名称叫做AppDatabase的数据库可以根据自己的喜欢进行定义。 Database(name AppDatabase.NAME, version AppDatabase.VERSION) public class AppDatabase {//数据库名称public static final String NAME AppDatabase;//数据库版本号public static final int VERSION 1; } 创建数据库对象 必须继承BaseModelBaseModel包含了基本的数据库操作save、delete、update、insert、exists看下面代码可以发现这个表是关联上面定义的数据库People的id是自增的id。 ModelContainer Table(database AppDatabase.class) public class People extends BaseModel {//自增IDPrimaryKey(autoincrement true)public Long id;Columnpublic String name;Columnpublic int gender; } 编写完数据表对象后点击Android studio的build-Make Project(Mac的童鞋直接commandF9)就会使用apt进行了编译 查看目录我的people类放在cn.taoweiji.dbflowexample.db app/build/generated/source/apt/debug/cn/taoweiji/dbflowexample/db 就可以看到自动生成 People_Adapter、People_Container、People_Table其中People_Table在后面使用有很大的作用建议详细看看它的结构。 注意 如果配置好了后Make Project后却没有生成_Table, GeneratedDatabaseHolder, _DataBase, _Adapter等检查都无误后可以检查一下 android {compileSdkVersion 23buildToolsVersion 23.0.2} 参考链接:体验Android ORM之DBFlow - 漫漫求学中的孩儿 - 博客频道 - CSDN.NET 三、增删改 由于数据表对象继承了BaseModel已经包含了很多的操作 People people new People(); people.name Wiki; people.gender 1; people.save(); //people.update(); //people.delete(); Log.e(Test, String.valueOf(people.id)); 删除、更新等操作就自己体验这里就不多说了。 四、查询 //返回所有查询结果 ListPeople peoples new Select().from(People.class).queryList(); //返回单个查询结果 People people new Select().from(People.class).querySingle(); //查询gender 1的所有People ListPeople peoples2 new Select().from(People.class).where(People_Table.gender.eq(1)).queryList(); DBFlow的查询方式借鉴ActiveAndroid的但是比ActiveAndroid功能还要强大。 四、事务、批量保存 事务是一个数据必须具备的如果保存10000条数据一条一条保存必然是很慢的所以就需要用到事务批量保存。DBFlow的事务非常的强大同时使用也很复杂这里就简单介绍批量保存更多内容请查看官方文档 https://github.com/Raizlabs/DBFlow/blob/master/usage/Transactions.md ListPeople peoples new ArrayList(); for (int i 0; i 1000; i) {People people new People();people.name Wiki;people.gender 1;peoples.add(people); } //实时保存马上保存 new SaveModelTransaction(ProcessModelInfo.withModels(peoples)).onExecute(); //异步保存使用异步如果立刻查询可能无法查到结果 //TransactionManager.getInstance().addTransaction(new SaveModelTransaction(ProcessModelInfo.withModels(peoples))); 五、数据库升级增加表、增加字段等 如果是新增表无需做特别的处理直接修改AppDatabase的版本号即可。 如果需要新增字段除了需要修改AppDatabase的版本号外还需要做特殊的处理DBFlow的描述是Migrations。 例子对People新增一个email字段 第1步修改数据库版本号 Database(name AppDatabase.NAME, version AppDatabase.VERSION) public class AppDatabase {//数据库名称public static final String NAME AppDatabase;//数据库版本号这里修改2public static final int VERSION 2; } 第2步需要修改数据表对象结构增加email ModelContainer Table(database AppDatabase.class) public class People extends BaseModel {//自增IDPrimaryKey(autoincrement true)public Long id;Columnpublic String name;Columnpublic int gender;Columnpublic String email; } 第3步执行第二步之后需要build(Android studio的build-Make Project、Mac的童鞋直接commandF9)通过apt更新People_Table接下来编写Migrations Migration(version 2, database AppDatabase.class) public class Migration_2_People extends AlterTableMigrationPeople {public Migration_2_People(ClassPeople table) {super(table);}Overridepublic void onPreMigrate() {addColumn(SQLiteType.TEXT, People_Table.email.getNameAlias().getName());} } 类名可以更加自己喜欢定义我个人的规则是按照数据库版本号和需要更新的数据表来命名需要注意是version 2 数据库升级就大功告成了。 总结这篇文章只是简单介绍了DBFlow的基本功能使用DBFlow还有很多很厉害的功能比如多数据库支持、Powerful Model Caching等而且还支持Kotlin语言运行在Java虚拟机的新语言。我只使用过greenDAO、activeAndroid、afinal、DBFlow数据库所以在我看来DBFlow是我用过的数据库当中最好用的数据库性能也很好使用非常简单高度推荐。 我在github上共享一下DBFlow的配置 https://github.com/taoweiji/DBFlowExample 原文链接 Android高性能ORM数据库DBFlow入门 - 陶伟基Wiki - 博客园
http://www.huolong8.cn/news/86378/

相关文章:

  • 企业自助建站系统 嘉兴网站空间怎么选
  • 有哪些做任务网站会计专业建设规划
  • 男女做暧暧试看网站域名网站做优化外链
  • 济南手机建站价格深圳做网站的网络公
  • 云南网官方网站商城网站建站程序
  • 网站建设ui设计公司wordpress首页置顶文章
  • 广东网站seo营销社区网站的推广方案
  • 吉林市网站推广网站怎么加链接
  • 上海网站建设推荐秒搜科技外贸网站建设公司价格
  • 网站挣钱网网站建设架构书
  • 企业网站兰州建设费用软件开发工具推荐
  • 男孩子和男孩子在一起怎么做网站wordpress搬家 500
  • 网上商城网站开发与建立的意义工作用什么邮箱比较正式
  • 公司网站的意义注册公司的流程及费用
  • 打开网站 磁盘空间不足国产 做 视频网站
  • 网站后台登录域名江宁区住房和城乡建设局网站
  • 网站设计专业公司沈阳市有做网站的公司
  • 基木鱼建站网站建设捌金手指专业9
  • 广州做网站最好的公司快三网站开发
  • 网站上的导航栏怎么做云南省网站建设收费调查报告论文
  • 网站背景设计中企动力是正规公司吗
  • 电商erp网站开发全国中小企业服务平台
  • 苏州网站建设介绍网站建设公司运营模式
  • 个人网站可以做淘宝客好的营销网站设计公司
  • 宜宾市做网站多少钱成都专业网站制作建设
  • 以绿色为主色调的网站常州网站开发公司
  • 做网站的公司都是小公司跨境电商怎么注册开店
  • 网站 建设开发合同模板做公司网站的推广工作怎样
  • 在网站的标题上怎么做图标优秀电商设计网站有哪些内容
  • 网站设计的要求有哪些河北廊坊seo网站建设网站优化