自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

西瓜游侠的博客

开心快乐码代码!

  • 博客(37)
  • 资源 (1)
  • 收藏
  • 关注

转载 构造hash函数的方法、解决冲突的方法、常见hash算法

转载:http://blog.csdn.net/tanggao1314/article/details/51457585构造hash函数的方法直接定址法:直接定址法是以数据元素关键字k本身或它的线性函数作为它的哈希地址,即:H(k)=k 或 H(k)=a×k+b ; (其中a,b为常数)。数字分析法:假设关键字集合中的每个关键字都是由 s 位数字组成 (u1, u2, …, us),分析关键

2017-08-29 11:10:08 1670

原创 SpringMVC相关

1、SpringMVC流程架构图http://www.cnblogs.com/HigginCui/p/5856780.html

2017-08-28 23:13:07 332

转载 Java中的线程状态

转载:http://www.cnblogs.com/skywang12345/p/3479024.html线程状态图说明:线程共包括以下5种状态。新建状态(New):线程对象被创建后,就进入了新建状态。例如,Thread thread = new Thread()。就绪状态(Runnable): 也被称为“可执行状态”。线程对象被创建后,其它线程调用了该对象的start()方法,从而来启动该线程

2017-08-28 14:49:39 892

原创 JVM中对象的访问定位方式(句柄、直接指针)

建立对象是为了使用对象,我们的Java程序需要通过栈上的reference数据来操作堆上的具体对象。由于reference类型在Java虚拟机规范中只规定了一个指向对象的引用,并没有定义这个引用应该通过何种方式去定位、访问堆中的对象的具体位置,所以对象访问方法也是取决于虚拟机的实现而决定的。目前主流的访问方式有使用句柄和直接指针两种。(1)通过句柄访问对象 优点:reference存储的是稳定的

2017-08-26 11:23:05 1074

原创 对象的内存布局

对象的内存布局(1)对象头第一部分:Mark Word。用于存储自身的运行时数据,包括哈希码、GC分代年龄、锁状态标志、线程持有的锁、偏向线程ID、偏向时间戳等。第二部分:类型指针。即对象指向它的元数据的指针,虚拟机通过这个指针来确定这个对象是哪个类的实例。不过并不是所有的虚拟机实现都必须在对象数据上保留类型指针,换句话说,查找对象的元数据信息并不一定要经过对象本身。另外,如果对象是一个Java

2017-08-26 11:12:29 361

原创 对象的创建过程(new 的过程)

在Java程序当中每时每刻都有对象被创建出来。在语言层面上,创建对象通常仅仅是使用一个new关键字而已,而在虚拟机中,对象(仅限于普通Java对象)的创建又是怎样一个过程呢?虚拟机遇到一条new指令时,首先将去检查这个指令的参数能否在常量池中定位到一个类的符号引用。并且检查这个符号引用代表的类是否已经被加载、解析和初始化过。如果没有,那就先执行类加载的过程(关于类加载过程在后面的博客中会进行介绍)。

2017-08-26 11:07:56 5927 1

原创 常用计算的实现

求两个数 a, b 的最大公约数 //求a,b的最大公约数 public int gcd(int a, int b) { while(a % b != 0) { int c = a % b; a = b; b = c; } return b; }

2017-08-24 23:07:21 233

转载 HTTP 长连接和短连接

转载:http://blog.jobbole.com/93960/1. HTTP协议与TCP/IP协议的关系HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递数据包,使在网络上的另一端收到发端发出的所有包,并且顺序与发出顺序一致。TCP有可靠,面向

2017-08-24 14:31:52 608

转载 LockSupport(park/unpark)源码分析

转载:http://www.cnblogs.com/zhizhizhiyuan/p/4966827.htmlconcurrent包是基于AQS (AbstractQueuedSynchronizer)框架的,AQS框架借助于两个类:Unsafe(提供CAS操作)LockSupport(提供park/unpark操作)因此,LockSupport非常重要。两个重点(1)操作对象归根结底,Lock

2017-08-23 14:49:14 917

转载 其他

Java中 char 类型转 int System.out.println("输出'0'~'9'的所有char类型字符(还是char类型)"); for(char ch = '0'; ch <= '9'; ch++) { System.out.print(ch + " "); } System.out.printl

2017-08-20 11:55:22 283

原创 MyBatis知识点总结

Hibernate/MyBatis两者的区别区别:http://www.jianshu.com/p/f54b147b6041 参考文章http://blog.csdn.net/firejuly/article/details/8190229MyBatis一级和二级缓存《深入理解mybatis原理》 MyBatis缓存机制的设计与实现 http://blog.csdn.net/luanlouis/

2017-08-16 19:36:28 454

转载 SpringMVC等知识点

Servlet 生命周期及各个方法参考文章http://www.cnblogs.com/xuekyo/archive/2013/02/24/2924072.htmlServlet中如何自定义Filter参考文章http://www.cnblogs.com/javawebsoa/archive/2013/07/31/3228858.html过滤器和拦截器的区别http://www.cnblogs.co

2017-08-16 19:34:06 245

原创 二分查找(递归、非递归)

二分查找(递归)package com.tao.algorithm;/** * Created by michael on 17-8-13. */public class 二分查找_递归 { public static void main(String[] args) { int[] a = new int[] {1,2,3,4,5,6,7,8,9,10,11,12,13,

2017-08-16 10:35:18 293

转载 简单选择排序、直接插入排序、归并排序

一、简单选择排序基本思想: 在要排序的一组数中,选出最小的一个数与第一个位置的数交换; 然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止。实例: Java实现:package com.tao.algorithm;/** * Created by michael on 17-8-13. */public class 简单选择排序 {

2017-08-16 10:32:35 629

转载 B-树(B树)、B+树、B*树

转载:http://www.jianshu.com/p/d43434dc5dfdB-TreeB-Tree就是B树。是一种多路搜索树(并不是二叉的): 1.定义任意非叶子结点最多只有M个儿子;且M>2; 2.根结点的儿子数为[2, M]; 3.除根结点以外的非叶子结点的儿子数为[M/2, M]; 4.每个结点存放至少M/2-1(取上整)和至多M-1个关键字;(至少2个

2017-08-15 15:32:12 275

转载 虚拟机内的锁优化(偏向锁,轻量级锁,自旋锁,重量级锁)

基础知识之一:锁的类型锁从宏观上分为:(1)乐观锁;(2)悲观锁。(1)乐观锁乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,采取的方式是在写时先读出当前版本号,然后加锁操作(比较跟上一次的版本号,如果一样则更新),如果失败则要重复读-比较-写的操作。java中的乐观锁基本都是

2017-08-14 16:15:28 1931 1

转载 锁优化(5种方法)

转载:http://www.importnew.com/21353.html1. 锁优化的思路和方法锁优化的思路和方法有以下几种:减少锁持有时间减小锁粒度锁分离锁粗化锁消除1.1 减少锁持有时间public synchronized void syncMethod(){ othercode1(); mutextMethod();

2017-08-14 14:39:34 7543 1

转载 冒泡排序、快速排序、堆排序(Java)

转载:http://blog.csdn.net/pzhtpf/article/details/7560294一、冒泡排序 基本思想: 在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。 即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。Java实现: /** * 冒

2017-08-12 23:01:57 1808

转载 乐观锁、悲观锁

转载:http://www.open-open.com/lib/view/open1452046967245.html在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。无论是乐观锁还是悲观锁,都是人们定义出来的概念,可

2017-08-12 14:01:17 354

原创 数据库相关知识点总结

数据库范式参考http://www.360doc.com/content/12/0712/20/5287961_223855037.shtml96.数据库事务隔离级别参考http://blog.csdn.net/fg2006/article/details/693741397.数据库连接池的原理参考http://blog.csdn.net/shuaihj/article/details/142230

2017-08-12 11:09:02 237

原创 数据库三范式

转载:http://www.jianshu.com/p/3be2c9e22ca4范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。目前有迹可寻的共有8种范式,依次是:1NF,2NF,3NF,BCNF,4NF,5NF,DKNF,

2017-08-12 11:02:14 343 1

原创 数据库相关知识点总结

数据库范式参考http://www.360doc.com/content/12/0712/20/5287961_223855037.shtml96.数据库事务隔离级别参考http://blog.csdn.net/fg2006/article/details/693741397.数据库连接池的原理参考http://blog.csdn.net/shuaihj/article/details/142230

2017-08-12 10:52:34 932

原创 用static关键字修饰类(只适用于内部类)

Java里面static一般用来修饰成员变量或函数。但有一种特殊用法是用static修饰内部类。普通类是不允许声明为静态的,只有内部类才可以。被static修饰的内部类可以直接作为一个普通类来使用,而不需先实例一个外部类。public class OuterClass { public static class InnerClass { InnerClass(){

2017-08-11 17:35:58 8803 2

转载 线程间的通信、同步方式、进程间通信方式

转载:http://www.jianshu.com/p/9218692cb2091、线程间的通信方式使用全局变量 主要由于多个线程可能更改全局变量,因此全局变量最好声明为volatile。使用消息队列实现通信 在Windows程序设计中,每一个线程都可以拥有自己的消息队列(UI线程默认自带消息队列和消息循环,工作线程需要手动实现消息循环),因此可以采用消息进行线程间通信sendMessage

2017-08-10 17:52:14 890

原创 Netty框架及源码知识点

1、Netty的网络模型http://blog.csdn.net/hbtj_1216/article/details/753319952、Reactor模式和Proactor模式http://blog.csdn.net/hbtj_1216/article/details/753497313、select、poll、epoll详解http://blog.csdn.net/hbtj_1216/artic

2017-08-08 21:03:18 1102

转载 数据库事务的隔离级别

1、脏读脏读是指在一个事务处理过程里读取了另一个未提交的事务中的数据。当一个事务正在多次修改某个数据,而在这个事务中这多次的修改都还未提交,这时一个并发的事务来访问该数据,就会造成两个事务得到的数据不一致。例如:用户A向用户B转账100元,对应SQL命令如下update account set money=money+100 where name=’B’; (此时A通知B) update acc

2017-08-08 20:58:07 389

转载 Spring事务详解

转载:http://blog.csdn.net/trigl/article/details/50968079参考文章: Spring事务机制详解 Spring事务配置的五种方式 Spring中的事务管理实例详解1、初步理解理解事务之前,先讲一个日常生活中最常干的事:取钱。 比如你去ATM机取1000块钱,大体有两个步骤:首先输入密码金额,银行卡扣掉1000元钱;然后ATM出1000元钱。这

2017-08-08 13:39:26 2070

原创 【Java设计模式12】——外观(门面)模式

一、外观模式介绍外观模式(Facade),它隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。这种类型的设计模式属于结构性模式。为子系统中的一组接口提供了一个统一的访问接口,这个接口使得子系统更容易被访问或者使用。二、模式结构简单来说,该模式就是把一些复杂的流程封装成一个接口供给外部用户更简单的使用。在这个模式中,涉及到3个角色。门面角色(Facade):外观模式的核心。它被客户角色调用

2017-08-08 10:53:49 484

转载 【Java设计模式11】——组合模式

转载:http://www.cnblogs.com/chenssy/p/3299719.html一、组合模式定义组合模式组合多个对象形成树形结构以表示“整体-部分”的结构层次。组合模式对单个对象(叶子对象)和组合对象(组合对象)具有一致性,它将对象组织到树结构中,可以用来描述整体与部分的关系。同时它也模糊了简单元素(叶子对象)和复杂元素(容器对象)的概念,使得客户能够像处理简单元素一样来处理复杂元素

2017-08-07 22:30:37 482

原创 HashMap中(tab.length - 1) & hash的神奇之处

在HashMap和ConcurrentHashMap的源码中,作者通过:int index = (tab.length - 1) &amp; hash;来计算将要插入的元素在数组中的索引位置。这样做有什么妙处呐?1、保证不会发生数组越界首先我们要知道,在HashMap和ConcurrentHashMap中,数组的长度按规定一定是2的幂(2的n次方)。因此,数组的长度的二...

2017-08-03 15:40:54 2848 4

原创 Spring框架及源码知识点

1、依赖注入(DI) 和 控制反转(IoC) 概念http://blog.csdn.net/hbtj_1216/article/details/728110772、spring AOP——面向切面编程(上)http://blog.csdn.net/hbtj_1216/article/details/728345473、Spring AOP——面向切面编程(下)http://blog.csdn.net

2017-08-03 11:00:29 701

原创 forward 和 redirect 的区别

区别:forward是转发;redirect是重定向。从地址栏显示来说 forward:是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器。浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址. redirect:是服务端根据逻辑,向浏览器发送一个状态码,告诉浏览器重新去请求那个新地址。所以地址栏显示的是新的URL。

2017-08-03 10:18:45 607

原创 HTTP中GET和POST的区别

区别: 首先申明:HTTP协议没有对传输的数据大小进行限制,HTTP协议规范也没有对URL长度进行限制。GET提交,请求的数据会附在URL之后(放在请求行中),以?分割URL和传输数据,多个参数用&连接。POST提交:把提交的数据放置在是HTTP请求报文的消息体中。GET提交的数据会在地址栏中显示出来,而POST提交,地址栏不会改变。GET:特定浏览器和服务器对URL长度有限制,一般是不能超

2017-08-01 19:38:05 4420 1

原创 HTTP常见状态码

一、状态码的类别 Type Reason-phrase Note 1XX Informational(信息性状态码) 表示接受的请求正在处理 2XX Success(成功状态码) 表示请求正常处理完毕 3XX Redirection(重定向状态码) 表示需要客户端需要进行附加操作 4XX Client Error(客户端错误状态码) 表示服务

2017-08-01 19:22:59 531

转载 HTTP响应报文

HTTP响应报文由四部分组成:状态行响应头部空行响应正文1、状态行由3部分组成:协议版本,状态码,状态码描述。之间由空格分隔。1xx:指示信息–表示请求已接收,继续处理。2xx:成功–表示请求已被成功接收、理解、接受。3xx:重定向–要完成请求必须进行更进一步的操作。4xx:客户端错误–请求有语法错误或请求无法实现。5xx:服务器端错误–服务器未能实现合法的请求。这里列举几个常

2017-08-01 15:18:22 620

转载 HTTP请求报文

一个HTTP请求报文由4部分组成: 1. 请求行(request line) 2. 请求头部(header) 3. 空行 4. 请求数据下图给出了请求报文的一般格式。 1、请求行请求行包括:请求方法字段、URL字段、HTTP协议版本字段。它们用空格分隔。例如,GET /index.html HTTP/1.1。HTTP协议的请求方法包括:GET、POST、HEAD、PUT、DELETE、OP

2017-08-01 14:37:24 463

原创 TCP三次握手和四次挥手

1、TCP三次握手TCP建立连接需要进行“三次握手”: TCP三次握手过程描述如下:客户端发送连接请求报文:SYN标志位为1,ACK标志位为0,序列号seq为x。然后客户端进入SYN_SEND状态,等待服务器的确认响应;服务器收到客户端的连接请求,对这个SYN报文段进行确认,发送:SYN标志位为1,ACK标志位为1,序列号seq为y,确认序列号ack为x+1。此时服务器进入SYN_RECV状态

2017-08-01 10:43:54 1311

sensebuilder2.0

sensebuilder2.0 windows安装程序,官网太慢了,下载下来供大家使用

2018-11-17

空空如也

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

TA关注的人

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