自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (1)
  • 收藏
  • 关注

原创 Finally的使用场景解析

转载出处 :Java finally 的用法,看这一篇就够了finally的用法说明概述什么是finallyfinally用法1、简单的finally示例2. 不带catch的finally语句3. finally使用场景finally的执行机制1. 没有异常2、有异常无异常处理器3.有异常处理器4. try代码块有返回值5. catch中有返回值finally不执行的场景1.调用System...

2020-01-08 11:53:45 972

原创 Oracle数据库--内置函数

数值型函数绝对值:abs(n)取余mod(a,b):返回a除b的余数,如果b为0,则返回a正负号sign(n): 正数返回1,负数返回-1, 0返回0三角函数cos(n)、sin(n)返回大于等于参数的最小正数ceil(n)返回小于等于参数的最大正数floor(n)平方根sort(n)power(a,b)返回a的b次幂exp(n)返回e的n次幂log(a,b)返回以a为底b的对数

2017-10-10 18:28:49 432

原创 oracle数据库--SQL基础

数据定义语音(DDL)主要包括数据库对象的创建(create)、删除(drop)和修改(alter)操作。alter:ALTER TABLE table_name ADD column_name | MODIFY column_name | DROP column_name 一般在删除列是需要加上CASCADE CONSTRAINTS,将于该列有关的约束都删除掉约束的使用约束是为了保证数据库的完整

2017-10-10 16:40:06 223

原创 oracle数据库--基础

数据库模型层次结构模型网状结构模型 关系结构模型 三级模式和两级映射三级模式指的是外模式、模式和内模式; 两级映射指的是外模式/模式映射、模式/内模式映射。三级模式美国国家标准协会(American national standard institute,ANSI)的数据库管理研究小组将数据库分为3级:

2017-10-10 15:31:37 274

转载 RSA 加密算法

RSA加密算法原理

2017-08-27 16:20:55 201

转载 RPC框架原理简介

什么是RPC转载: http://agileai.iteye.com/blog/2250240RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使

2017-07-23 20:54:29 312

原创 Java--动态代理

代理分为静态代理和动态代理,静态代理是在编译时就将接口、实现类、代理类一股脑儿全部手动完成,但如果我们需要很多的代理,每一个都这么手动的去创建实属浪费时间,而且会有大量的重复代码,此时我们就可以采用动态代理,动态代理可以在程序运行期间根据需要动态的创建代理类及其实例,来完成具体的功能。其实方法直接调用就可以完成功能,为什么还要加个代理呢?      原因是采用代理模式可以有效的将具体的实现与调用

2017-07-23 15:46:07 217

原创 java--静态绑定和动态绑定

一个Java程序的执行要经过编译和执行(解释)这两个步骤,同时Java又是面向对象的编程语言。当子类和父类存在同一个方法,子类重写了父类的方法,程序在运行时调用方法是调用父类的方法还是子类的重写方法呢,这应该是我们在初学Java时遇到的问题。这里首先我们将确定这种调用何种方法实现或者变量的操作叫做绑定。在Java中存在两种绑定方式,一种为静态绑定,又称作早期绑定。另一种就是动态绑定,亦称为后期绑定。

2017-07-19 22:13:09 218

转载 Java--类加载器

转发地址: http://blog.csdn.net/column/details/java-vm.html什么是类加载器负责读取 Java 字节代码,并转换成java.lang.Class类的一个实例加载流程类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。它们开始的顺序如下图所示:其中类加载的过程包括了加载、验证、准备、解析

2017-07-17 23:49:19 147

原创 Java基础--抽象类和接口的区别

接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。抽象类在讲解抽象类之前,先了解一下抽象方法。抽象方法是一种特殊方法,只有声明,而没有具体实现,抽象方法声明格式:abstract void fun();抽象方法必须用abstract关键字进行修饰。如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键

2017-07-16 16:52:59 210

转载 Java并发编程--AQS原理介绍

AQS介绍AQS,即AbstractQueuedSynchronizer, 队列同步器,它是Java并发用来构建锁和其他同步组件的基础框架。来看下同步组件对AQS的使用:AQS是一个抽象类,主是是以继承的方式使用。AQS本身是没有实现任何同步接口的,它仅仅只是定义了同步状态的获取和释放的方法来供自定义的同步组件的使用。从图中可以看出,在java的同步组件中,AQS的子类(Sync等)一般是同步组件的

2017-07-16 15:57:35 554

转载 Java并发编程--CAS(Compare And Swap)无锁算法

转发: http://www.cnblogs.com/Mainz/p/3546347.html锁的代价锁是用来做并发控制的,代价也是非常高的。当我们内核进行一次加锁操作时操作系统进行了一次上下文的切换,加锁和释放锁会导致比较多的上下文切换和调度的延迟,而等待锁的线程会被挂起直到锁释放。

2017-07-16 14:37:33 272

转载 Java--hashCode(散列码)介绍

介绍Hashcode之前先来看几个概念在一个应用程序执行期间,如果一个对象的equals方法做比较所用到的信息没有被修改的话,则对该对象调用hashCode方法多次,它必须始终如一地返回同一个整数。如果两个对象根据equals(Object o)方法是相等的,调用这两个对象中任一对象的hashCode方法必须产生相同的整数结果

2017-07-15 15:57:11 387

转载 java--集合类型list、set、Map的用法和区别

集合类是我们日常使用中操作最频繁的一个Java类型,在讲解之前我们先看下他们之间的关系

2017-07-15 15:15:35 364

转载 java NIO(二)

本节通过几个实例来简单介绍一下四个channel的用法参考链接:

2017-07-13 22:33:46 163

原创 java NIO (一)

概述NIO的关键组成包括三个部分:channel(通道)、buffer(缓存区)和selector(选择区)。传统IO是基于字节流和字符流的,而NIO则是基于通道和缓存区的,数据可以从通道读取到缓存区,也可以从缓存区写入到通道。NIO和传统IO区别channel和传统IO的InputStream、OutputStream比较相似,但是传统的IO是单向的,只能写或者只能读。而NIO的channel是

2017-07-12 22:39:55 135

原创 javaNIO--前述I/O模型

概念在讲解NIO之前,先了解一下I/O的一些基本概念,这些概念经常会遇到,也经常会被混淆。同步和异步同步: 当有多个任务或者事件同时发生时,这些任务或者事件比较逐个执行,一个任务或事件的执行必然导致整个流程暂时等待,这些任务无法并行执行。异步: 当有多个任务或者事件同时发生时,这些任务或者事件可以同时执行,一个事件的执行不会导致整个流程的停滞。

2017-07-11 23:31:44 178

原创 java并发编程--并发容器CopyOnWriteArrayList

概述CopyOnWrite容器即写时复制的容器。通俗的理解是当我们往一个容器添加元素的时候,不直接往当前容器添加,而是先将当前容器进行Copy,复制出一个新的容器,然后新的容器里添加元素,添加完元素之后,再将原容器的引用指向新的容器。这样做的好处是我们可以对CopyOnWrite容器进行并发的读,而不需要加锁,因为当前容器不会添加任何元素。所以CopyOnWrite容器也是一种读写分离的思想,读和写

2017-07-11 20:46:45 360

原创 Java并发编程--Lock的用法

概要上一节提到了线程同步互斥的方法采用的是synchronized加锁的方法,但这种方式有个缺点就是其它线程会一直被阻塞,直到拿到锁后才能继续执行另一个缺点就是当线程执行异常后会自动释放到加锁对象试想这样一种场景,当前线程获取了一个临界锁,而这个时候线程要去处理很长的一个操作,比如IO读取文件,或者批量操作数据库,这个时候其它线程就会一直处理等待阻塞的状态,什么也做不了,导致效率极低。对于这种情况就

2017-07-10 22:00:18 248

原创 Java并发编程--synchronized用法

线程安全单线程不会存在线程安全问题,只有多线程才会有这个问题,什么是线程安全问题呢?就是线程的执行结果和我们的预期结果不一致比如当我们设计一个售票系统,假设只有一张票了,这个时候两个用户同时买票,A用户查询发现有一张票,B用户查询也发现有一张票,这个时候两个人同时下单,系统会将票同时分给AB两个人,而实际上此时只能有一个人获取到票。这个就是线程安全问题,即多个线程同时访问一个资源时,会导致程序运行结

2017-07-10 20:17:59 329

原创 Java基础--内部类

内部类在Java中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。广泛意义上的内部类一般来说包括这四种:成员内部类、局部内部类、匿名内部类和静态内部类。下面就先来了解一下这四种内部类的用法。成员内部类成员内部类就是在一个类的内部在定义一个类,这个内部户类就相当于是这个外部类的一个成员一样成员内部类可以访问外部类的属性和方法包括private,而外部类要访问内部类的属性或者方法,

2017-07-09 22:35:20 706

原创 java基础--static和final的用法

static被static修饰的变量或者方法不依赖于对象来进行访问,只要对应的类被加载,就可以通过类名直接访问简言之static就是用来在没有创建对象的情况下访问类的变量或者方法用途static修饰的变量或者方法被称作静态变量或者静态方法,因为它们是不依赖于任务对象的,因此静态方法中也就没有this这个说法。同时在静态方法中只能访问静态变量/方法,不能访问非静态变量/方法;而非静态方法可以访问静态

2017-07-09 21:03:53 272

原创 clone的用法--浅拷贝和深拷贝

浅拷贝在Java中我们对于基本数据类型变量的拷贝通常是重新复制一份或者是对对象的引用重新复制一份,这种拷贝方式是浅拷贝深拷贝有时候我们想拷贝整个对象的内容包括和这个对象相关联的对象的所有内容,这种拷贝是深拷贝实现方式通常实现的方法是实现使用Object中的clone方法。

2017-07-05 22:57:57 410

原创 Java序列化与反序列化(Serializable&&Externalizable)

概念序列化:将Java对象转换为字节序列的过程反序列化:将字节序列转换为Java对象的过程为什么要这么操作我们都知道可以通过网络传递图片、视频、文件等等数据信息,而这些信息最终都是以二进制序列传递的。那么Java对象呢?如果两个系统间要通过Java对象进行通信改怎么办,这个时候就要使用到Java的序列化和反序列化了。而序列化的好处是什么呢?

2017-07-05 22:16:28 545

原创 设计模式02-工厂模式

目的工厂模式主要是为创建对象提供一些过渡接口,将创建对象的具体过程对外部屏蔽隔离起来,以达到较高的灵活性的目的分类工厂模式主要分为三类: 1)简单工厂模式(Simple Factory) 2)工厂方法模式(Factory Method) 3)抽象工厂模式(Abstract Factory)

2017-07-03 23:29:33 151

原创 Volatile关键字解读(四)

volatile原理前面讲解了一些内存相关的基础知识作为本节的一个铺垫,本节开始讲解volatile的用法

2017-07-02 23:18:09 206

原创 Volatile关键字解读(三)

Java内存模型前面讲解了内存模型的基本知识,本节主要对Java内存模型进行说明

2017-07-02 18:13:51 236

原创 Volatile关键字解读(二)

并发编程三要素在并发编程的过程中,我们经常会遇到这三种问题:原子性、有序性和可见性

2017-07-02 17:46:05 180

原创 Volatile关键字解读(一)

volatile关键字很多人都听说过,但真正使用起来并不是那么简单容易,因为这关系到很多内存模型相关的知识点,本人最近在网上翻看了很多资料,在此做一下总结

2017-07-02 17:05:05 223

原创 设计模式01-单例模式

单例模式单例模式是设计模式中最简单的一个,也是使用最多的一个

2017-07-01 17:09:00 231

原创 java对象转换map

背景介绍原理说明反射概念功能作用实现方式方法介绍实例展示对象转MAP背景介绍  今天在项目研发的过程中遇到这样一个需求,在一个统一处理类的入口要将所有后面处理流程需要用到的值统一塞进上下文的MAP对象中,这其中就包括了一持久层的DO对象。   如果对于对象进行逐个遍历是可以实现这个需求,但代码量比较大,所以一直在寻求一种比较合理的处理方式。后来发现可以通过反射的方式实现这个功能。原理

2017-06-14 20:22:15 1917

linux C函数库

很全面的linuxC函数讲解文档,每个章节介绍一类函数库的用法,包括代码实例

2012-12-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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