自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (3)
  • 收藏
  • 关注

原创 手写 Mybatis框架及分析 Version 2.0 版本

​ 上篇文章我们介绍了将JDBC源码改造成简单的Mybatis V1版本,这个V1版本的目的是打开我们手写Mybatis源码的思路。接下来,这篇文章中我们要来分析并手写Mybatis V2版本的源码了。将Mybatis V1版本升级成 Mybatis V2 版本1、将 properties配置文件升级成 xml文件2、按照 Mybatis的用法,将 xml配置文件分成 全局配置文件和映射文件3、对 xml配置文件进行解析解析Mybatis的全局配置文件和映射文件1、全局配置文件​ 全局配置文

2020-12-11 22:29:28 448 1

原创 String 类及源码阅读、面试题详解

String 源码解读 在了解String类之前,先给大家总结一句话:“所有对String类进行过改变操作的方法,所返回的结果都是一个新的String对象,因为String字符串是不可变的!!!” 由于包子是刚开始写文章,所以对于一些语言描述可能不是特别的通俗易懂,在以后小编会尽量学习使用通俗易懂的语言来为大家解释。对于上边的总结,我们通过下边的内容能够更容易理解。String 类 java.lang.String 类代表字符串。Jav...

2020-09-01 23:47:15 205

原创 错误号码1130:Host ‘XXX‘ is not allowed to connect to this MySQL server

错误号码1130:Host ‘XXX’ is not allowed to connect to this MySQL server1、问题原因:mysql未开启 mysql远程访问权限。2、解决方式:在 Linux上开启远程连接。(1)登陆MySQL,授权MySQL远程连接权限mysql> grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;(2)防火墙开启3306端口开

2020-12-05 23:14:18 679

原创 集合那些事之 Map集合

Map集合介绍Collection集合是单列集合,集合中的每个元素都是单个的,向集合中存储元素采用一个个的元素存储方式;Map集合是双列集合,集合中的每个元素都是一组键值对(key-value),通过键可以找到对应的值。需要注意的是:Map集合中的元素的键不能重复,值可以重复;每个键只能对应一个值。但是一个值可以对应多个键。这就是 单列集合和双列集合在存储结构上的不同。Map常用子类 通过查看Map接口描述,看到Map有多个子类,这里我们主要讲解常用的HashMap集...

2020-09-09 00:50:25 190

原创 简述Comparable 和 Comparator 两个接口的区别

Comparable :强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序,类的compareTo方法被称为它的自然比较方法。只能在类中实现compareTo()一次,不能经常修改类的代码实现自己想要的排序。实现此接口的对象列表(和数组)可以通过Collections.sort(和Arrays.sort)进行自动排序,对象可以用作有序映射中的键或有序集合中的元素,无需指定比较器。Comparator :强行对某个对象进行整体排序。可以将Comparator 传递给sort方法(如C...

2020-09-08 23:59:53 943

原创 聊聊集合那些事之 Set集合

Set集合 java.util.Set接口和 java.util.List接口一样,都继承类 Collection接口,它与 Collection接口的方法基本一致,并没有对Collection集合进行功能的扩展。与 List集合不同,Set集合的特点是 元素无需且不重复。 List集合:元素有序,元素可以重复,可以通过索引值访问集合中的元素。底层维护了一个数组,特点与数组一样。 Set集合:元素无需,且元素不可重复,它的底层使通过 HashMap实现的,通过 hash码达到元素不...

2020-09-08 23:18:15 159

原创 聊聊集合那些事 之 List集合

集合Collection 我们看下边这张集合的关系图,橙色的是接口,蓝色的是实现类。下边我们将对这些接口和实现类进行一一介绍:集合的概述 集合和数组一样,都是java提供的一种容器。集合不能存储基本数据类型数据,只能用来存储对象,但是它可以用来存储多个不同类型的数据,下面我们看下集合和数组的区别。集合和数组的区别:数组:长度固定不可变,同一数组只能存储同一类型的元素。 集合:长度可变,同一集合可以存储不同类型的元素。 在实际开发中,数组一般存储基本数据类型,集合...

2020-09-03 00:02:55 165

原创 遇到 Connected to the target VM, address: 127.0.0.1:4386, transport: socket 问题

今天在做 Spring和junit 整合时(IDEA工具),运行 @Test 程序一直在打转,结束 debug提示 Connected to the target VM, address: '127.0.0.1:4386', transport: 'socket' 。在网上查了好久,大概就是以下几种问题: 1、项目发生意外被强制关闭,资源没有得到释放(系统存在多余的java进程) ---- 重启电脑后再试 2、junit测试的方法名首字母不能大写,...

2020-05-27 15:12:56 5423

原创 Error:java: 无效的源发行版: 8

目录 1、idea中修改 1. File --> Project Structure (1)Project(2处) (2)Modeles(2处) (3)SDKs(1处) 2. File --> S...

2020-03-15 22:54:05 15570 5

原创 JDBC 遇到的报错日志汇总

1、Parameter index out of range (1 > number of parameters, which is 0).报错 查看一下SQL语句是不是将英文输入法的 占位符 "?" 写成 中文输入法的 “?”。2、Before start of result set 报错 try{ ...... // 5.执行...

2020-03-04 16:09:20 279

原创 直接排序(选择排序)、冒泡排序、二分法排序

1、直接排序(选择排序)将数组中的元素分别与后边的元素进行比较,每次将最大值(最小值)放到前边(后边),直到所有元素都进行过比较后,得到降序(升序)排列后的数组。直接上代码:// 选择排序法(直接排序法)public int[] straightOrderSort(int[] arr) { // 外层循环控制比较的轮数,每轮可以找到一个最小值 for (int i =...

2020-02-04 21:11:19 1309

原创 简单了解 方法重载与方法重写

4、方法重载与方法重写1、方法重载1.1 什么是方法重载?在同一个类中有多个(两个及以上)同名函数,被称作方法重载。1.2 方法重载的要求函数名一致 参数列表不同(参数个数不同,或者相同位置对应的参数类型不同) 与返回值类型无关,与权限修饰符无关public class Dome1 { // 方法重载:同类同函数名,形参列表不能相同,与返回值无关,与权...

2020-02-04 16:06:04 221

原创 三元运算符,break、continue、return的区别,switch语句

1、三元运算:1、语法格式: 布尔表达式?结果1:结果2;2、如果表达式结果为true,返回结果1,如果结果为false,返回结果22、continue、break、return的区别:continue :只适用于循环中,用于跳过当前循环,进入下一次循环。一旦执行了continue,那么之后的语句就不再执行,直接开始下一次的循环。 break:适用...

2020-02-04 14:51:59 1300

原创 对象流、序列化Serializable

4、对象流、序列化Serializable1.对象流的作用对象的输入输出流主要作用是 读取和写出对象的信息。对象信息一旦写出到硬盘文件中,就可以做到持久化。对象输入流:ObjectInputStream对象输出流:ObjectOutputStream2.对象流的使用步骤1.找到目标文件2.搭建数据通道 2.1 创建数据输出/输入流对象 2.2 创建...

2020-01-22 23:46:01 160

原创 SequenceInputStream序列流 用于合并多个文件

2. SequenceInputStream- - - - | InputStream 所有输入字节流的基类 抽象类- - - - - - - - | FileInputStream 读取文件数据的输入字节流- - - - - - - - | BufferedInputStream 缓冲输入字节流。- - - - - - - - | SequenceInputStream 序...

2020-01-22 20:28:05 533

原创 java.io.FileNotFoundException: E:\aa\music\野狼disco1.mp3 (系统找不到指定的路径。)

今天玩io流,使用 FileInputStream 和 FileOutputStream 来读取和写入硬盘数据时,出现了 java.io.FileNotFoundException: E:\aa\music\野狼disco1.mp3 (系统找不到指定的路径。) ,出现这种情况一般从以下几点排除: 1. 路径书写格式有问题,File需要的是绝对路径,windows...

2020-01-22 19:55:11 602

原创 java 常用设计模式

1. 单例设计模式1、单例设计模式:保证一个类在内存中只有一个对象。2、单例设计模式的步骤:(1)饿汉单例设计模式 1. 私有化构造函数。 2. 声明本类的引用类型变量,并且使用该变量指向本类对象。 3. 提供一个公共静态的方法获取本类的对象。// 确保Single在内存中只有一个对象(饿汉单例模式)public class Singl...

2020-01-18 21:53:53 89

原创 7.缓冲输入字符流BufferedReader与缓冲输出字符流BufferedWriter

1. 缓冲输入字符流 BufferedReader- - - - | Reader 所有输入字符流的基类。 抽象类- - - - - - - - | FileReader 读取文件字符串的输入字符流。- - - - - - - - | BufferedReader 缓冲输入字符流。缓冲输入字符流出现的目的是为了提高读取文件的效率和拓展了FileReader的功能。 其实该类内部也是维...

2020-01-18 21:47:20 445

原创 字节输入输出流总结 FileInputStream FileOutputStream

字节流总结:1. 判断使用输入流还是输出流的依据以当前程序(也就是内存)为参照物,从硬盘向内存中读取数据,使用输入流 FileInputStream。从内存向硬盘写出数据,使用输出流 FileOutputStream。2. FileInputStream 读取文件 使用FIleInputStream读取文件时,我们通常维护一个缓冲数组来提高读取效率。假如我们维护的这个缓冲字...

2020-01-13 16:59:34 484

原创 使用缓冲流复制一个文件

需求: 使用缓冲字节流复制一个文件,要求边读边写,并处理异常。直接上代码:public class Dome3 { public static void main(String[] args) { // 1.找到目标文件 File readFile = new File("E:\\aa\\bb\\aaa.wmv"); Fi...

2020-01-13 12:28:23 497

原创 7.BufferedOutputStream缓冲字节输出流

7.BufferedOutputStream1.输出字节流- - - - | OutputStream 输出字节流的基类,抽象类- - - - - - - - | FileOutputStream向文件输出数据的 输出字节流- - - - - - - - | BufferedOutputStream缓冲输出字节流。BufferedOutputStream出现的目的是为了提高向文件输...

2020-01-13 12:25:49 1053

原创 6.缓冲字节输入流BufferedInputStream

6.BufferedInputStream 缓冲输入字节流1.BufferedInputStream: 通过使用FileInputStream我们可以知道,使用缓冲数组能提高读取效率。因此sun给我们提供了一个缓冲输入字节流对象,让我们可以更高效的读取文件。2.输入字节流体系- - - - | InputStream 输入字节流的基类,抽象类- - - - - - ...

2020-01-12 23:19:35 818

原创 5.字节流的应用

需求:拷贝一份文件 要求: 1. 边读边写,不能将文件数据全部读取完毕后,再写出 2. 处理程序可能出现的异常 提示: 1. 处理的异常的目的(步骤): (1)阻止下面代码的执行(结束程序) (2)通知调用者这里出现了错误 2. thro...

2020-01-09 00:51:59 131

原创 字节输出流(从内存向硬盘写入)FileOutputStream

4. 输出字节流(写数据)输出字节流 FileOutputStream- - - - | OutputStream 是所有 字节输出流的基类,抽象类- - - - - - - - | FileOutputStream 向文件输出数据的输出字节流1.输出字节流使用步骤FileOutputStream1.找到目标文件File file = new File("E:\\aa\\bb...

2020-01-09 00:49:58 1791

原创 FileInputStream 输入字节流(从硬盘向内存读取)

- - - - | InputStream 所有输入字节流的基类,继承Object类。是abstract抽象类。- - - - - - - - | FileInputStream 读取文件数据的输入字节流。3.1 读取数据的步骤(使用FileInputStream读取文件数据)1.找到目标文件 File file = new File("E:\\aa\\bb\\a.txt"...

2020-01-07 21:28:30 1097

原创 File类笔记

1.File类File 类可以描述一个文件或者文件夹。1.什么是IO流:(Input Output)? IO流主要用于解决设备与设备之间的数据传输问题,比如 硬盘-->内存 内存-->硬盘 键盘-->内存等1.1 IO流应用场景: 导出报表,上传照片,下载,解释xml文件...1.2数据的保存 数据保存在内存上...

2020-01-07 14:27:49 159

原创 枚举类笔记

1、问题:某些方法所接受的数据必须是在固定范围之内的,怎么解决? 方案一:jdk1.5之前,自定义一个类,私有化构造函数,在自定义类中创建本类的对象对外使用。 方案二:jdk1.5之后,使用枚举类(enum)来解决这种问题。 1.1 方案一:jdk1.5之前,使用自定义类解决// 方案一:jdk1.5之前,自定义一个类,私有化构造方法,在自定义类中创建类的对象,对外使用cla...

2020-01-03 13:22:24 99

原创 jdk新特性之自动装箱与自动拆箱

1. 包装类:java是面向对象的语言,任何事物都可以使用类进行描述,sun就使用了一些类描述java中八种基本数据类型数据2. 八大基本数据类型对应的包装类 基本数据类型 包装类 byte Byte short Short i...

2019-12-30 23:56:43 261

原创 jdk1.5新特性之 可变参数

1、可变参数的格式 数据类型 … 变量名注意:可变参数的数据类型和变量名之间,只能是三个点2、可变参数要注意的细节1.如果一个函数在形参上使用了可变参数,那么调用该方法的时候,可以传递参数,也可以不传递参数2.可变参数 实际上是一个数组3.可变参数 必须放在形参的最后一个位置4.可变参数 在一个函数中只能存在一位,因为需要放在参数的最后一个位置上。3.案例...

2019-12-30 20:33:38 105

原创 jdk1.5新特性之增强for循环

二、增强for循环(foreach)1、增强for循环的作用:简化迭代器的书写格式(注意:增强for循环的底层还是使用了迭代器遍历的)2、增强for循环的格式: for( 数据类型 变量名:遍历的目标 ){ 迭代代码……}3、增强for循环的作用范围:所有实现了Iterable接口的对象 或者 所有的数组对象 都可以使用增强fo...

2019-12-30 19:27:46 249

原创 jdk1.5新特性

jdk1.5新特性之一 ********** 静态导入1. 静态导入的作用:简化书写2. 静态导入的格式:import static 包名.类名.静态成员 import static 包名.类名.*静态导入可以作用于一个类的所有静态成员。4. 静态导入要注意的事项:如果静态导入的成员与本类的成员存在同名的情况下,那么默认使用本类的静态成员;如果需要指定使用静态导入的成员...

2019-12-30 19:26:41 105

原创 正则表达式笔记

1、正则表达式: 1. 正则表达式其实就是一种规则,有自己特殊的应用,其作用就是针对字符串进行操作 2. 正则:就是用于操作字符串的一种规则,其中这些规则使用了一些字符表示2、预定义字符类 . 点 表示任何字符(与行结束符可能匹配也可能不匹配) \d 数字:[0-9] \D 非数字: [^0-9...

2019-12-30 19:19:33 144

原创 Collections 集合工具类笔记

java.util.Collectinos 集合工具类,继承 Object类,该类中所有的方法都是静态的(static 修饰),它包含对集合进行操作的多态算法,如提供给它们的集合或类对象是null,则Collections的方法都会抛出一个空指针异常(NullPointerException)。Collections 的常见方法: 注:Comparato...

2019-12-23 21:25:09 140

原创 浅谈 Arrays 工具类的常用方法

1、 asList(T ...a):返回指定数组支持的固定长度的列表,即将一个数组转换成一个 List列表 asList() 注意事项: (1)如果数组是基本数据类型,那么整个数组的实体将会被当做一个元素放入到 List 集合中。控制台输出 List对象,显示的是内存地址。 (2)如果数组是引用数据类型,包括Str...

2019-12-17 23:38:55 363

原创 JDBC中 preparedStatement接口与 statement接口的区别

     preparedStatement接口继承了 statement接口,继承了 statement的所有功能,并提供了一整套方法,用 setXxx()方法来设置输入参数(占位符),并且更改了execute、executeUpdate、executeQuery方法,不再需要参数 preparedStatement 能够进行预编译,多次执行相同的 SQL语句时,比statement效率更高...

2019-01-18 20:06:34 1155

原创 abstract 不能与哪些关键字同时使用?(abstract 不能修饰什么?)

abstract 不能修饰 private、static、final、synchronize、native 和 构造方法、属性 private:abstract 是为了用来让子类继承的,子类不能继承父类 private 方法 static:static 是属于类的,在类加载时同时被加载了,被类的所有实例共享,而且一定存在具体的实现。但是抽象类不能创建类的实例,抽象方法也没有方法体,这两个关键...

2018-10-27 13:41:27 6813 2

原创 初学Mybatis 构建sqlSession 错误问题 Error building SqlSession Mybatis java.lang.NullPointerException

错误信息org.apache.ibatis.exceptions.PersistenceException: ### Error building SqlSession.### The error may exist in mapper/User.xml### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL ...

2018-03-20 21:55:11 7358 1

原创 load-on-startup Servlet 启动优先级

最近闲来无聊,测试了下 load-on-startup 关于 Servlet 的优先级。看到网上有些帖子说,load-on-startup 的取值 0 或 负整数时,在启动 Tomcat 时,Servlet 就会优先被加载(取负时会 默认成0),经过本人测试,当 load-on-startup 取0 时,Servlet 会优先被加载,但是取负值时,Tomcat 不会加载Servlet 。   

2018-01-28 18:18:47 20807 11

JDK 11 API中文帮助文档.zip

JDK 11 API中文帮助文档

2021-09-09

jquery-3.2.1.min.js 包 解压即可使用 最新官网版

jquery-3.2.1.min.js 最新官网版 下载解压即可正常使用,成就你的开发大神之路

2018-01-14

jdk1.8.0src.zip

jdk1.8.0 src.zip包有些童鞋看不到源码,原因是没有加载src.zip,如果找不到源码包,可以到此处免费下载,版本1.8.0(应该可以通用)

2018-01-14

空空如也

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

TA关注的人

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