HTTP协议 HTTP协议的学习HTTP具有三种特性: 1.单向性:现有请求后才会产生响应。 2.长连接:建立链接(3次握手),断开连接(4次挥手) 3.无状态:对事物的处理没有任何记忆能力,为了解决这种情况。客户端采用了cookie,服务器端使用了sessionHTTP请求信息: 1.请求行 包括请求方式:POST/GET,请求的资源路径:url 协议版本号:HTTP/1.1
HTTP协议 HTTP协议的学习HTTP具有三种特性: 1.单向性:现有请求后才会产生响应。 2.长连接:建立链接(3次握手),断开连接(4次挥手) 3.无状态:对事物的处理没有任何记忆能力,为了解决这种情况。客户端采用了cookie,服务器端使用了sessionHTTP请求信息: 1.请求行 包括请求方式:POST/GET,请求的资源路径:url 协议版本号:HTTP/1.1
什么是DQL、DML、DDL、DCL SQL(Structure Query Language)语言是数据库的核心语言。 SQL的发展是从1974年开始的,其发展过程如下: 1974年—–由Boyce和Chamberlin提出,当时称SEQUEL。 1976年—–IBM公司的Sanjase研究所在研制RDBMS SYSTEM R 时改为SQL。 1979年—–ORACLE公司发表第一个基于SQL的商业化RDBMS产品。 19
Java多线程Synchronized心得 两年前,在编写一个多线程采集器的时候,写了一篇心得《Java多线程Synchronized的注意细节》,但是随后的使用中,发现仍然没有完全分清场景与背后原理。现在随着实际应用,终于也有所新的成熟的理解了。Synchronized是java语言级别内置的同步机制,不同与java中的Semaphore,Mutex。Synchronized的背后机制是Java在语言级上的锁机制:类锁:对于每一个类,自动配
文章标题 1.Java数据类型 在介绍Java的自动装箱和拆箱之前,我们先来了解一下Java的基本数据类型。 在Java中,数据类型可以分为两大种,Primitive Type(基本类型)和Reference Type(引用类型)。基本类型的数值不是对象,不能调用对象的toString()、hashCode()、getClass()、equals()等方法。所以Java提供了针
Java 多线程之线程间的通信——wait及notify方法 线程间的相互作用 线程间的相互作用:线程之间需要一些协调通信,来共同完成一件任务。 Object类中相关的方法有两个notify方法和三个wait方法: http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html 因为wait和notify方法定义在Object类中,因此会被所有的类所继承。 这些方法都是final的,即
JAVA IO操作总结:节点流和处理流 JAVA IO操作总结——节点流和处理流 按照流是否直接与特定的地方(如磁盘、内存、设备等)相连,分为节点流和处理流两类。 节点流:可以从或向一个特定的地方(节点)读写数据。如FileReader 处理流:是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写。如BufferedReader。处理流的构造方法总是要带一个其他的流对象做参数。一个流对象经过其他流的多次包装
Java 集合框架源码分析(三)——HashMap Java 集合框架源码分析(三)——HashMap介绍HashMap 是Java 集合框架中重要的组成部分,也是平常使用频率很高的一个集合类,典型使用方式如下:Map<Integer,String> map=new HashMap<>();map.put(1,"Java EE");map.put(2,"Android");...``它的类继承层级结构如下。类层次 java.lang.Obj
Java--------迭代器Iterator Java——–迭代器Iteratorjava迭代器,只包括三个方法,hasNext next 和remove, 迭代器是通过游标的移动来获取数据的。hasNext方法,判断游标所在的位置是否存在数据,net方法,获取到游标所在的数据,并且将游标指向下一个数据。remove方法,删除游标所在的数据,该方法只能在使用了next后才能够使用,并且游标移动一次,只能够调用一次remove方法,使用
Java-----Collection 实现的LinkedList(双向链表) Java—–Collection 实现的LinkedList(双向链表)Linkedlist,双向链表,优点,增加删除,用时间很短,但是因为没有索引,对索引的操作,比较麻烦,只能循环遍历,但是每次循环的时候,都会先判断一下,这个索引位于链表的前部分还是后部分,每次都会遍历链表的一半 ,而不是全部遍历。 双向链表,都有一个previous和next, 链表最开始的部分都有一个fiest和la
Java-----Collection 实现的ArrayList Java—–Collection 实现的ArrayList1.ArrayList的内部其实就是创建的数组,在增删查改里面,对数组进行操作,所以,对于增加和删除来说,数组的操作是非常麻烦的,需要要变换数字后面的数据都要改变,而且还要考虑扩容的问题,数组的索引,对于查找来说,是很方便的 通过索引可以很快速的找到需要的数据。 2.ArrayList源代码, 在创建了一个实例 的时候,就会创建一个默认的
Java容器------Collection接口 1.容器和数组的区别容器,只能存放引用类型的数据,基本类型的数据需要转换成它的包装类,才可以使用,长度是可以变得。数组,基本数据类型和引用数据类型都可以存放,长度是固定的,在定义的时候就已经被定义好了。2.Collection 底层就是一个数组,每次添加数据的时候就会判断容量是否能够存放,不能够存放的话,就进行扩容,每次扩容的大小是之前数组大小的1.5倍。Collection实现的
java回忆录——运行看泛型?1==1?200==200?1+1=2? 大家是不是都是看到标题来的呢?好奇心?好吧,不管出于什么原因,都请大家看完这篇文章,让你对 java 的源代码和反射有更深的理解,哈哈,好像已经说出来了,这篇文章是继于上篇反射入门的补充。第一个问题:泛型真的能够限制吗?需求:我给你ArrayList的一个对象,我想在这个集合中添加一个字符串数据,如何实现呢??大家一看,这不明摆着不行吗,往集合中添加一个integer那行,
Java泛型-类型擦除 Java泛型-类型擦除一、概述 Java泛型在使用过程有诸多的问题,如不存在List.class, List不能赋值给List(不可协变),奇怪的ClassCastException等。 正确的使用Java泛型需要深入的了解Java的一些概念,如协变,桥接方法,以及这篇笔记记录的类型擦除。Java泛型的处理几乎都在编译器中进行,编译器生成的bytecode是不包涵泛型信息的,泛型
Java——Arrays类 Java——Arrays类使用arrays类来操控数组,是很方便的,我们可以通过API来看一看他有哪些方法//binarySearch 在arrays类中提供了使用二分法 查找数字的方法 int[] a={1,2,3,4,5,6,7,8,9}; System.out.println(Arrays.binarySearch(a, 3)); //copy
Java——二分折半查找法 Java——二分查找法二分折半查找,效率比较高,每次都从范围最中间开始比较,然后逐渐缩小范围,二分折半查找法的要求就是该序列在使用之前一定是要有序的,不然二分折半查找对其没有作用。 先分析一下折半查找 int[] a={1,2,3,4,5,6,7,8,9,10,11,12}; //在这里我们先定义一个数组 然后我们查找一个10这个数字,第一次比较的时候,由两边的位置来找到中间的
Java——工具类Math Java——工具类MathMath 里面给我封装了许多的数学方面的方法,我们在使用时,直接使用Math进行调用,下面是他源码里面的内容,public final class Math private Math() {}首先可以发现这个类是一个final类,不可以被继承,然后他的构造方法是私有的,我们不可以new一个新的Math。 Math里面的方法都是静态的,因为他的构造方法是私有的没
Java-------异常类 Java——-异常类java异常类分为error和exception error在java。lang包里面可以查看他的子类,出现了error错误是我们不能改变的,是不可检查的错误,java内部错误或者内存溢出。常见的子类有:annotationFormatError(注解格式错误)VirtualMachineError (java虚拟机错误)exception 分为runtimeexcep
Java————String类型详解 Java————String类型详解String类型,在源代码中其实就是创建了char类型的数组,private final char value[];final决定了string类型的引用只能够初始化一次,且引用不可以被修改,但是只有这一个修饰符的话,数组里面的数值是可以修改的。 private决定了char数组只能在当前的类里面使用,对外部没有提供相应的修改里面数据的方法,所以char数组里面
Java————数组 Java————数组 数组的定义:相同类型的若干个数据,按照先后顺序依次排放,每一个数据成为一个元素,我们可以通过下标(索引)来获取到数组里面的数据。 索引是从零开始,至于为什么可以看这个文章, http://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html http://b