Android精通之OrmLite数据库框架,Picasso框架,Okio框架,OKHttp框架
版权声明:未经博主允许不得转载

OrmLite基础知识
什么是OrmLite框架,在我没用这个框架时,不知道它有多好,用了才知道很方便哦,为了提供开发效率,Android开发者需要懂得运行多种框架进行开发。对于OrmLite框架是一种很轻量级的数据库操作框架,它的底层是由反射机制实现的。
OrmLite框架
来认识一下OrmLite的官网:http://ormlite.com/releases/
展示

接下来我们下载4.48的jar包,分别是core和android的。
接下来你会看到
@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框架的更多相关文章
- 【转载】Android开源:数据库ORM框架GreenDao学习心得及使用总结
转载链接:http://www.it165.net/pro/html/201401/9026.html 最近在对开发项目的性能进行优化.由于项目里涉及了大量的缓存处理和数据库运用,需要对数据库进行频繁 ...
- Android开源框架——Picasso
开篇——介绍Picasso (Picasso是什么?)Picasso:A Powerfull Image Downloading and Caching Library for Android,即An ...
- android 一个SQLite数据库多个数据表的基本使用框架 (带demo)
android 一个SQLite数据库多个数据表(带demo) 前言 demo演示 一.搭建 二.建立实体类 三.建立数据库操作类 ...
- OkHttp框架从入门到放弃,解析图片使用Picasso裁剪,二次封装OkHttpUtils,Post提交表单数据
OkHttp框架从入门到放弃,解析图片使用Picasso裁剪,二次封装OkHttpUtils,Post提交表单数据 我们这片博文就来聊聊这个反响很不错的OkHttp了,标题是我恶搞的,本篇将着重详细的 ...
- Android开源框架源码分析:Okhttp
一 请求与响应流程 1.1 请求的封装 1.2 请求的发送 1.3 请求的调度 二 拦截器 2.1 RetryAndFollowUpInterceptor 2.2 BridgeInterceptor ...
- Android 框架学习之 第一天 okhttp & Retrofit
最近面试,一直被问道新技术新框架,这块是短板,慢慢补吧. 关于框架的学习,分几个步骤 I.框架的使用 II.框架主流使用的版本和Android对应的版本 III.框架的衍生使用比如okhttp就会有R ...
- 【转】Android 使用ORMLite 操作数据库
Android 使用ORMLite 操作数据库 用过ssh,s2sh的肯定不会陌生 ,应该一学就会 第一步: 下载ormlite-android-4.41.jar和ormlite-core-4.4 ...
- Android Multimedia框架总结(九)Stagefright框架之数据处理及到OMXCodec过程
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼:http://blog.csdn.net/hejjunlin/article/details/52532085 不知不觉到第九篇了,感觉还有 ...
- Android八门神器(一): OkHttp框架源码解析
HTTP是我们交换数据和媒体流的现代应用网络,有效利用HTTP可以使我们节省带宽和更快地加载数据,Square公司开源的OkHttp网络请求是有效率的HTTP客户端.之前的知识面仅限于框架API的调用 ...
随机推荐
- xtrabackup备份还原MySQL数据库
mysqldump 备份鉴于其自身的某些特性(锁表,本质上备份出来insert脚本或者文本,不支持差异备份),不太适合对实时性要求比较高的情况Xtrabackup可以解决mysqldump存在的上述的 ...
- 常用的OO设计原则
常用的OO设计原则: 1 封装变化:找出应用中可能需要变化之处,把它们独立出来,不要和哪些不需要变化的代码混在一起. 2 针对接口编程,而不是针对实现编程. 3 多用组合,少用继承. 4 松耦合:为了 ...
- IntelliJ IDEA2017 激活方法 最新的(亲测可用)
IntelliJ IDEA2017 激活方法(亲测可用): 搭建自己的授权服务器,对大佬来说也很简单,我作为菜鸟就不说了,网上有教程. 我主要说第二种,现在,直接写入注册码,是不能成功激活的(如果你成 ...
- 微探eventlet.monkey_patch
e ventlet.monkey_patch在运行时动态修改已有的代码,而不需要修改原始代码 在eventlet.monkey_patch中支持以下几种python原生库修改 eventlet.mon ...
- python note 06 编码方式
1.有如下值li= [11,22,33,44,55,66,77,88,99,90],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中.即: {'k1': 大 ...
- Working days
form FRM_GET_WORKING_DAYS TABLES pt_days CHANGING pv_duration. DATA:ls_xt001w TYPE t001w, lv_sdate T ...
- jsp相关笔记(三)
在往数据库的表中写入数据时,一定要与表中的每一项对应,比如表中有三项,则写入的值也应该是三类: String getTitle=request.getParameter("title&quo ...
- WEB框架本质和第一个Django实例
Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 总的来说:Web框架的本质就是浏览 ...
- Matching Networks for One Shot Learning
1. Introduction In this work, inspired by metric learning based on deep neural features and memory a ...
- 2019.03.04 bzoj5308: [Zjoi2018]胖(二分答案+st表)
传送门 想题5分钟调题两小时系列 其实还是我tcl 读完题之后自然会知道一个关键点能够更新的点是一段连续的区间,于是我们对于每个点能到的左右区间二分答案,用ststst表维护一下查询即可. 代码: # ...