自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 为什么mysql要使用B+树

思路顺序:一、首先我们的一个表的数据在磁盘上由于插入顺序的原因肯定不是顺序存放,如果按照表字段内容顺序查找,如果一个500万条数据的表,要找的刚好是第500万个值,则需要与磁盘做500万次IO,效率低下二、为什么不用二叉树,如果将一个乱序的数据放入二叉树中,效率会高,但是如果数据是有顺序的,比如1、2、3、4、5,则二叉树将会编程一个链表的样式,失去了二叉树的优势三、为什么不用红黑树,红黑树也叫二叉平衡树,红黑树可以有效解决掉顺序数据一次放入二叉树而导致的形成链表的结果,但是红黑树一个节点只能存

2022-02-08 06:05:39 2448

原创 java希尔排序

public class ShellSort { public static void main(String[] args) { int a [] = { 9, 8, 7, 0, 1, 3, 2, 10, 5, 12, 7, 0, 15 }; int n = a.length; for (int add = n / 2; add >= 1; add /= 2){ for (int i = add; i < .

2021-10-02 08:34:25 181

原创 java插入算法

public class InsertionSort { public static void main(String[] args) { int [] test = {5,2,7,4,9,3,1,2,5}; // 外层i从1开始,因为认为0位是已经排好的 for (int i = 1; i < test.length; i++){ // 取出第i的数字 int data = test[i].

2021-09-21 17:46:36 188

原创 递归(斐波那契和N的阶乘)

public class Fibonacci { /** * 原始斐波那契 */ private static int nomalFibonacci(int n){ if (n <= 1){ return 1; } else { return nomalFibonacci(n - 1) + nomalFibonacci(n - 2); } } /*.

2021-09-21 17:45:17 141

原创 模拟观察者模式

import java.util.ArrayList;import java.util.List;/** * 观察者模式模拟当地震来临时,狗狗叫,居民跑,房子塌的场景 * 地震事件有三个属性,位置,耗时,强度 * 当位置赋值后,则就发生了地震,狗狗就会叫 * 当位置赋值,且耗时超过5秒,居民才会跑 * 当位置赋值,耗时超过5秒,且强度大于6的强度,房子才会塌 */public class ObserverModel { public static void main(Stri.

2021-08-29 11:57:29 132

原创 使用builder模式构建people

/** * 使用builder模式构建people */public class People{ String id; String name; int age; Shape shape; public static class PeopleBuilder{ People people = new People(); public PeopleBuilder baseInfo(String id, String name..

2021-07-25 12:35:56 81

原创 责任链完成双向过滤

使用一个责任链实现请求的request执行责任链的顺序是filter01、filter02返回的response执行责任链的顺序是filter02、filter01import java.util.ArrayList;import java.util.List;public class TwoWayChainPattern { /** * 使用一个责任链实现 * 请求的request执行责任链的顺序是filter01、filter02 * 返回的res

2021-07-24 22:33:48 94

原创 简单实现责任链模式

import java.util.ArrayList;import java.util.List;public class ChainOfResponsibilityPattern { /** * 预图将abcde:)?BugNo 改成http://www.ABCDE*_*!BUGYES * 因发现特殊字符Bug,则停止责任链并返回http://www.abcde*_*?BugYes * @param args */ public stati.

2021-07-24 20:39:46 146

原创 单向链表实现LRU

/** * 通过单向链表实现LRU */public class LRUTest { public static void main(String[] args) { LRUCirLinkList lruCirLinkList = new LRUCirLinkList(); lruCirLinkList.insertValue("1"); lruCirLinkList.insertValue("2"); lruCirLinkL.

2021-07-07 05:56:38 292

原创 使用单向循环链表解决约瑟夫问题

public class JosephProblem { /** * 使用单向循环链表解决约瑟夫问题 */ public static void main(String[] args) { // 造数据 OneWayCircular oneWayCircular = new OneWayCircular(); oneWayCircular.insertNode(0); oneWayCircular.in.

2021-06-28 22:52:08 102 1

原创 简单实现双向链表

import java.awt.*;public class MyDoubleLinkList { private DoubleNode headNode; private DoubleNode tailNode; private int length; /** * 插入头节点 * @param value */ public void insertHead(String value){ DoubleNode .

2021-06-26 23:10:28 72

原创 自主简单实现LinkList

import java.util.Arrays;public class MyLinkList { static private Node head = null; /** * 头部增加元素 */ public void insertHead(String value){ Node node = new Node(value); if (head == null){ head = node; .

2021-06-22 22:09:03 465

原创 数组栈实现简单算数计算

import java.util.HashMap;import java.util.Map;public class SimpleArithmeticTest { public static void main(String[] args) { // 设置优先级 Map<String, Integer> priorityMap = new HashMap<>(); priorityMap.put("+", 1); .

2021-05-30 11:31:12 110

原创 使用栈实现括号匹配

public class ParenthesisMatchingTest { public static void main(String[] args) { String par01 = "(){([])}"; // true String par02 = "{}({({})}"; // false String par03 = "{(})"; // false String par04 = "{([])}]"; // false.

2021-05-30 08:14:10 655

原创 使用数组简单实现栈

import java.util.Arrays;public class MyArrayStack<T> { private T[] arrayStack = (T[]) new Object[1]; private int stackSize = 0; // 当前栈中已存的数据量 /** * 构造函数,参数值为初始化数组的长度 * @param length */ public MyArrayStack(int lengt.

2021-05-27 18:45:25 95

原创 简单实现ArrayList功能

import java.util.Arrays;/** * 简单模拟ArrayList */public class MyArrayList { private Object array[] ; private int index; // 当前位置 private int size; // 设置初始总长度为10 public MyArrayList(){ this.index = 0; this.size = 8; .

2021-05-23 23:17:10 81

原创 数组获取年龄文件里的年龄个数

生成一个14亿的0-150岁然的年龄文件,文件内每行都只存0-150的年龄,使用数组读取文件中各个年龄的人数并打印,生成测试文件:import java.io.BufferedWriter;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import java.util.Random;public class MakeAgeTxt { /** * 随机生成14亿个0-150岁的年龄,每

2021-05-23 20:42:00 411

原创 搭建mysql主从参考的博文

本人搭建mysql主从,也是参考的网络博文,这里记录下我搭建成功以及解决问题用到博文,后续参考用搭建mysql:https://www.cnblogs.com/xinhua19/p/12750611.html搭建mysql主从:https://www.cnblogs.com/wzc6688/archive/2019/10/16/11689357.html重置密码遇到ERROR 1045 (28000): Access denied for user 'root'@'localhost' (usi

2020-08-18 22:27:53 104

原创 docker安装mysql

转载从百度经验,亲测有效 通过docker search mysql搜索镜像 下载第一个镜像,通过docker pull docker.io/mysql命令 查看下载后的镜像列表,如下图所示 通过 docker run -d -p 3306:3306 --name mymysql -e MYSQL_ROOT_PASSWORD=root docker.io/mysql:latest 创建mysql容器,MYSQL_ROOT_PASSWORD=ro.

2020-08-16 08:31:47 118

原创 docker x509: certificate has expired or is not yet valid

在下载镜像时报docker x509: certificate has expired or is not yet valid,这种错误,一般都是本地系统时间错误导致报错证书过期,需更新本地系统的时间[root@localhost ~]# docker search mysqlError response from daemon: Get https://index.docker.io/v1/search?q=mysql&n=25: x509: certificate has expir

2020-08-16 07:44:48 466

原创 使用Socket模拟服务端和客户端进行MD5校验

因为都是使用的java自己的类,所以搭建普通的java工程即可1、MD5的工具类import java.security.MessageDigest;public class MD5Utils { public static String strMD5ByUTF8(String originString){ if (originString != null) { try { MessageDigest md= M

2020-08-13 08:47:32 422

原创 搭建一个springboot工程测试md5加密

1、展示搭建本次测试所用的springboot工程结构其中,TestController模拟的是服务端接收post请求,TestMD5模拟的是客户端使用单元测试发送http请求2、展示pom.xml文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLS

2020-08-13 08:09:40 327

原创 搭建最简单的springcloud包括Eureka、Ribbon、Fegin

本篇博文只包含搭建springcloud最简单的配置,有这些东西就可以起springcloud了,没有包含理论讲解1、搭建springboot的Eureka注册中心项目(如何搭建springboot项目就不赘述了)pom.xml配置文件内容:<packaging>jar</packaging><parent> <groupI...

2019-06-15 22:56:19 982

原创 本地搭建的项目在本地maven仓库中部署

本次搭建的项目为springboot项目,maven使用的IDE是idea,试用于自己搭建一个项目,再搭建另一个项目去引用该项目的情况下,1、首先在idea配置maven仓库的地址:File>sittings,搜索maven,setting.xml,本人使用的idea自身集成的maven,考虑到好多小伙伴喜欢用本地自己的maven,也只需要在如下的位置override地址就好,在sett...

2019-06-15 13:07:44 2637

原创 责任链模式代码示范

本次责任链采用简单的请假申请来处理。领导关系: 主任&lt;副总监&lt;总监//一次请假请求类public class LeaveRequest { private String leaveName; //请假者的姓名 private int leaveDays; //请假的天数 private String reason; //请假的原因 public...

2019-03-03 13:42:15 901

转载 SpringMVC执行流程及工作原理

图解SpringMVC执行流程:SpringMVC执行流程SpringMVC执行流程:1.用户发送请求至前端控制器DispatcherServlet2.DispatcherServlet收到请求调用处理器映射器HandlerMapping。3.处理器映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExecutionChain(包括处理器对象和处理器拦截器)一并...

2019-02-14 15:17:52 929 1

原创 手写一个死锁,避免死锁的几个常见方法

public class DeadLockDemo { private static String A = "A"; private static String B = "B"; public static void main(String[] args) { new DeadLockDemo().deadLock(); } priv...

2019-02-03 19:32:23 1026

原创 JVM参数类型

1、标准参数:在JVM中不变的,相对比较稳定的        -help     -server      -client      -version      -showversion      -cp      -classpath2、X参数:在各个JVM版本中有可能会变,但是变化会比较小       -Xint: 解释执行(完全解释执行,不会将java代码编译成本地代码)  ...

2019-02-01 11:22:08 160

原创 通过手写枚举理解枚举

 在jdk1.5之前都需要程序员手写枚举,在1.5之后便可以使用enum完成枚举手写枚举:public class SeasonTest { public static void main(String[] args) { System.out.println(Season.SPRING); System.out.println(Season.S...

2019-01-31 18:48:37 353

原创 元注解

JDK1.5专门提供了几个元注解的类型:1、@Retention可以注意到元注解里有一个RetentionPoicy的代理对象,点击进去:可以看出是一个枚举类型,只能用于annotations,用于表示该annotations可以保留多长时间,也就是该注解的生命周期,里面的:        SOURCE:表示在编译的时候会被抛弃;        CLASS:表示注解...

2019-01-31 11:37:10 170 1

转载 MYSQL中数据类型介绍

一、MySQL的数据类型主要包括以下五大类:整数类型:BIT、BOOL、TINY INT、SMALL INT、MEDIUM INT、 INT、 BIG INT浮点数类型:FLOAT、DOUBLE、DECIMAL字符串类型:CHAR、VARCHAR、TINY TEXT、TEXT、MEDIUM TEXT、LONGTEXT、TINY BLOB、BLOB、MEDIUM BLOB、LONG ...

2019-01-21 11:01:28 244

原创 代码查询文件夹下相同大小的文件

        今天我妹子的考研视频说是有重复的,让我检查一下全部的文件夹下还有哪些是重复的,于是就帮她看了看。我的业务情况:        一个folder下有很多的folder,子folder下有很多的视频,要找寻每个folder下大小相同的视频文件,不包括跨folder的文件。 @Test public void test02() { File file...

2019-01-20 13:16:39 669

原创 /WEB-INF/下实现jsp之间的跳转

这里是单纯希望jsp走jsp,而并不走controller。先进行解释说明:        我们都知道,实现页面的跳转有两种方式,一个是redirect重定向,还有一种是forward转发,因为重定向相当于浏览器重新从服务器端请求页面,而/WEB-INF/下的文件是不允许直接浏览器请求访问的,所以,不可以使用重定向,但是,我们可以在一个页面通过转发的方式去访问,因为转发还是在服务器端进行的...

2019-01-11 10:54:20 5661 5

原创 装饰模式

这里没有对装饰模式的讲解,只有自己的理解和一些代码示例。下图是我对各个组件的命名。1、动态的为一个对象增加新的功能2、装饰模式是一种用于代替继承的技术,无需通过继承增加子类就能扩展对象的新功能(这样就比卖你了因为继承导致的同类型体系的快速膨胀 )。使用对象的关联关系代替继承关系,更加灵活。3、设计原则:类应该对扩展开放,对修改关闭。在不修改先有代码的情况下,而已搭配新的行为,这样使...

2019-01-01 23:45:18 119

原创 idea使用springboot内置的tomcat整合jsp

还在纠结于springboot整合jsp报404错误的小伙伴可以看向这里了,我这个方案使用的是内置的tomcat1、新建springboot项目2、写入项目名3、不用进行dependencies选择,我们自己导4、继续选择finish按钮5、先看一下原始目录结构6、修改pom.xml文件的依赖,将原始的dependencies进行覆盖&lt;depen...

2018-12-30 09:21:15 3680 1

原创 JDK8接口中默认方法

package com.cathy;public interface Formula { double calculate(int a); default double sqrt(double b){ //定义默认方法,加default关键字 return Math.sqrt(b); }}class ImplFormula{ ...

2018-12-29 20:52:46 2485

原创 windows下scala的安装和使用

在windows下安装(保证系统环境有JDK1.8)1、从官网下载scala的msi,(2.12.x版本的大概124M大小左右)双击,指定安装目录,运行安装2、不需要指定path路径,scala会自动配置path3、这样就已经可以在cmd中输入scala了进行交互了 在windows下的scala使用有两种模式:交互模式编译模式第一种:1、先编写一个***....

2018-12-27 11:47:24 2169

原创 idea springboot多环境配置

1、在父项目的pom.xml中配置 &lt;profiles&gt; &lt;profile&gt; &lt;id&gt;dev&lt;/id&gt; &lt;properties&gt; &lt;multi-env&gt;dev&lt;/multi-env&gt;

2018-12-22 12:17:30 499

原创 将springboot放置在外部的tomcat运行

1、springboot本身就有内置的servlet,所以想要在外部的tomcat运行,就需要移除掉内置的servlet,需要在pom.xml文件中加入标签移除,注意放置的位置&lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;...

2018-12-22 01:06:13 193

原创 如何捕捉一个线程抛出的异常?UncaughtExceptionHandler(异常捕捉处理方法)

public class Test { public static void main(String[] args){ Thread.UncaughtExceptionHandler handler= new Thread.UncaughtExceptionHandler(){ public void uncaughtException(Thr...

2018-12-18 20:32:24 2965

空空如也

空空如也

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

TA关注的人

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