自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 学Redis这篇就够了

Redis 简介Redis 是完全开源免费的,遵守 BSD 协议,是一个高性能的 key - value 数据库Redis 与 其他 key - value 缓存产品有以下三个特点:Redis 支持数据持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis 不仅仅支持简单的 key - value 类型的数据,同时还提供 list,se...

2019-09-20 18:13:00 161

转载 java的动态代理机制详解

在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的我们的功能,我们更需要学习的是其底层是怎么样的一个原理,而AOP的原理就是java的动态代理机制,所以本篇随笔就是对java的动态机制进行一个回顾。在java的动态代理机制中,有两个重要...

2019-08-29 21:54:00 119

转载 mybatis-sql执行流程源码分析

1. SqlSessionFactory 与 SqlSession.  通过前面的章节对于mybatis 的介绍及使用,大家都能体会到SqlSession的重要性了吧, 没错,从表面上来看,咱们都是通过SqlSession去执行sql语句(注意:是从表面看,实际的待会儿就会讲)。那么咱们就先看看是怎么获取SqlSession的吧:(1)首先,SqlSessi...

2019-08-23 01:47:00 139

转载 mybatis

jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/ssmjdbc.username=rootjdbc.password=root<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE config...

2019-08-23 01:24:00 90

转载 mybatis整体流程

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configu...

2019-08-23 01:16:00 102

转载 java解析json字符串详解(两种方法)

一、使用JSONObject来解析JSON数据官方提供的,所以不需要导入第三方jar包;直接上代码,如下private void parseJSONWithJSONObject(String JsonData) { try { JSONArray jsonArray = new JSONArray(jsonData); fo...

2019-08-22 21:57:00 6509

转载 json与String的转化

String转成jsonObject JsonObject json = JsonObject.fromObject(String str)String转成JsonArray JsonArrayjsonArray = JsonArray.fromObject(String str)在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML、JSON等,...

2019-08-22 21:40:00 153

转载 Java 中的动态代理

一、概述1. 什么是代理  我们大家都知道微商代理,简单地说就是代替厂家卖商品,厂家“委托”代理为其销售商品。关于微商代理,首先我们从他们那里买东西时通常不知道背后的厂家究竟是谁,也就是说,“委托者”对我们来说是不可见的;其次,微商代理主要以朋友圈的人为目标客户,这就相当于为厂家做了一次对客户群体的“过滤”。我们把微商代理和厂家进一步抽象,前者可抽象为代理类,后者可抽象为委托类(...

2019-08-22 20:48:00 56

转载 Tomcat解析XML和反射创建对象原理

Tomcat解析XML和反射创建对象原理 1 import java.lang.reflect.InvocationTargetException; 2 import java.lang.reflect.Method; 3 import java.util.List; 4 5 import org.dom4j.Document; 6 import...

2019-08-08 10:03:00 166

转载 正则表达式中各种字符的含义

正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。列目录时,dir *.txt或ls *.txt中的*.txt就不是一个正则表达式,因为这里*与正则式的*的含义是不同的。正则表达式是由普通字符(例如字符a到z)以及特殊字符(称为元字符)组成的文字...

2019-08-01 15:58:00 237

转载 HashMap源码

负载因子,控制数组的使用率。TREEIFY_THRESHOLD变红黑树上限UNTREEIFY_THRESHOLD拆树size计数器,当计数器大于threshold时,紧要进行扩容操作。threshold = floatFactor*DEFAULT_INITIAL_CAPACITY (0.75*16)=12sta...

2019-07-16 23:09:00 53

转载 Integer类的常量池

转载于:https://www.cnblogs.com/zmy-520131499/p/11198177.html

2019-07-16 23:07:00 124

转载 多线程40题总结

1、多线程有什么用?一个可能在很多人看来很扯淡的一个问题:我会用多线程就好了,还管它有什么用?在我看来,这个回答更扯淡。所谓”知其然知其所以然”,”会用”只是”知其然”,”为什么用”才是”知其所以然”,只有达到”知其然知其所以然”的程度才可以说是把一个知识点运用自如。OK,下面说说我对这个问题的看法:(1)发挥多核CPU的优势随着工业的进步,现在的笔记本、台式机乃至商用的应用...

2019-07-15 19:02:00 85

转载 Java并发与多线程

摘要:1. 并发与并行的区别,何为并发编程,并发编程的优势在哪2. 多线程、多任务、多进程机制概述3. 多线程、多任务、多进程机制与编程思想的关系一、并发1.1 并发与并行首先介绍一下并发与并行,两者虽然只有一字之差,但实际上却有着本质的区别,其概念如下:并行性(parallel):指在同一时刻,有多条指令在多个处理器上同时执行;并发性(concurr...

2019-07-15 19:01:00 79

转载 线程创建方式

摘要:1. 通过继承Thread类来创建并启动多线程的方式2. 通过实现Runnable接口来创建并启动线程的方式3. 通过实现Callable接口来创建并启动线程的方式4. 总结Java中创建线程的方式,比较各自优势和区别一、继承Thread类创建线程类1.1 继承Thread类创建线程步骤Java使用Thread类代表线程,所有的线程对象都必须是Threa...

2019-07-15 19:00:00 80

转载 控制线程

摘要:Java的线程支持提供了一些便捷的工具方法,通过这些便捷的工具方法可以很好地控制线程的执行1. join线程控制,让一个线程等待另一个线程完成的方法2. 后台线程,又称为守护线程或精灵线程。它的任务是为其他的线程提供服务,如果所有的前台线程都死亡,后台线程会自动死亡3. 线程睡眠sleep,让当前正在执行的线程暂停一段时,并进入阻塞状态4. 线程让步yield,...

2019-07-15 18:58:00 93

转载 线程生命周期

摘要:当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。在线程的生命周期中,它要经过新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Dead)5种状态。尤其是当线程启动以后,它不可能一直"霸占"着CPU独自运行,所以CPU需要在多条线程之间切换,于是线程状态也会多次在运行、阻塞之间切换1. 新建状态,当...

2019-07-15 18:55:00 74

转载 一篇文章看懂Java并发和线程安全(一)

一、前言长久以来,一直想剖析一下Java线程安全的本质,但是苦于有些微观的点想不明白,便搁置了下来,前段时间慢慢想明白了,便把所有的点串联起来,趁着思路清晰,整理成这样一篇文章。二、导读1、为什么有多线程?2、线程安全描述的本质问题是什么?3、Java内存模型(JMM)数据可见性问题、指令重排序、内存屏障三、揭晓答案1、为什么有...

2019-07-15 18:54:00 81

转载 进程与线程的区别

简而言之,一个程序至少有一个进程,一个进程至少有一个线程.线程的划分尺度小于进程,使得多线程程序的并发性高。另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。从逻辑角度...

2019-07-15 18:45:00 100

转载 JAVA基础--JAVA 集合框架(泛型、file类)

一、集合总结集合:Collection体系、Map体系。Collection体系:单列集合的共性操作规则。 List:列表,可以重复,有下标,拥有特有的迭代器ListIterator。 ArrayList:底层是可变数组。增删慢,查询快。不安全 LinkedList:底层是链表结构...

2019-07-14 00:05:00 91

转载 HashMap的实现原理

HashMap概述HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。HashMap的数据结构在Java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,HashMap也不例外。HashMap...

2019-07-14 00:03:00 86

转载 Java 流(Stream)、文件(File)和IO

Java 流(Stream)、文件(File)和IOJava.io包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。Java.io包中的流支持很多种格式,比如:基本类型、对象、本地化字符集等等。一个流可以理解为一个数据的序列。输入流表示从一个源读取数据,输出流表示向一个目标写数据。Java为I/O提供了强大的而灵活的支持,使其更广泛地应用到文件传...

2019-07-14 00:01:00 38

转载 总结接口和抽象类的异同

abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。 abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于 abstract class和interface的选择显得比较随意。其实...

2019-07-13 23:28:00 166

转载 Java 泛型

Java 泛型如果我们只写一个排序方法,就能够对整形数组、字符串数组甚至支持排序的任何类型的数组进行排序,这该多好啊。Java泛型方法和泛型类支持程序员使用一个方法指定一组相关方法,或者使用一个类指定一组相关的类型。Java泛型(generics)是JDK 5中引入的一个新特性,泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。使用Java泛型的...

2019-07-13 23:19:00 58

转载 HashMap----工作原理

  先来些简单的问题  “你用过HashMap吗?” “什么是HashMap?你为什么用到它?”  几乎每个人都会回答“是的”,然后回答HashMap的一些特性,譬如HashMap可以接受null键值和值,而HashTable则不能;HashMap是非synchronized;HashMap很快;以及HashMap储存的是键值对等等。这显示出你已经用过HashM...

2019-07-13 23:17:00 51

转载 JAVA基础--JAVA API常见对象(字符串&缓冲区)

一、 String 类型  1. String类引入    第二天学习过Java中的常量:       常量的分类:     数值型常量:整数,小数(浮点数)     字符型常量:使用单引号引用的数据     字...

2019-07-10 21:27:00 138

转载 Java中static、final、static final的区别

说明:不一定准确,但是最快理解。final:final可以修饰:属性,方法,类,局部变量(方法中的变量)final修饰的属性的初始化可以在编译期,也可以在运行期,初始化后不能被改变。final修饰的属性跟具体对象有关,在运行期初始化的final属性,不同对象可以有不同的值。final修饰的属性表明是一个常数(创建后不能被修改)。final修饰的方法表示该方法在子类...

2019-07-10 21:23:00 57

转载 Java中this与super的区别

this与super关键字在java中构造函数中的应用:**super()函数**super()函数在子类构造函数中调用父类的构造函数时使用,而且必须要在构造函数的第一行,例如:class Animal { public Animal() { System.out.println("An Animal"); }}class D...

2019-07-10 21:22:00 57

转载 java中static作用详解

static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创建之...

2019-07-10 21:20:00 35

转载 方法重写与方法重载的区别

一、方法重写(0veriding)在Java程序中,类的继承关系可以产生一个子类,子类继承父类,它具备了父类所有的特征,继承了父类所有的方法和变量。子类可以定义新的特征,当子类需要修改父类的一些方法进行扩展,增大功能,程序设计者常常把这样的一种操作方法称为重写,也叫称为覆写或覆盖。重写体现了Java优越性,重写是建立在继承关系上,它使语言结构更加丰富。在Java中的继承中,子...

2019-07-10 21:19:00 137

转载 Java中对象和引用的理解

偶然想起Java中对象和引用的基本概念,为了加深下对此的理解和认识,特地整理一下相关的知识点,通过具体实例从两者的概念和区别两方面去更形象的认识理解,再去记忆。一、对象和引用的概念:在Java中万物皆对象,比如我们定义一个简单的动物类:class Animal { String count; String weight; ....}...

2019-07-10 18:51:00 164

转载 equals与== 和toString方法

/** * equals()方法的使用 * * 1.java.lang.Object类中的equals()方法的定义: * * public boolean equals(Object obj) { return (this == obj); } * * 说明:Object类中equals()比较两个对象的引...

2019-07-10 18:49:00 58

转载 JAVA基础--JAVA API集合框架(其他集合类,集合原理)

一、ArrayList介绍  1.ArrayList介绍       ArrayList它是List接口的真正的实现类。也是我们开发中真正需要使用集合容器对象。             ArrayList类,它是List接口的实现。肯定拥有角标。并且可以存放重复元素,也能够使用List接口中的所有特有方法。ArrayList集合容器,它的底层使用的可变的数组作为存储元素的...

2019-07-10 18:40:00 65

转载 JAVA基础--JAVA API集合框架

一、Map集合  1.map集合介绍Collection集合的特点: 集合中存储的所有元素都是单一元素,元素和元素之间没有必然的关系。因此我们把Collection集合也称为单列集合。Map集合: Map集合中保存的是一组(一对)数据。数据之间存在着一定的对应关系。Map集合就可以将数据的对应关系维护起来。当这样的数据存储在Map集合...

2019-07-10 18:32:00 51

转载 集合(二)

集合的概念1.什么是集合集合是一种容器, 长度可变, 可以存储任意类型的对象.基本数据类型也可以装入集合, 但其实内部是先自动装箱成包装类对象, 然后再存入集合的@paramargs 数组和集合的区别 1,数组可以存储基本数据类型变量,也可以存储引用数据类型变量(对象) 集合只能存储对象 2,数组长度是固定的,一旦被初始化就不能被改变 集合的长度...

2019-07-10 18:30:00 98

转载 集合(一)

集合常用类和接口介绍Collection接口  Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些 Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection...

2019-07-10 18:28:00 50

转载 Java 日期时间

Java 日期时间java.util包提供了Date类来封装当前的日期和时间。 Date类提供两个构造函数来实例化Date对象。第一个构造函数使用当前日期和时间来初始化对象。Date( )第二个构造函数接收一个参数,该参数是从1970年1月1日起的微秒数。Date(long millisec)Date对象创建以后,可以调用下面的方法。...

2019-07-09 18:13:00 77

转载 Java StringBuffer和StringBuilder类

Java StringBuffer和StringBuilder类当对字符串进行修改的时候,需要使用StringBuffer和StringBuilder类。和String类不同的是,StringBuffer和StringBuilder类的对象能够被多次的修改,并且不产生新的未使用对象。StringBuilder类在Java 5中被提出,它和StringBuffer之间的最...

2019-07-08 18:12:00 38

转载 Java String类

Java String类字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串。创建字符串创建字符串最简单的方式如下:String greeting = "Hello world!";在代码中遇到字符串常量时,这里的值是"Hello world!",编译器会使用该值创建一个String对象。和其它对...

2019-07-08 18:08:00 40

转载 Java 异常处理

Java 异常处理异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。比如说,你的代码少了一个分号,那么运行出来结果是提示是错误java.lang.Error;如果你用System.out.println(11/0),那么你是因为你用0做了除数,会抛出java.lang.ArithmeticException的异常。异常发生的原因有很多,通常包含以...

2019-07-05 18:49:00 37

空空如也

空空如也

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

TA关注的人

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