自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fightingXia的博客

舞动的是手指,敲出的是世界。

原创 Oracle(二)之视图的使用

##概述 ##什么是视图 视图可以理解为一张虚拟表,它是由固定的sql查询语句操作真实表得到的一个临时表。视图中的数据就是查询sql语句的结果。得到视图之后,我们可以使用sql操作视图,但只能是查询操作。查询视图与查询真实表的sql语法完全相同。 ##视图的作用 首先看下面一个sql语句:...

2018-09-24 11:24:18 2497 3

原创 Oracle(一)之安装与使用

##概述 oracle是关系型数据库中的一种,与MySql类似,也是一种数据库服务,oracle公司出品。比MySql安全可靠,但收费。 oracle数据库无论在存储数据量,性能,执行效率,安全性,稳定性等各个方面都优于mysql,唯一的缺点就是收费,所以oracle数据库是很多大公司的首选。...

2018-09-24 09:33:05 662 0

原创 MySql(五)之sql优化

##概述 作为一个高级程序员,不仅要熟练使用sql语句,更应该使用高效的sql语句。 本篇blog讲解的内容主要包括: 索引的使用。 执行计划分析。 sql优化常见案例分析。 ##索引 一,什么是索引 索引的作用只有一个,提高查找效率。 如下面sql语句: select nam...

2018-09-23 16:05:28 1220 0

原创 MySql(四)之项目实战

##概述 MySql项目实战是结合实际开发工作,来说明数据库分析,数据库设计,数据库创建等一些列流程。这部分知识不属于严谨的技术,不同的人有不同的方法,如果你不认可你可以继续自己的方法。但是每个方法都不是绝对完美,都存在优缺点,希望与志同道合之士一起讨论学习。 启动一个新项目,对数据库的操作一...

2018-09-23 10:47:03 2544 0

原创 MySql(三)之多表查询

##概述 本篇blog主要讲解多表查询,包括连接查询和子查询,连接又分为交叉连接,内连接,外连接,外连接又分为左外连接和右外连接。 本篇blog主要以student表和score表为例说明多表查询的操作。 student表结构如下: create table student ( ...

2018-09-22 16:41:54 453 0

原创 MySql(二)之高级使用

##概述 本节主要讲解的知识有: 数据类型的使用。 主键,字段值唯一,不能为null等设置。 sql语句中的表达式。 排序。 分页 聚合函数。 分组。 sql注入及防止sql注入的方法。 ##数据类型的使用 数据库中的数据类型很多,下面仅仅讲解项目中常用的数据类型。 数据类型...

2018-09-16 18:29:33 640 0

原创 MySql(一)之使用入门

##概述 对msyql的总结分为五部分,如下: 1,MySql(一)之使用入门     包括:数据库的概念,mysql的安装,基本使用方式,创建库,创建表和基本增删改查sql语句的使用。 2,MySql(二)之高级使用     包括:数据类型的使用详解,sql语句中的表达式,聚合函数,分...

2018-09-16 11:54:50 553 0

原创 Java操作数据库方式(六)DataSource详解

##概述 在java世界里操作数据库有很多方式,在众多方式中除了JDBC外都有DataSource对象。 DataSource可以看作数据源,它封装了数据库参数,连接数据库,程序中操作DataSource对象即可对数据库进行增删改查操作。 不同方式中使用的DataSource对象不同。列举如...

2018-09-09 10:40:24 22650 0

原创 MyBatis框架(六)之在SpringBoot中集成MyBatis项目实战

##概述 目前java项目中使用SpringBoot和MyBatis组合是主流,且框架的前期配置大致相同,为了快速开启一个新项目,我整理了两个半成品项目放到了github上,与志同道合之士交流学习。 1,SimpleSBMB 简单集成SpringBoot和MyBatis框架。 2,SBMB...

2018-09-09 09:50:03 282 0

原创 MyBatis框架(五)之在SpringBoot中集成MyBatis

##概述 SpringBoot依然是java项目的主流,下面以实际项目为例说明在SpringBoot项目中使用MyBatis框架。 ##准备工作 在使用JDBC连接数据库之前,首先要有数据库,数据库要创建表。我的数据库信息如下: 数据库类型:MySql。 数据库名字:xia。 用户名:...

2018-09-08 23:53:17 254 0

原创 MyBatis框架(四)之在Spring框架中集成MyBatis

##概述 众所周知,目前的java项目几乎离不开Spring框架,而MyBatis又是操作dao层的优秀框架,所以非常有必要有必要学习在Spring框架中集成MyBatis。 下面以一个web项目为例说明在Spring框架中集成MyBatis具体使用。 ##准备工作 在使用JDBC连接数据...

2018-09-08 17:40:42 250 0

原创 MyBatis框架(三)之动态sql的使用

##概述 MyBatis框架之所以优秀,一是因为将sql与代码分离,二就是具有强大的动态sql功能。 主要的动态sql有: if标签的使用。 where标签的使用。 where标签与choose标签的联合使用。 set标签的使用。 foreach标签的使用。 trim标签的使用。 ...

2018-09-08 11:49:23 246 1

原创 MyBatis框架(二)之使用详解

##概述 MyBatis是java项目持久层框架中比较优秀的一个,几乎满足项目中的一切需求。 MyBatis的核心是Mapper文件,Mapper文件中接收java对象参数,写sql语句,返回Java对象结果,所以下面讲解的知识都是在Mapper文件中的操作。 主要内容有: 基本使用说明。...

2018-09-02 19:11:31 343 0

原创 MyBatis框架(一)之使用入门

在前段时间写了Java操作数据库方式系列的博客,包括:jdbc,dbcp,hibernate,Spring-data-jpa,这些知识都是平时学到的,几乎没有工作实战,所以写的都很浅显,以后有时间再深入研究。MyBatis框架也属于Java操作数据库的一种方式,这是我工作中一直用到的一种框架,所以...

2018-09-02 17:17:19 224 0

原创 Java操作数据库方式五MyBatis使用入门

##概述 ##MyBatis是什么 MyBatis是一个持久层框架,作用是在java项目中操作数据库。 ##MyBatis介绍 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目迁移到了google code,并且改名为MyBatis。  MyBatis是一...

2018-08-26 17:42:41 1378 0

原创 Java操作数据库方式四Spring data jpa的使用

##概述  在JPA和ORM介绍中说到,Spring data jpa框架属于JPA框架中的一种,是基于ORM思想实现的持久化框架. Spring data jpa属于spring家族,官方地址是:http://projects.spring.io/spring-data-jpa/ 我们做J...

2018-08-25 18:52:43 1638 1

原创 Java操作数据库方式三Hibernate的使用之注解的使用

##概述在hibernate中,通常配置对象关系映射关系有两种,一种是基于xml的方式,另一种是基于annotation的注解方式。在hibernate4及以后的版本直接使用注解,如果使用hibernate3的版本就需要引入annotation的jar包。在前面的博客中创建student.hbm....

2018-07-07 21:55:43 583 0

原创 Java操作数据库方式三Hibernate的使用之多表操作

##概述在开发中经常会遇到多表操作,Hibernate支持多表关联的操作。数据库表的关联关系分为三种:一对一,一对多,多对多,下面以“一对多”的栗子讲述Hibernate对多表的操作。##准备工作该博客继承上个博客,继续使用student表,再创建一个score表,student表与score是“...

2018-07-07 17:45:16 259 0

原创 Java操作数据库方式三Hibernate的使用之单表操作

##概述    在JPA和ORM介绍中说到,Hibernate框架输入JPA框架中的一种,是基于ORM思想实现的持久化框架。    Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hiber...

2018-06-23 12:11:40 891 0

原创 JPA和ORM介绍

##ORM介绍ORM的全称是:Object Relation Mapping,意思是:对象关系映射,用于在关系型数据库和业务实体对象之间作一个映射。从效果上说,它其实是创建了一个可在编程语言里使用的“虚拟对象数据库”。说白了就是把关系型数据库封装成业务实体对象,这样,我们在具体的操作业务对象的时候...

2018-06-18 12:02:13 2221 2

原创 Java操作数据库方式二DBCP使用详解

##概述DBCP的全称是:DataBase connection pool,翻译是:数据库连接池。在Java操作数据库方式一JDBC使用详解中说到直接使用JDBC非常消耗资源。为了避免频繁关闭链接数据库,所以出现了DBCP。DBCP的工作原理是:首先通过连接池预先同数据库建立一些连接,放在内存中,...

2018-06-17 10:55:05 1856 1

原创 Java操作数据库方式一JDBC使用详解

##概述JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API。JDBC由sun公司开发,放在jdk中的sql包下和javax.sql包下。可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。##准备...

2018-06-16 21:21:18 3077 0

原创 我的Java之路--Android转Java后台

作为一个资深Android程序猿,现正在Java的道路上砥砺前行。。。 刚入职目前公司不久,领导宣布Android项目停止,全力投入到对公司主站的改造上,公司主站是Java项目,我也就开始了Java开发。 说实在的,由Android转Java还是有一定难度的,虽然都是java语言,但编码...

2018-06-16 19:27:30 11216 11

原创 SuperEasyRefreshLayout的使用介绍

一,概述SuperEasyRefreshLayout是一个功能强大且易与使用的下拉刷新控件,参照Google提供的SwipeRefreshLayout的原理实现。源码见GitHub:SuperEasyRefreshLayoutSuperEasyRefreshLayout本质是一个容器,将可以滑动的...

2017-07-18 15:58:09 4396 6

原创 SwipeRefreshLayout源码分析

在上篇blog中我们发现使用SwipeRefreshLayout实现下拉刷新极其方便快捷,而且拉刷新控件与展示内容的控件实现了分离,非常便于代码的扩展与维护。但是其刷新UI确实很简单,很难入公司设计师的法眼,这时就需要我们修改刷新UI了。这篇blog从源码的角度分析SwipeRefreshLayo...

2017-07-18 14:50:54 572 0

原创 SwipeRefreshLayout的使用详解

SwipeRefreshLayout意思为下拉刷新的布局,其继承ViewGroup,Google在android5.0中提供的下拉刷新控件,且提供了v4支持包。 这是一个容器布局,将listView或SCrollView放入这个容器布局中即可实现下拉刷新的效果。有效的将下拉刷新控件与展示内容的控...

2017-07-18 14:15:10 14824 1

原创 自定义View(五)之继承ViewGroup

一,概述在android系统中可以把View分为两大类,一类是View,这类View本身具有展示UI的作用,比如TextView可以展示文本,ImageView可以展示图片,EditText可以编辑文字。另外一类是ViewGroup,即容器View,ViewGroup本质是容器,用来盛放View,...

2017-05-23 23:55:48 348 0

原创 自定义View(四)之QuickIndex的实现

一,概述在APP中,只要有联系人,都肯定有通讯录页面,而且所有的通讯录以页面都很相似,一个列表,列表中的人员按字母排列,而且按字母分组显示,且右侧有快速索引。具体效果如下图: 右侧带字母的view就是快速索引条,点击字母就可以快速找到该字母对应的联系人。使用如此广泛的View,在android ...

2017-05-21 09:58:19 312 0

原创 自定义View(三)之View类的onMeasure方法详解

onMeasure方法的作用是测量,测量view的宽高。一般情况下测量的宽高就是实际显示的宽高,但也有特殊情况,特殊情况在ViewGroup的onLayout方法中讲解,目前先认为测量的宽高就等于实际显示的宽高。下面先讲解onMeasure方法的基本用法,然后再分析onMeasure方法的源码。

2017-05-20 15:52:27 373 0

原创 自定义View(二)之Paint和Canvas详解

一,概述在Android中,所有的控件显示本质都是画出来的。所以在学习自定义控件时必须学习使用canvas和paint这个两个类。Paint是指画笔,Canvas是指画布或画板,android中View的绘制类似于美术专业学生的画画,使用带有一定属性的笔,在画板上画出想要的图案。

2017-05-20 13:56:07 372 0

原创 自定义View(一)之初识自定义View

我的自定义View的学习起源于CSDN,当时由于工作的需要开始在CSDN上搜索自定义view的blog查看,慢慢的可以实现了简单的自定义View的需求。随着时间的推移,自定义View的blog看的多了,也在工作中积累了相关经验,慢慢的自定义view的知识点掌握了很多,也做了很多笔记,大家都知道我早...

2017-05-20 12:08:16 431 0

原创 UrlHttpUtils使用介绍

一,概述在上一篇blog的末尾讲到了httpURLconnection使用时的缺点,和对httpURLconnection封装的必要性。鄙人不才,对httpURLconnection封装了一个工具类,并分享到了github。这篇blog主要讲解鄙人封装的httpURLconnection的使用方法...

2017-05-13 10:15:31 1377 0

原创 HttpUrlConnection使用详解

一,HttpURLconnection的介绍在Android开发中网络请求是最常用的操作之一, Android SDK中对HTTP(超文本传输协议)也提供了很好的支持,这里包括两种接口: 1、标准Java接口(java.NET) —-HttpURLConnection,可以实现简单的基于URL请...

2017-05-13 09:33:57 38629 4

原创 OKHttp原码分析(八)之必须明白的几个问题

截止到上一篇blog,OKHttp的源码分析已结束,由于篇幅有限,个人能力不足,分析不够细致,也不够完美,希望小伙们多多指正。这篇blog以带着问题找答案的方式再次回顾下OKHttp的源码。首先提出以下几个问题: Okhttp的异步请求是怎么开启子线程的? 异步请求时回调方法在哪被调用的?回调方法...

2017-05-09 20:44:45 523 0

原创 OKHttp原码分析(七)之HttpStream

在上篇blog中,讲解了RealConnection类以及重要的方法。当RealConnection类只在httpStream类中被引用。httpStream类是对RealConnection类的封装。在ConnectInterceptor类中创建了httpStream对象。在CallServer...

2017-05-07 14:07:43 793 0

原创 OKHttp原码分析(六)之RealConnection

一,概述okhttp是底层实现框架,与httpURLconnection是同一级别的。OKHttp底层建立网络连接的关键就是RealConnection类。RealConnection类底层封装socket,是真正的创建连接者。分析这个类之后就明白了OKHttp与httpURLconnection...

2017-05-07 11:25:34 466 0

原创 OKHttp原码分析(五)之Interceptor

一,概述在上篇blog中可知:在RealCall的getResponseWithInterceptorChain方法中创建了许多不同类型的Interceptor对象。然后在RealInterceptorChain对象的proceed方法中有调用了Interceptor对象的intercept方法,...

2017-05-06 14:04:51 413 0

原创 OKHttp原码分析(四)之getResponseWithInterceptorChain方法

一,概述在OKHttp原码分析(一)最后讲到无论是同步请求还是异步请求都殊途同归到了RealCall的getResponseWithInterceptorChain方法。这篇blog主要讲解RealCall的getResponseWithInterceptorChain方法。二,getRespon...

2017-05-06 13:30:37 1686 2

原创 OKHttp源码分析(三)之ResponseBody

一,概述在使用OKHttp访问网络时,无论是同步请求还是异步请求,返回结果都是Response对象,所有的说句都封装在这个对象中。 这个对象常用的方法有:int code = response.code();//获取响应码 String message = response.message();...

2017-05-06 12:55:29 8364 0

原创 OKHttp源码分析(二)之RequestBody

一,概述在上篇blog中以get请求为例分析了OKHttp框架的表层源码,具体参见:OKHttp源码分析(一)在post请求中用到的API很大部分与get请求中用到的API相同,最大的不同就是Request.Builder类的post方法,这个方法的作用是设置post请求的请求体,接收的参数是Re...

2017-05-01 12:30:38 9028 1

提示
确定要删除当前文章?
取消 删除