版权声明:未经博主允许不得转载

OrmLite基础知识

什么是OrmLite框架,在我没用这个框架时,不知道它有多好,用了才知道很方便哦,为了提供开发效率,Android开发者需要懂得运行多种框架进行开发。对于OrmLite框架是一种很轻量级的数据库操作框架,它的底层是由反射机制实现的。

OrmLite框架

来认识一下OrmLite的官网:http://ormlite.com/releases/

展示



接下来我们下载4.48的jar包,分别是coreandroid的。

接下来你会看到

@DatabaseField(columnName = "name")

这你就被奇怪了,这大概是OrmLite的框架的特性吧~

OrmLiteSqlite中,你会编写一个数据库帮助类,继承OrmLiteSqliteOpenHelper,在该类中创建数据库和表的创建。

并重写两个方法:

onCreate()onUpgrade()

OrmLite框架中:

OrmLite 使用注解

自己创建一个实体类对应类

@中代表数据表(表名=“值为表名的名称,字段列的名称”)

@DatabaseTable(tableName="student")
public class Student{
}

@generatedId表示id为主键,true自动生成

@DatabaseField(generatedId = true)
private int id;

@columnName为字段名,同时下方

@DatabaseField(columnName = "name")
private String name;
@ForeignCollectionField为外键

创建数据库帮助类

在继承jar包中要添加两包类:

ormlite-android-4.48

ormlite-core-4.48

DatabaseHelper继承于OrmLiteSqliteOpenHelper

public class DatabaseHelper extends OrmLiteSqliteOpenHelper {
//这里创建一个构造函数,有参
private DatabaseHelper(Context context) {
super(context, DB_NAME, null, 2);
}
}

创建帮助类继承OrmLiteSqliteOpenHelper会自动导入两个方法:

@Override
public void onCreate(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource) {
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, ConnectionSource connectionSource, int i, int i1) {
}

在onCreate中创建数据表,在onUpgrade中创建表的更新,onUpgrade先删除表在创建新的表更新。

TableUtils为表工具类
//onCreate
TableUtils.createTable(connectionSource,Student.class); //onUpgrade
TableUtils.dropTable(connectionSource,Student.class,true);
onCreate(sqLiteDatabase,connectionSource);

在创建帮助类中,要获取DAO对象

//如下所示:
public Dao getDao(class class)throws SQLException{
...
}

Picasso框架

用于加载图片列表

onCreate
//设置图像
Picasso picasso = Picasso.with(this);
RequestCreator request = picasso.load(PATH_IMAGE_URI);
//网络加载错误,显示的图片
request.error(R.mipmap.ic_launcher);
//裁剪
request.resize(100, 100);
//设置占位符图片
request.placeholder(R.mipmap.ic_launcher);
Picasso.with(this).setIndicatorsEnabled(true);
class IconAdapter extends BaseAdapter {
private List<String> mDataUries; //public int getCount()
//public Object getItem(int i)
//public long getItemId(int i)
// public View getView(int i, View view, ViewGroup viewGroup)
}

OKio框架

历史:

  • java.io
  • java.nio
  • okio

OKio访问,存储,处理数据越来越方便

OKHttp框架

An HTTP+HTTP/2 client for Android and Java applications.

适用于Android和Java应用程序的HTTP和HTTP / 2客户端。

  • Apache HttpClient
  • HttpURLConnetion
  • OkHttp

OKHttp:https://github.com/square/okhttp

or Gradle:

implementation 'com.squareup.okhttp3:okhttp:3.10.0'

如果觉得不错,那就点个赞吧!❤️

定位:分享 Android&Java 知识点

Android精通之OrmLite数据库框架,Picasso框架,Okio框架,OKHttp框架的更多相关文章

  1. 【转载】Android开源:数据库ORM框架GreenDao学习心得及使用总结

    转载链接:http://www.it165.net/pro/html/201401/9026.html 最近在对开发项目的性能进行优化.由于项目里涉及了大量的缓存处理和数据库运用,需要对数据库进行频繁 ...

  2. Android开源框架——Picasso

    开篇——介绍Picasso (Picasso是什么?)Picasso:A Powerfull Image Downloading and Caching Library for Android,即An ...

  3. android 一个SQLite数据库多个数据表的基本使用框架 (带demo)

    android 一个SQLite数据库多个数据表(带demo) 前言        demo演示        一.搭建        二.建立实体类        三.建立数据库操作类        ...

  4. OkHttp框架从入门到放弃,解析图片使用Picasso裁剪,二次封装OkHttpUtils,Post提交表单数据

    OkHttp框架从入门到放弃,解析图片使用Picasso裁剪,二次封装OkHttpUtils,Post提交表单数据 我们这片博文就来聊聊这个反响很不错的OkHttp了,标题是我恶搞的,本篇将着重详细的 ...

  5. Android开源框架源码分析:Okhttp

    一 请求与响应流程 1.1 请求的封装 1.2 请求的发送 1.3 请求的调度 二 拦截器 2.1 RetryAndFollowUpInterceptor 2.2 BridgeInterceptor ...

  6. Android 框架学习之 第一天 okhttp & Retrofit

    最近面试,一直被问道新技术新框架,这块是短板,慢慢补吧. 关于框架的学习,分几个步骤 I.框架的使用 II.框架主流使用的版本和Android对应的版本 III.框架的衍生使用比如okhttp就会有R ...

  7. 【转】Android 使用ORMLite 操作数据库

    Android 使用ORMLite 操作数据库   用过ssh,s2sh的肯定不会陌生 ,应该一学就会 第一步: 下载ormlite-android-4.41.jar和ormlite-core-4.4 ...

  8. Android Multimedia框架总结(九)Stagefright框架之数据处理及到OMXCodec过程

    转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼:http://blog.csdn.net/hejjunlin/article/details/52532085 不知不觉到第九篇了,感觉还有 ...

  9. Android八门神器(一): OkHttp框架源码解析

    HTTP是我们交换数据和媒体流的现代应用网络,有效利用HTTP可以使我们节省带宽和更快地加载数据,Square公司开源的OkHttp网络请求是有效率的HTTP客户端.之前的知识面仅限于框架API的调用 ...

随机推荐

  1. Kubelet bootstrap 流程

    首先,什么是kubelet bootstrap?在安装 k8s worker node 时,基本上 worker 的初始状态仅仅是安装了 docker 和 kubelet,worker 需要一种机制跟 ...

  2. html 提取 公用部分

    在写HTML时,总会遇到一些公用部分,如果每个页面都写那就很麻烦,并且代码量大大增加. 网上查询了几种方法: 1.es6 的 embed 标签. <embed src="header. ...

  3. 2018面向对象程序设计(Java)第17周学习指导及要求

    2018面向对象程序设计(Java)第17周学习指导及要求(2018.12.20-2018.12.23)   学习目标 (1) 掌握线程同步的概念及实现技术: (2) Java线程综合编程练习 学习资 ...

  4. 数据库-1055报错-把only_full_group_by去掉

    [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated c ...

  5. jstl标准标签库 其他标签

    url操作标签 import 将另一个页面的内容引入到这个页面上来, 与include指令的区别: 这个标签可以引入其他项目中甚至网络上的资源 <c:import url="被导入的路 ...

  6. POJ-2387.Til the Cows Come Home.(五种方法:Dijkstra + Dijkstra堆优化 + Bellman-Ford + SPFA + Floyd-Warshall)

    昨天刚学习完最短路的算法,今天开始练题发现我是真的菜呀,居然能忘记邻接表是怎么写的,真的是菜的真实...... 为了弥补自己的菜,我决定这道题我就要用五种办法写出,并在Dijkstra算法堆优化中另外 ...

  7. [剑指Offer]38-字符串的全排列

    链接 https://www.nowcoder.com/practice/fe6b651b66ae47d7acce78ffdd9a96c7?tpId=13&tqId=11180&tPa ...

  8. 【读书笔记】深入应用C++11代码优化与工业级应用 读书笔记01

    第一章 使用C++11让程序更简洁.更现代 1.1  类型推导 1.1.1  auto类型推导 1.auto关键字的新意义 不同于python等动态类型语言的运行时进行变量类型的推导,隐式类型定义的类 ...

  9. 249. Group Shifted Strings把迁移后相同的字符串集合起来

    [抄题]: Given a string, we can "shift" each of its letter to its successive letter, for exam ...

  10. Python开发——数据类型【字典】

    字典的定义 # Python语言中唯一的类型映射 # 键与值之间用“:”分开 # 项与项之间用“,”分开 person = {"name":"yuan",&qu ...