自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(166)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 红黑树定义

定义每个结点或是红的,或是黑的根节点是黑的叶了结点固定是黑色的,并且是空节点如果一个结点是红的,则它的两个儿了都是黑的对每个结点,从该结点到其子孙节点的所有路径上包含相同数目的黑结点旋转新节点是黑色,无需调整新节点是红色(默认) ,并且父节点是黑色,无需调整新节点是红色(默认),并且父节点也是红色叔叔节点为空: 旋转+变色 (xp,xpp)叔叔节点为黑色: 旋转-变色 (xp,xpp)叔叔节点为红色: 变色(xp,xppir xpp)

2023-05-19 11:27:30 120

原创 Linux 防火墙

zones防火墙能够根据用户设置的信任级别把网络划分成许多的区域,一个网络连接只能归属于一个区域系统默认的所有区域存储在 /usr/lib/firewalld/zonesblock : 对于外部主动主动发起的连接,主机会返回一个 icmp 包来拒绝,但主机可以向外部主动发起连接dmz: 非军事区域内的计算机可以公开访问,但是对于内部网络,只接受指定的连接drop:对于传入的网络数据包,主机直接拒接,不返回任何消息包,只允许从主机传出数据包external:用于使用伪装的外部网络,尤其是路由器,

2022-02-14 17:17:44 2928

原创 端口占用查询

端口占用查询

2022-02-14 16:21:08 1113

原创 Linux查看版本信息

cat /etc/os-release

2021-12-23 15:05:16 879

原创 Maven 将【远程仓库】jar包安装至【本地仓库】

在maven仓库网站查询jar包https://mvnrepository.com/ 以【Spring Boot Gradle Plugin » 2.1.3.RELEASE】为例获取jar包坐标及仓库地址使用如下命令安装:mvn org.apache.maven.plugins:maven-dependency-plugin:2.1:get -Dartifact=org.springframework.boot:spring-boot-gradle-plugin:2.1.3.RELEASE .

2021-10-27 18:06:47 538

原创 MAC应用无法打开或文件损坏的处理方法

/Applications/xxxx.app 为应用路径sudo xattr -d com.apple.quarantine /Applications/xxxx.app

2021-08-11 11:32:31 139

原创 jar包中读取资源文件 getResourceAsStream

此种方法可在编辑器中运行读取资源文件,打包成jar包后发布也可以读取到项目中文件将资源文件如xxx.js放到项目的main/resources文件夹中this.getClass().getClassLoader().getResourceAsStream("xxx.js")

2021-08-10 18:47:05 649

原创 Leetcode算法题

队列 & 栈1. 岛屿数量思路:循环遍历所有坐标。如果坐标值为1,将坐标值置为0,岛屿数量+1。同时将此坐标上下左右四个坐标加入队列,循环置0。2. 打开转盘锁思路:八叉树。

2021-07-08 15:54:24 114

原创 ssh免密登录

ssh-keygen # 生成公私钥# 将公钥放入 服务器 ~/.ssh/authorized_keys文件中即可

2021-06-29 11:28:53 104

原创 npm切换镜像源

npm切换镜像源npm set registry https://registry.npmjs.org/

2021-06-21 14:55:09 120

原创 java添加本地 jar包

<dependency> <groupId>com.jiuqi</groupId> <artifactId>ssc</artifactId> <scope>system</scope> <systemPath>${project.basedir}/libs/com.jiuqi.ssc.sdk.jar</systemPath> <version>1.0

2021-06-11 20:05:20 3191

原创 File获取文件名(去除路径)

// 获取文件名String fileName = file.getOriginalFilename();int unixSep = fileName.lastIndexOf('/');int winSep = fileName.lastIndexOf('\\');int pos = (winSep > unixSep ? winSep : unixSep);if (pos != -1) { fileName = fileName.substring(pos + 1);}...

2021-06-08 17:31:35 2823

原创 MySQL调优

索引索引是帮助MySQL高效获取数据的排好序的数据结构索引数据结构二叉树:【问题】顺序插入后形成类似链表的线性结构红黑树(二叉平衡树):【问题】数据量大时层级会比较多Hash表:【问题】不方便范围查找B+TreeB+TreeB-Tree叶节点具有相同的深度,叶节点的指针为空所有索引元素不重复节点中的数据索引从左到右递增排列B+Tree(B-Tree变种)非叶子节点不存储data,只存储索引(冗余),可以放等多的索引叶子节点包含所有索引字段叶子节点用指针连接,提高区间

2021-06-04 16:32:01 101

原创 JVM调优

JDK体系结构Java编译运行过程Java内存模型堆结构和垃圾搜集过程new 出来的对象都会往 Eden(伊甸)区放 然后满了 会进行minor gc存活的放到s0中再次满了 再次搜集s0和Eden存活对象 放到s1中…s1,eden–>s0 不断调换年龄到达15的或大对象 进入老年区老年区满了 会启动full gc 启动full gc时候必须暂停所有执行的代码也就是STW(stop the world) 因为我们的对象必须要有一个确定的状态 不暂停的话就无法确定可达性分析

2021-06-04 14:03:49 100

原创 web3使用

智能合约编译abi及java接口solc ./contract/Market.sol --abi --bin -o ./contract --overwriteweb3j generate solidity -b ./contract/Market.bin -a ./contract/Market.abi -o ./src/main/java -p com.market.contract合约调用var Web3 = require('web3');var web3 = new Web3(new

2021-06-03 11:11:34 560

原创 web3.js

智能合约编译abi及java接口solc ./contract/Market.sol --abi --bin -o ./contract --overwriteweb3j generate solidity -b ./contract/Market.bin -a ./contract/Market.abi -o ./src/main/java -p com.market.contract

2021-06-03 10:37:09 204

原创 Solidity

编译过程

2021-06-02 10:27:18 98

原创 Java设计模式【七大原则】

设计模式常用的七大原则单一职责原则接口隔离原则依赖倒转原则里式替换原则开闭原则 ocp迪米特法则合成复用原则

2021-05-31 16:16:05 206 1

原创 基于create-react-app,实现 react 、react-router、react-redux 最小案例

基于create-react-app,实现 react 、react-router、react-redux 最小案例

2021-05-20 17:16:43 237

原创 MyBatis

MyBatis实战教程SessionSqlSession 代表和数据库的一次会话,用完必须关闭SqlSession 和 connection 一样都是非线程安全的。每次使用都应该去获取新的对象mapper接口没有实现类,但是mybatis会为这个接口生成一个代理对象两个重要配置文件:mybatis的全局配置文件,包含数据库连接信息,事务管理器信息等。系统运行环境信息sql映射文件:保存了每一个sql语句的映射信息,将sql抽取出来多数据库支持全局配置文件中配置databaseIdP.

2021-05-12 16:46:55 194

原创 以太坊geth客户端安装

连接公链git clone https://github.com/ethereum/go-ethereum.gitcd go-ethereummake geth./build/bin/geth version # 查看geth版本./build/bin/geth --datadir ./data连接私有链创建区块配置文件 genesis.json{ "config": { "chainId": 15 }, "difficulty": "2000", "gasLimit": "2

2021-04-28 17:24:48 1357 2

原创 本地运行remix-ide

使用如下命令下载、安装、启动本地 Remix ide# 安装nx依赖npm install -g @nrwl/cli# 下载ide源码项目git clone https://github.com/ethereum/remix-project.git# 构建项目cd remix-projectnpm installnx build remix-ide --with-deps# 启动服务nx serve然后,访问网页:http://127.0.0.1:8080...

2021-04-27 18:03:34 527

原创 Java 9&10&11 新特性

视频链接:Java零基础教程JDK 9 的发布经历4次跳票,历经曲折的Java 9终于在2017年9月21日发布从Java 9这个版本开始,Java的计划发布周期是6个月,下一个Java的主版本将于2018年3月发布,命名为 Java 18.3,紧接着再过六个月将发布 Java 18.9这意味着Java的更新从传统的以特性驱动的发布周期,转变为以时间驱动的(6个月为周期)发布模式,并逐步的将Oracle JDK原商业特性进行开源针对企业客户的需求,Oracle将以三年为周期发布长期支持版本(l.

2021-04-27 15:15:39 383

原创 JavaSE 笔记【十四】反射

视频链接:Java零基础教程反射机制概述Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透过这个镜子看到类的结构,所以,我们形象的称之为:反射。正常方式:引入需要的“包类”名称 -->.

2021-04-26 10:20:32 95

原创 JavaSE 笔记【十三】网络编程

视频链接:Java零基础教程网络编程目的:直接或间接地通过网络协议与其他计算机实现数据交换,进行通讯两个主要问题:如何准确地定位网络上一台或多台主机;定位主机上的特定的应用找到主机后如何可靠高效的进行数据传输通讯双方地址:IP端口号一定的规则(即:网络通讯协议。有两套参考模型)OSI参考模型:模型过于理想化,未能在因特网上进行广泛推广TCP/IP参考模型(或TCP/IP协议):事实上的国际标准网络通信协议:OSI参考模型TCP/IP参考模型TCP/IP参.

2021-04-22 16:36:51 100

原创 Filecoin是如何存储数据的?

背景在2021年的今天,一个128GB容量的存储芯片,或许足够存储普通用户一年至两年所产生的数据。但企业生产数据的能力远超个人。以自动驾驶行业为例,一家中型企业每日所产生的道路信息及机器学习数据就会达到20-100TB。而100TB数据将存满800块128GB硬盘。存储生产数据,企业可以选择自己配备存储设备,或者使用阿里云、百度云等第三方云存储服务。不论是云服务,还是数据存储中心,其本质都是基于HTTP超文本传输协议。HTTP采用中心化存储,将数据存储到单一服务器,当进行数据检索时,HTTP通过TCP建立

2021-04-21 18:05:22 939

原创 EOS 20问

EOS是什么?EOS是一个区块链开发平台,具有可扩展性强、支持大规模商业应用等特点。首先,DOS采取DPOS(Delegated Proof of stake)共识算法及其他技术手段,预期实现每秒百万级别交易请求。将能够支持数千个商业级的DAPPS。以太坊是一条公链,在以太坊链上运行的每一个应用都会消耗整条链的资源。但EOS只是区块链基础架构,开发者可以自由的在EOS上创建公链,链与链之间不会影响彼此的资源使用,不会出现因为个别应用资源消耗巨大而造成网络大面积拥堵。其次,在EOS上转账与运行智能合约并

2021-04-20 15:59:50 627

原创 JavaSE 笔记【十二】IO流

视频链接:Java零基础教程File类的使用java.io.FIle类:文件或文件目录路径(文件夹)的抽象表示形式,与平台无关File能新建、删除、重命名文件和目录,但File不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流想要在Java程序中表示一个真实存在的文件或目录,那么必须有一个FIle对象,但是Java程序中的一个File对象,可能没有一个真实存在的文件或目录File对象可以作为参数传递给流的构造器常用构造器public File(String pathn.

2021-04-14 15:19:25 137

原创 JavaSE 笔记【十一】泛型

视频链接:Java零基础教程为什么要有泛型?集合容器类在设计阶段/声明阶段不能确定这个容器到底实际存的是什么类型的对象,所以在JDK 1.5 之前只能把元素类型设计为Object,JDK 1.5之后使用泛型解决。因为这个时候除了元素的类型不确定,其他的部分是确定的,例如关于这个元素如何保存,如果管理等是确定的,因此此时把元素的类型设计成一个参数,这个类型参数叫做泛型。Collection< E>,List< E>,ArrayList< E> 这个< E&gt.

2021-04-09 16:57:43 122

原创 JavaSE 笔记【十】集合

视频链接:Java零基础教程Java集合框架概述一方面,面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储。另一方面,使用Array存储对象方面具有一些弊端,而Java集合就像一种容器,可以动态地把多个对象的引用放入容器中数组在内存存储方面的特点:数组初始化之后,长度就确定了数组声明的类型,就决定了进行元素初始化时的类型数组在存储数据方面的弊端:数组初始化以后,长度就不可变了,不便于扩展数组中提供的属性和方法少,不便于进行添加、删除、插入等操作,且效.

2021-04-09 14:20:45 168

原创 JavaSE 笔记【九】枚举类和注解

视频链接:Java零基础教程枚举类一、枚举类的使用枚举类的理解:类的对象只有有限个,确定的当需要定义一组常量时,强烈建议使用枚举类如果枚举类中只有一个对象,则可以作为单例模式的实现方式枚举类的属性枚举类对象的属性不应该允许被改动,所以应该使用private final修饰枚举类的使用private final修饰的属性应该在构造器中为其赋值若枚举类显示的定义了带参数的构造器,则在列出枚举值时也必须对应的传入参数二、如何定义枚举类jdk 5.0之前,自定义枚举类.

2021-04-06 11:08:42 252 2

原创 JavaSE 笔记【八】Java常用类之比较器、System类、Math类、BigInteger、BigDecimal

视频链接:Java零基础教程Java比较器Java 中的对象,正常情况下,只能进行比较: == 或 != 。不能使用 > 或 < 的。但是在开发场景中,我们需要对多个对象进行排序,言外之意,就需要比较对象的大小。如何实现?使用两个接口中的任何一个:Comparable(自然排序) 或 Comparator(定制排序)java.util.Comparable接口的使用举例:像String、包装类等实现了Comparable接口,重写了compareTo(obj)方法,给出了比较两个.

2021-04-02 14:44:00 180

原创 JavaSE 笔记【七】Java常用类之日期时间API

视频链接:Java零基础教程java.lang.SystemSystem类提供的 public static long currentTimeMillis() 用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差此方法适于计算时间差计算世界时间的主要标准有:UTC(Coordinated Universal Time)GMT(Greenwich Mean Time)CST(Central Standard Time)java.util.Date表示特定的瞬间,精确到.

2021-04-02 10:23:31 114

原创 JavaSE 笔记【六】Java常用类之String、StringBuffer、StringBuild

视频链接:Java零基础教程String字符串是常量,用双引号引起来表示String实现了Serializable接口:表示字符串是支持序列化的String实现了Comparable接口:表示String可以比较大小String 是一个final类,代表不可变的字符序列。String 内部定义了数组 final char[] value 用于存储字符串数据,它们的值在创建之后不能更改通过字面量的方式(区别于new)给一个字符串赋值,此时的字符串值申明在字符串常量池(字符串常量池中是不会存储相.

2021-03-31 10:34:40 188

原创 JavaSE 笔记【五】多线程

视频链接:Java零基础教程程序、进程、线程程序:一段静态的代码进程:正在运行的一个程序,进程是动态的,进程作为资源分配的单位线程:线程作为调度和执行的单位,每个线程拥有独立的运行栈和程序计数器(pc)一个Java应用程序java.exe,至少有三个线程:main() 主线程、gc() 垃圾回收线程、异常处理线程。当然如果发生异常,会影响主线程。并发与并行并行:多个CPU同时执行多个任务。比如:多个人同时做不同的事并发:一个CPU(采用时间片)同时执行多个任务。比如:秒杀.

2021-03-30 11:50:48 93

原创 线程安全的单例模式(Java)

单例模式:保证一个类对象只实例化一个如何实现单例模式:私有构造方法私有化实例对象提供公共静态的获取对象的方法饿汉式饿汉式单例模式是天然的线程安全,在类加载时实例化对象public class Singleton { private static Singleton instance = new Singleton(); private Singleton() {} public static Singleton getInstance() { retu

2021-03-23 10:54:18 815

原创 JavaSE 笔记【四】异常处理

视频链接:Java零基础教程异常处理Error一般不编写针对性的代码进行处理栈溢出:java.lang.StackOverflowError堆溢出:java.lang.OutOfMemoryErrorException使用针对性的代码进行处理空指针访问试图读取不存在的文件网络连接中断数组下标越界异常处理方式try-catch-finallycatch中的异常类型如果满足子父类关系,则要求子类一定声明在父类的上面,否则报错。finally中的代码一定会执行,如果fin.

2021-03-22 09:58:36 88

原创 JavaSE 笔记【三】面向对象

视频链接:Java零基础教程封装性对象的内存解析堆(Heap):存放对象实例栈(Stack):存储局部变量方法区(Method Area):类信息、常量、静态变量、即时编译器编译后的代码属性与局部变量属性:可以用访问修饰符修饰,有默认初始化值,加载到堆空间中(static属性加载到方法区)局部变量:没有访问修饰符,没有默认初始化值,加载到栈空间中对象数组的内存解析引用类型的变量,只可能存储两类值:null或地址值(含变量的类型)可变个数的形参JavaSE 5.0 中提供了Vara.

2021-03-16 14:40:44 144

原创 Spring Security【四】微服务权限方案

视频链接:SpringSecurity框架教程文章源码:https://github.com/geyiwei-suzhou/spring-security认证授权过程

2021-03-09 16:59:40 944

原创 Spring Security【三】web权限方案

视频链接:SpringSecurity框架教程文章源码:https://github.com/geyiwei-suzhou/spring-security用户认证(设置用户名、密码)设置登录的用户名和密码第一种方式:通过配置文件修改application.properties,添加如下内容:spring.security.user.name=antherdspring.security.user.password=antherd第二种方式:配置类package com.antherd.

2021-03-09 16:57:03 525 1

SpringMVC笔记.pdf

SpringMVC笔记.pdf

2021-09-06

git-modify-author.sh

修改Git Commit提交记录的用户名Name和邮箱Email。用于修改已经提交记录的用户名及邮箱。

2021-05-20

Java核心技术 卷I 基础知识(原书第10版)_英文版_带书签_高清完整.pdf

英文版,原汁原味,非扫描,带书签。一边学英语一边学技术。

2017-10-09

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

TA关注的人

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