自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Leo的博客

成长中的java后端程序猿

  • 博客(44)
  • 收藏
  • 关注

原创 什么是线程池?

更多Java技术文章,关注公众号,分享源码阅读笔记1.特点线程池是一个三级存储结构,线程先放入核心线程池,满了之后放到缓存队列当中,最后如果缓存队列也满了则扩容新线程。实现原理2.1 构造方法public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime,

2021-02-18 16:27:14 330

原创 Nginx

更多Java技术文章,关注公众号,分享源码阅读笔记​1. Nginx/TengineTengine是淘宝基于Nginx的魔改版,性能都很高,只是版本迭代较慢,Nginx比较快。本质还是Nginx。1.1 安装首先去淘宝官网或者Nginx官网下载,解压缩后#安装必备依赖yum install gcc openssl-devel pcre-devel zlib-devel -y#设置安装路径,并初始化安装./configure --prefix=/usr/local/tengin#进行安装

2021-02-18 16:26:36 248

原创 Docker起了nginx镜像,但是无法访问

注意了,nginx默认端口是80端口的,不要做错映射,做错映射了就凉凉了,无法访问。换成docker -d -p 80:80 nginx 试试就知道了。使用docker的时候,注意程序的默认端口号

2020-09-20 00:21:30 2409 3

原创 macos安装brew,并解决Failed to connect to raw.githubusercontent.com port 443

macOS安装Homebrew时总是报错Failed to connect to raw.githubusercontent.com port 443: Connection refused原因:GitHub的raw.githubusercontent.com域名解析被污染了。解决办法:通过修改hosts解决此问题。获取真实IP并配置到host中即可修改hostssudo vim /etc/hosts添加如下内容(已查询好):199.232.28.133 raw.githubuserc

2020-09-03 17:10:55 868

原创 Linux下jdk配置惹的坑

Linux 环境下运行 Java 程序时,执行 javac Test.java 生成 Test.class 文件,再执行 java Test 时报错:Error: Could not find or load main class Test修改配置即可CLASSPATH=$JAVA_HOME/lib/改为CLASSPATH=.:$JAVA_HOME/lib/即JAVA_HOME=/usr/local/java/jdk1.8.0_261 #视具体情况而定CLASSPATH=.:$JAV

2020-08-19 14:09:52 186

原创 ThreadLoacl源码解析

ThreadLoacl作用与原理?有啥用?怎么用?源码长啥样?有啥Bug?怎么避免?来来来,这里都有~

2020-08-19 12:17:06 117

原创 Spring security开启csrf后,一直403并且无法获取csrftoken

后端的配置代码中增加.csrf().csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse())要将http-only设置为false才可以获取这样就成功了

2020-06-29 10:37:19 2447

原创 mac下阅读open-JDK13源码

下载源码:https://github.com/BaryLeo/openjdk我试过很多次无法编译,都是源码问题(我也傻,没有从官方fork下来)下载安装xcode以及commandline tools下载安装额外工具brew install freetype //必须有brew install ccache //加速编译下载安装Oracl-JDK11(10-12均可作为BootstrapJDK)参考文章:https://blog.csdn.net/weixin_44460107/a

2020-06-15 16:07:34 294

原创 微信开发下载微信语音文件的坑

开发的时候返回invalid media,(用微信开发工具。。。。贼坑),不多说,直接上图。。。。。懂了吧。。。。

2020-03-31 15:16:02 557

原创 基础数据结构之队列

队列(Queue)特点:和栈不同,队列的最大特点是先进先出(FIFO),就好像按顺序排队一样。对于队列的数据来说,我们只允许在队尾查看和添加数据,在队头查看和删除数据。实现:可以借助双链表来实现队列。双链表的头指针允许在队头查看和删除数据,而双链表的尾指针允许我们在队尾查看和添加数据。应用场景:直观来看,当我们需要按照一定的顺序来处理数据,而该数据的数据量在不断地变化的时候,则需要队列来帮...

2020-03-08 17:28:41 206

原创 戴尔游匣5577黑苹果EFI文件

1、适用High Sierra, Mojave and Catalina版本(博主曾经使用)2、适用与Mojave,博主正在使用除了耳机,基本完美公众号回复5577EFI即可获取EFI文件下载地址...

2020-03-02 21:14:43 3656 3

原创 基础数据结构之栈

特点:栈的最大特点就是后进先出(LIFO)。对于栈中的数据来说,所有操作都是在栈的顶部完成的,只可以查看栈顶部的元素,只能够向栈的顶部压⼊数据,也只能从栈的顶部弹出数据。实现:利用一个单链表来实现栈的数据结构。而且,因为我们都只针对栈顶元素进行操作,所以借用单链表的头就能让所有栈的操作在 O(1) 的时间内完成。**应用场景:**在解决某个问题的时候,只要求关心最近一次的操作,并且在操作完成了...

2020-03-02 21:06:16 224

原创 基础数据结构之链表

单链表:链表中的每个元素实际上是一个单独的对象,而所有对象都通过每个元素中的引用字段链接在一起。双链表:与单链表不同的是,双链表的每个结点中都含有两个引用字段。链表的优点如下:链表能灵活地分配内存空间;能在 O(1)时间内删除或者添加元素,前提是该元素的前一个元素已知,当然也取决于是单链表还是双链表,在双链表中,如果已知该元素的后一个元素,同样可以在O(1) 时间内删除或者添加该元素。...

2020-03-02 21:04:38 172

原创 基础数据结构之数组与字符串

数组和字符串是最基本的数据结构,在编程语言中都有着十分相似的性质;字符串可以转换成数组处理。数组的优点在于:构建非常简单能在 O(1) 的时间里根据数组的下标(index)查询某个元素而数组的缺点在于:构建时必须分配一段连续的空间查询某个元素是否存在时需要遍历整个数组,耗费 O(n) 的时间(其中,n 是元素的个数)删除和添加某个元素时,同样需要耗费 O(n) 的时间相关L...

2020-03-02 21:00:14 211

原创 Redis之字符串

从底层源码认识Redis

2020-03-02 20:43:56 134

原创 SpringBoot+Security+swagger2,swagger2静态资源被拦截

在此之前,我发现,无论是怎么配置,都没办法过这个拦截器,于是,我查看了一下URL,并不是/swagger-ui.html,而是"/webjars/springfox-swagger-ui","/webjars/springfox-swagger-ui/**",于是在SercuityConfig里面配置一下,就好了...

2019-12-28 11:01:26 4655 5

原创 SpringBoot接受解析复杂JSON

SpringBoot如何接受并方便地解析复杂JSON呢?Java解析复杂json,多对象嵌套,复杂结构JSON解析。

2019-08-01 09:38:25 3711 2

原创 Java判断溢出快捷方便方式

数学公式(a+b)%k=0

2019-05-02 08:55:39 215

原创 结合Java面试题,深入理解Java(三)

谈谈final,finally,finalize有什么不同

2019-02-23 21:21:36 226

原创 结合Java面试题,深入理解Java(二):补充

NoClassDefFoundError与ClassNotFoundException的区别在哪?

2019-02-17 22:20:03 155

原创 正则表达式(进阶篇)

一、零宽断言解释一下这是个什么鬼。1、断言:可以理解为一个标记,断点,假如"aa1bb2cc3",我可以利用断言,即bb2作为标记,一个断点,匹配bb2前的内容或后面的内容;2、零宽:在正则表达式中,断言只匹配位置,不占字符,匹配字符结果不会返回断言,即结果不包含标记或者断点那零宽断言有什么用?举个栗子:假设要在CSDN中爬取文章的阅读量。需要爬取的资料如下:<span

2019-02-16 22:03:40 999

原创 结合Java面试题,深入理解Java(二)

Exception和Error有什么区别?另外,运行时异常与一般异常有什么区别?

2019-02-16 22:02:41 170

原创 结合JAVA面试题,深入理解JAVA(一)

谈谈你对Java平台的理解?“java是解释执行”,这句话正确吗?

2019-02-10 10:40:33 744

原创 正则表达式(入门篇)

一、元字符万物皆有元(最基本元素),而元字符是构成正则表达式的基本元素常用元字符有:元字符说明.匹配除换行符以外的任意字符/w匹配字母或数字或下划线或汉字/s匹配任意的空白符/d匹配数字/b匹配单词的开始或者结束^匹配字符串的开始$匹配字符串的结束例释:1、匹配有abc开头的字符串\babc^abc2、匹...

2019-01-24 22:29:19 373

原创 范围加法

public class Solution { public int[] getModifiedArray(int length, int[][] updates) { // Write your code here int[] changes = new int[length + 1]; int[] res = new int[length...

2018-12-23 10:00:20 222

原创 获取复数并且进行运算

主类public class Main { public static void main(String[] args) { Complex a,b; String result; getComplex GetComplex = new getComplex(); System.out.println("请输入第一个复数:"); a = GetComplex.Get...

2018-12-23 09:47:45 801

原创 Ubuntu18.04与WIN10双系统,免U盘安装,能避免许多坑

一直以来装Ubuntu与win10双系统遇到的坑,各种各样,心酸得很,以下可以避免很多杂七杂八得问题,安装起来也方便,只要求,支持UEFI启动1、检查自己系统是否以UEFI方式启动,是否支持UEFI方式参考如果win10系统不是以UEFI方式启动,要更改为UEFI启动2、安装前需要做得工作,以及安装时得教程点我如果你的是N卡,安装完后第一次重启会卡在Ubuntu的logo动画界面,关闭...

2018-12-04 22:14:52 9139

原创 Ubuntu安装Eclipse的坑

因为我使用的是Ubuntu18.04,有软件商城,直接下载了Eclipse,但是启动不了,找不到JDK,但我已经设置好了,原来发现,JDK的安装位置不对,最好安装在/opt下,进行全局设置JDK将JDK的压缩包xxx.tag.gz复制到/opt/jvm文件夹下,所以得先在/opt下新建一个jvm文件夹,而要在opt文件夹下新建文件夹需要获取root权限,所以需要sudo指令。在/opt下新建文...

2018-12-04 15:57:14 3463 7

原创 java向下转型前需要检测能否实现

向下转型时,要捕抓ClassCastException异常,否则会出现异常。尽量少用类型转换与instanceof运算符对象的类型转换:1、只能在继承层次内进行类型转换2、在将超类转换成子类时,应该使用instanceof进行检查if(staff[1] instanceof Manager){ //若为true ,则运行此处代码块}3、若x 为 nullx instanceo...

2018-11-29 22:17:40 436

原创 任意的矩阵转置

public class Main { public static void main(String[] args) { /** * 获取矩阵 */ int[][] array; int[][] array_copy; int[][] array_changed; int c...

2018-11-22 14:26:16 809

原创 java从控制台获取矩阵

public class GetMatrix { private String getHL; private String[] HLs; private int[] HL; public int[][] get(){ /** * 创建数组行列数 */ HL = new int[2]; ...

2018-11-22 14:22:47 2456

原创 改变一个字符,便可切换排序顺序

直接上代码/** * 从小到大排序 */ for (int i = 0;i <nums.length;i++){ for (int j = i;j<nums.length;j++){ //此循环若j=0,则从大到小排序 if (nums[i] > ...

2018-11-19 23:26:38 479

原创 删除多余的空格(或者特定字符),提取出字符串中的数据

/** * 删除多余的空格,提取出数据 */ String[] numArr = numArray.split(" +"); int[] nums = new int[numArr.length]; for (int i = 0;i<numArr.length;i++){ nums[i]...

2018-11-19 23:25:21 1744

原创 java中String的spilt()与trim()的使用与区别(当去除空格时)

trim():只去掉字符串的头与尾的空格,中间空格不去除public class GetString { String[] StringArray; String string; public void Get(){ StringArray = new String[20]; Scanner tempSc = new Scanner(S...

2018-11-11 16:23:57 883

原创 管理MySQL的常用命令

注意:指令在Linux下区分大小写,windows不区分1、use 数据库名 ;选择要操作的Mysql数据库,使用该命令后所有Mysql命令都只针对该数据库。mysql> use RUNOOB;Database changed2、SHOW DATABASES;列出 MySQL 数据库管理系统的数据库列表。3、SHOW TABLES;显示指定数据库的所有表,使用该...

2018-11-10 12:14:02 209

原创 登录 MySQL

当 MySQL 服务已经运行时, 我们可以通过 MySQL 自带的客户端工具登录到 MySQL 数据库中, 首先打开命令提示符, 输入以下格式的命名:mysql -h 主机名 -u 用户名 -p参数说明:-h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0。1)该参数可以省略;-u : 登录的用户名;-p : 告诉服务器将会使用一个密码...

2018-11-10 12:06:00 429

原创 mysql配置中吃的亏:服务启动失败,服务没有报告任何错误

[mysqld] # 设置为自己MYSQL的安装目录 basedir=D:\\mysql# 设置为MYSQL的数据目录 datadir=D:\\mysql\\datadefault-storage-engine=INNODBcharacter-set-server=utf8[mysql]# 设置mysql客户端默认字符集default-character-set=utf8[cl...

2018-11-10 12:00:56 652 1

原创 java重定向输出流到文件(从文件到输入流)

java重定向输出流到文件(从文件到输入流)如何重定向呢?先看看以下代码public class Run{ int age; String name; String sex; public void go(){ age = 0; name = "未知"; sex = "未知"; ...

2018-10-01 13:25:39 2995

原创 git本地绑定github

首先确认自己已经安装了git,然后随意一个地方git bash,输入ssh-keygen -t rsa -C "自己的邮箱地址@XXX.com" 生成自己的公钥与私钥一路默认回车,会生成公钥、私钥到以下文件夹下id_rsa是私钥,id_rsa.pub是公钥,用记事本打开公钥等下要用到 浏览器进入自己的github,打开设置,进入ssh and GPG keys点击NEW ...

2018-09-10 12:52:39 1681

原创 git常用命令及HttpRequestException encountered解决方法

HttpRequestException encountered解决方法问题原因是Github 禁用了TLS v1.0 and v1.1,必须更新Windows的git凭证管理器。 通过此网址https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/ 下载网站中最新的GCMW最新版,安装然后重启git即...

2018-08-06 18:13:14 1568

空空如也

空空如也

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

TA关注的人

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