自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 oracle基础操作

数据库连接数查询select count() from vprocess;−−当前的数据库连接数selectcount(∗)fromvprocess ; --当前的数据库连接数 select count(*) from vprocess;−−当前的数据库连接数selectcount(∗)fromvsession ; --当前的session连接数select count() from ...

2019-01-05 17:18:46 169 1

原创 mysql用户创建与授权

创建用户CREATE USER ‘username’@‘host’ IDENTIFIED BY ‘password’示例:例子: CREATE USER ‘dog’@‘localhost’ IDENTIFIED BY ‘123456’;CREATE USER ‘pig’@‘192.168.1.101_’ IDENDIFIED BY ‘123456’;CREATE USER ‘pig’@’...

2019-01-05 17:16:37 149

原创 mysql链接字符串

spring.datasource.url=jdbc:mysql://192.9.200.41:3306/mydbinstance?characterEncoding=utf-8spring.datasource.username=userspring.datasource.password=passspring.datasource.driver-class-name=com.mysql....

2019-01-05 17:15:37 1014

原创 tcp/ip

tcp/ip网络报文传输一.tcp报文格式1.源端口:源端口与ip是用来识别报文的返回地址。2.目的端口:指明报文接收方计算机应用程序接口。tcp报文中的源端口号和目的端口号同ip数据报文中的源ip与目的ip确定一条tcp连接。3.序号和确认号:是tpc可靠传输的关键,序号是本报文段发送的数据组的第一个字节的序号。在tcp当中,每一个字节都有一个序号,序号确保了传输的有序性。确认号...

2019-01-05 17:13:27 171

原创 网络基础之http

网络基础之http请求与响应个版本http差异请求与响应http请求包含请求行(请求方法,url,版本),请求头(auth,cookie,编码方式,报文类型,支持的报文类型等),请求体(请求内容)。http响应包含状态行(响应码,版本),响应头(set cookie,报文类型,server),响应体。1.xx 信息状态码,表示接收成功,等待客户端下一次请求才能完成整个处理过程。2.xx...

2019-01-05 17:05:33 105

原创 跳表 skipList

skipList跳表是一个多层有序链表,与红黑树都用于列表排序,在写操作较多,并发写场景下红黑树结构会产生严重的性能问题,为保持红黑树性质,需要对整个树进行加锁,并且需要翻转节点来维持平衡。跳表在这种情况下比较有优势,跳表的平均时间复杂度为log(n),与红黑树相差不大,在频繁写或并发写只需要维护节点两端的链接关系,消耗较小。跳表的层级是在一定范围内随机的,不需要严格维护层级数。redis的z...

2019-01-03 20:59:57 167

原创 B树(B-树) B+树

B树(B-树) B+树B树定义B树的使用场景B树定义对于一颗M阶B树具有以下性质1.根节点的子节点数为[2,M]。2.除根节点与叶节点外的节点子节点数数为[M/2,M]。3.除根节点每个节点都存放数据个数为[M/2-1,M-1],升序存储。4.非叶节点存储数据个数为指向子节点指针数-1.5.所有的叶节点都在同一层。B树的使用场景在数据存储中,AVL树与红黑树的查询时间都是相对低...

2019-01-03 20:58:12 304

原创 红黑树

红黑树红黑树性质红黑树新增调整红黑树:红黑树性质除了二叉树的基本条件以外,红黑树还具有以下性质。1.所有节点都是红色或是黑色。2.根节点是黑色。3.子叶节点(NIL)节点是黑色。(空节点)4.红节点的子节点必须是黑色。5.从任意一个节点处发到其每个叶节点路径,黑节点数量是相等的。红黑树的第1与第5个性质决定了红黑树每个节点到子叶的最长路径不超过最短路径的2倍,节点到子叶的最短路径...

2019-01-03 20:50:26 156

原创 AVL树

AVL树AVL树就是平衡二叉树,平衡二叉树的每个节点左右子树的高度差不超过1.AVL树每个节点都有高度,节点的高度为左右子树的最高高度加1,节点在新增或删除时递归维护每个节点的高度,每次旋转也都需要维护节点的高度。AVL树是否需要旋转以及旋转方式都跟平衡因子相关,平衡因子为节点左子树的高度减去右子树的高度。平衡二叉树的查询复杂度为O(Log2n),当往平衡二叉树添加或删除节点时有可能会破坏平衡...

2019-01-03 20:46:33 172

原创 二叉查找树(排序树 搜索树 )

二叉查找树(排序树 搜索树 )二叉查找树定义二叉查找树的时间复杂度二叉查找树的三种遍历方式。1.先序遍历2.中序遍历3.后序遍历二叉查找树定义(一)若左子树不为空,则左子树上所有节点的值都小于它的根节点的值。(二)若右子树不为空,则右子树上所有节点的值都大于它的根节点的值。(三)左右子树也分别是二叉排序树。(四)没有键值相等的节点。二叉查找树的时间复杂度如果一棵二叉查找树是平衡的,则...

2019-01-03 20:36:46 400

原创 java io与nio

io与nio一、概念二、NIO和IO的主要区别1、面向流与面向缓冲2、阻塞与非阻塞IO3、选择器(Selectors)三、NIO和IO如何影响应用程序的设计一、概念NIO即New IO,这个库是在JDK1.4中才引入的。NIO和IO有相同的作用和目的,但实现方式不同,NIO主要用到的是块,所以NIO的效率要比IO高很多。在Java API中提供了两套NIO,一套是针对标准输入输出NIO,另一套...

2019-01-03 20:33:48 110

原创 java基础之 Object

java基础之 ObjectObjecthashcode与equals方法,都可以用来比较两个对象是否相等,Object中hashcode返回对象地址,equals比较的是内存地址,hashCode返回的是一个整数,一般情况hashcode计算要比equals简单,使用hash结构存储数据可以达到O(1)时间复杂度,如果直接使用equals循环比较时间复杂度为O(n)。因此使用hash结构存储...

2019-01-03 20:30:55 91

原创 并发编程之cas

并发编程之cascas compare and swap 原语操作通过cpu指令实现。cas操作是一组不可分割的指令,必须连续执行,在执行过程中不允许被中断。cas(V,E,U) 一般情况包含三个参数:V表示要更新的变量,E表示期望的值,U表示新值。cas希望提供一个期望值,如果当前值与期望值相同则执行交换,更新变量为新值。java 中的cas依赖于Unsafe类实现,Unsafe类位于s...

2019-01-03 20:28:00 192

原创 数据库 redo undo log

数据库 redo undo logundo logredo logredo log与undo log的关系checkpoint检查点数据库宕机数据恢复回放策略。undo log数据库使用undo log保证事务的原子性。数据库在一个事务中的增删改,为了保证可回滚,会先记录undo log,undo log在数据库当中会有独立的undo log表空间,数据库的mvcc也是基于undo log实...

2019-01-03 20:24:19 463

原创 数据库并发多版本控制mvcc

数据库并发多版本控制mvccmvcc查询需要遵循以的规则mvcc适用场景mvcc查询数据细节如果严格采用数据库三级封锁协议,采用第二第三级封锁协议时,读写数据加锁,数据库的读操作会被阻塞,在读写并发访问量高的场景下读操作性能会急剧下降,为提高高并发场景下数据库的读性能,数据库一般采用并发多版本控制(mvcc)来实现。mvcc是一种不利用锁机制实现的隔离,主要实现了在保证数据一致性的前提下实现数...

2019-01-03 20:21:31 735

原创 mysql索引类型

mysql索引类型索引类型:(1)唯一索引,列中每个值唯一,允许null值,查询速度快(2)常规索引(3)单列索引(4)复合索引。多列索引,查询遵循最左原则,中间字段有范围查询或间隔索引字段查询只能匹配最左能匹配上的索引。(5)聚簇索引。数据以该列集中在一起,一个表中只能有一个聚簇索引。(6)非聚簇索引。常规索引,数据分散,需要索引文件维护(7)覆盖索引。索引中包含需要查询的列,无...

2019-01-02 22:38:25 148

原创 索引规则

索引规则(1)选择唯一性索引。唯一性索引能快速从索引中定位到值,过多相同的值会降低查询效率。(2)为经常排序,分组,联合查询(外键)的字段建立索引。排序操作会浪费很多时间,建立索引可以有效避免排序操作。(3)为经常查询的字段建立索引。经常查询的字段会影响整个表的查询速度,为该字段建立索引能提高整表的查询速度。(4)尽量使用数据量少的索引字段。char(100)字段进行全文检索明显比char...

2019-01-02 22:37:01 2545

原创 数据库锁

数据库锁锁分类乐观锁悲观锁意向锁行级锁分类共享锁排他锁更新锁数据库的隔离级别读未提交读已提交可重复读可串行化三级封锁协议一级封锁协议二级封锁协议三级封锁协议锁分类乐观锁乐观锁一般是指用户可以自己实现的一种锁,假设认为数据不会造成冲突,所以在数据更新提交的时候,才正式对数据的冲突与否进行检测,如果发生冲突,则返回错误信息,让用户决定如何去做。乐观锁的实现方式一般包括版本号和时间戳。悲观锁利...

2019-01-02 22:32:02 210

原创 java基础之 List

ListArrayList非线性安全,体现在多个线程add值的时候数组下标没有相应移动导致值相互覆盖丢失与多线程add值时扩容机制有可能判断失误判断为不需要扩容,导致最终条件的元素超过数组大小越界异常。线性安可使用CopyonwriteList读写分离,写入移除元素时加锁。ArrayList每次扩容siz*3/2+1,遍历时不允许修改List元素个数,每次遍历输出元素时校验修改次数,如果修改次数...

2019-01-02 22:17:39 134

原创 java基础之 Map

MapHashMapLinkedHashMapTreeMapHashTableConcurrentHashMapHashMap数组加链表结构,数组初始容量为16,负载因子为0.75,扩容阀值为容量*负载因子或默认容量最大值+1,每次扩容2倍,如果扩容量达到最大可扩容量后,扩容阀值改为整型最大值,不再进行扩容。线性不安全,体现在需要扩容时使用头插法重新计算拷贝节点数据,多线程同时执行transf...

2019-01-02 22:15:39 93

原创 并发编程之 concurrent包概述

concurrent包概述QueueConcurrentMap闭锁 CountDownLatch栏栅交换机 Exchanger信号量:Semaphore线程池 执行服务 ExecutorService定时执行服务 ScheduleExecutorServiceForkJoinPoolAtomic系列Queue接口BlockingQueue:队列存储,有put,take操作,put操作在队列满时...

2019-01-02 22:10:32 159

原创 并发编程之 ThreadLocal

ThreadLocalThreadLocal数据结构ThreadLocal内存泄漏问题为什么ThreadLocalMap的key是弱引用类型ThreadLocal使用场景ThreadLocal数据结构ThreadLocal是一个线程本地变量,数据结构是存放在Thread中的一个ThreadLocal.ThreadLocalMap threadlocals,这是一个简单的Hash结构Ma...

2019-01-02 22:05:29 82

原创 并发编程之volatile关键字

volatile关键字(一)解决线程间共享变量的不可见性。(二)禁止指令重排序。(三)volatile不具备原子性在并发编程领域当中,volatile关键字经常被提到,实际项目中很少用到这个关键字。但对于某些并发场景volatile还是能解决规避一些问题的。volatile关键字主要有以下两方面作用:(一)解决线程间共享变量的不可见性。计算机在处理程序时希望能得到更快的速度,因此在cpu中...

2019-01-02 22:01:07 102

原创 并发编程之synchronized

synchronized 局部锁全局锁jdk1.6后对synchronized的优化重量级锁synchronized优化偏向锁轻量级锁锁粗化锁消除我们说到并发编程我们很容易想到synchronized关键字,sychronized是锁机制中比较常见的同步锁,synchronized是基于jvm级别的锁,由jvm管理锁的获取与释放,使用者无需担心锁不释放问题。synchronized可以修饰方法,...

2019-01-02 21:51:46 280

原创 并发编程之Lock

Locksychronized缺陷sychronized与lock区别lock实现类lock是java concurrent locks包下提供的锁机制,已经有了sychronized后为什么还需要Lock呢?sychronized缺陷1.在同一时刻只能有一个线程时执行同步代码,不能区分读写,并发性不高。2.如果获取锁线程在执行较长时间的io操作或正在sleep,其他线程只能持续等待。s...

2019-01-02 21:44:01 206

原创 restful风格webservice HttpClient方式调用

实例:服务接口:package com.webservice.service;/** * Created by oracle on 2016/8/3. */public interface XmlWebservice { public String getXmlResponse(String reqXml);}服务接口实现类:package com.webse

2016-08-05 14:01:31 945

原创 Maven+Dom4j

dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面还可以找到一篇文章,对主流的Java XML API进行的性能、功能

2016-08-05 13:51:06 5596 1

原创 maven+cxf编写RESTful风格webservice

pom.xml添加maven依赖 org.apache.servicemix.bundles org.apache.servicemix.bundles.json-lib 2.4_1 javax.ws.rs jsr311-api 1.1.1 org.apache.

2016-08-02 00:01:04 2135 1

原创 maven+CXF编写webservice

Apache CXF 是一个开放源代码框架,提供了用于方便地构建和开发 Web 服务的可靠基础架构。它允许创建高性能和可扩展的服务,您可以将这样的服务部署在 Tomcat 和基于 Spring 的轻量级容器中,以及部署在更高级的服务器上,例如 Jboss、IBM® WebSphere® 或 BEA WebLogic。        该框架提供了以下功能:Web 服务标准支持

2016-07-31 18:59:08 2778

空空如也

空空如也

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

TA关注的人

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