自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(117)
  • 资源 (2)
  • 收藏
  • 关注

原创 【重拾算法】并查集

一、什么是并查集并查集是图论中的一种算法集就是集合,因此可以看出并查集与集合操作有关并查集内有两个重要的操作:合并(union),查询(find)合并操作是用来将不同的集合合并为一个集合,查询操作用来查询某个元素所属的集合二、举个栗子假设现在有六个元素,代号分别为1、2、3、4、5、6他们的集合关系如下,{1, 2}, {1, 5}, {3, 4}, {6, 2},在同一花括号内表示处在同一集合中问元素[1, 3],元素[2, 5]是否在同一集合内思路:根据提供的

2022-01-12 20:23:54 436

原创 【Golang】make与new创建的不同

日常项目中经常可见使用make创建chan、map等类型的变量,虽然new也可以创建,但似乎用的较少,这里对比下两种不同方式创建的区别1. make这里分别用数组、map、chan举例,make只能初始化这三种类型的变量make可以选择初始化的大小,且会使用默认值填充,v4变量内默认填充了两个空白字符串,若用int初始化则会用0填充func TestTypeMake(t *testing.T) { v1 := make([]int, 0) v2 := make(map[...

2021-12-22 22:25:35 315

原创 SpringBoot 无法获取 @Value 标注变量的值

为了减少代码耦合,使用配置文件对一些特殊值进行初始化,在标注了 @Component 的 bean 中对变量用注解 @Value 标注,在运行过程中发现标注值为空,但是在 Intellij 的代码中可以看到注入的值原因:自己失了智,用 static 对变量进行了标注将 static 删除后再次运行...

2019-07-01 19:14:38 753

原创 Springboot 整合 Pagehelper 实现分页

Pagehelper是 Mybatis 的物理分页插件其实现原理是实现了 Interceptor 接口,在 sql 语句执行之前将其获取到,并添加 limit 进行分页查询查看其源码可以发现,在 Pagehelper中使用了 ThreadLocal 保存分页信息,实现了线程隔离具体使用在 pom.xml 中引入对Pagehelper 的依赖 <d...

2019-06-07 15:30:07 942 6

原创 SpringBoot 整合 Redis 实现消息队列

Redis 消息队列分为两种:生产者消费者模式及发布订阅模式生产者消费者模式:生产者将消息发送至消息信道,所有消费者共享该消息信道,从中取出全部消息之后进行筛选处理发布订阅模式:消费者提前选定自己需要的消息类型,只接收自己需要的消息在 pom.xml 中加入依赖 <dependency> <groupId>org...

2019-06-06 14:51:10 5993 1

原创 Java 动态代理

什么是代理模式:在类的定义与调用之间加入一个中间件,代替该类向外实现功能有一个图书类,实现了将书给用户的操作,而 BookStore 作为 Book 的代理类,在其中实现了用户付款的逻辑,用户实际是通过 BookStore 来对 Book 类的方法进行调用Java 中实现动态代理主要用两种方式:基于 jdk 的动态代理与基于 cglib 的动态代理jdk 基于...

2019-06-02 21:15:39 243

原创 Java 自定义注解

注解是在 JDK1.5 开始引入的特性,用户对包、类、接口、方法、字段、局部变量等进行解释说明创建自定义注解时需要用到元注解,元注解可以用来描述自己创建的注解目前元注解有四个:@Target:@Retention:@Documented:@Inherited:详细解释元注解:@Target 用于说明自定义注解所...

2019-06-02 11:26:42 178

原创 解决 SpringBoot + Vue 跨域问题

出现跨域问题的条件:请求的 URL 地址与浏览器的地址的域名、端口、协议三者的其中之一不同时,就会产生跨域问题主要是因为浏览器为安全起见的同源策略解决方案:Springboot:利用 CORS 协议 解决跨域import org.springframework.context.annotation.Bean;import org.springframework.c...

2019-05-13 21:17:18 1993

原创 Java 关于 MySQL 中 时间与插入的 Date 类型数据不符的问题

之前的项目对于数据库中保存的时间多数用于登录日志,并不看重,也没有细看。今天遇到的问题就是当需要时间精确到秒进行比对时,发现我插入数据库的数据与数据库保存的数据相差了八小时的误差。经过百度后发现是因为时区不一致的问题我们是东八区,而 MySQL 默认是世界标准时间即格林尼治平太阳时间,两者相差八小时只需要在配置中加入时区设置,并设置为东八区即可解决问题在尾部加入:server...

2019-05-13 21:00:46 1933

原创 Spring Cloud 消息总线:Spring Cloud Bus

部分内容摘自Spring Cloud 官方文档中文版本文源码地址https://github.com/Wyxwx/spring-cloud-bus目录消息总线简介整合 RabbitMQ 基本使用整合 Spring Cloud Config(RabbitMQ)消息总线简介将分布式系统的节点与轻量级消息代理链接。用于广播状态更改(例如配置更改)或其他管理指令。一个...

2019-05-04 15:40:04 344

原创 Redis 零散 Tips

匹配 key:1. keys [pattern]2. scan [cursor] match[pattern] count[num]相对而言,scan 命令更为高效,异步方式不会造成主线程堵塞判断 key 存在与设置过期时间1. setnx key value:如果 key 存在则不操作, key 不存在时执行 set key value expire key ...

2019-05-03 13:13:18 258

原创 Spring Cloud 分布式配置中心:Spring Cloud Config

部分内容摘自Spring Cloud 官方文档中文版本文源码地址https://github.com/Wyxwx/springCloud-config目录Spring Cloud Config 简介Spring Cloud Config 基本使用Git 后端URI 的占位符配置多个仓库安全保护加密解密对称加密客户端快速失败客户端重试Sp...

2019-04-29 17:41:37 320

原创 Spring Cloud Netflix 路由器和过滤器:Zuul

部分内容摘自Spring Cloud 官方文档中文版本文源码地址:目录Zuul 简介:Zuul 基本使用:Zuul 重定向通过 Zuul 上传文件Zuul 断路机制@EnableZuulProxy 与 @EnableZuulServer@EnableZuulServer 过滤器@EnableZuulProxy 过滤器自定义 Zuul 过滤Zu...

2019-04-18 21:09:12 648

原创 Spring Cloud Netflix 声明性REST客户端:Feign

部分内容摘自Spring Cloud 官方文档中文版本文源码地址:https://github.com/Wyxwx/SpringCloudDemo2目录名词解释:FeignFeign 的基本使用覆盖 Feign 默认值Feign Hystrix 支持Feign 请求/响应压缩Feign 日志记录名词解释:FeignFeign 是一个声明式的 Web ...

2019-04-18 00:20:47 283

原创 Spring Cloud Netflix 断路器:Hystrix

部分内容摘自Spring Cloud 官方文档中文版本文源码地址:https://github.com/Wyxwx/SpringCloudDemo2目录为什么要使用断路器Hystrix 基本使用为什么要使用断路器当同一级联下的服务出现故障时,若不及时解决,可能会导致整片服务的整体故障,所以有了断路器的出现。官方文档解释:断路器计算何时打开和关闭电路,以及在发生...

2019-04-16 21:53:15 278

原创 Spring Cloud Netflix 客户端负载平衡器:Ribbon

部分内容摘自Spring Cloud 官方文档中文版本文源码地址:https://github.com/Wyxwx/SpringCloudDemo2Ribbon 是一个客户端负载均衡器,它可以很好地控制 HTTP 和 TCP 客户端的行为。目录负载均衡Ribbon 基本使用自定义 Ribbon 客户端使用属性自定义 Ribbon 客户端取消在 Ribb...

2019-04-14 17:08:33 295

原创 Spring Cloud Netflix 服务发现:Eureka (三) 健康检查

部分内容摘自Spring Cloud 官方文档中文版默认情况下,客户端在服务中心注册成功后,将一直处于 "UP" 状态即当该客户端出现故障或被关闭后,服务中心会认为该客户端依旧存在,依旧会将部分请求发送至该客户端执行,从而导致不良体验,这称作是 Eureka 的自我保护机制要想解决这种问题,则需要在服务端的配置中关闭自我保护机制,并在客户端的配置文件中加入发送心跳间隔时间和服务器...

2019-04-13 22:29:45 348

原创 Spring Cloud Netflix 服务发现:Eureka (二) 身份验证

部分内容摘自Spring Cloud 官方文档中文版本文源码地址:https://github.com/Wyxwx/SpringCloudDemo成功启动 Eureka 服务器之后,任意一个浏览器只要知道服务器的 ip 和端口号便可以直接进入这样会带来严重的安全隐患,并且在服务中心界面也会有安全隐患提示,所以 Eureka 提供了身份验证功能该功能基于 Spring Secu...

2019-04-13 17:45:34 491

原创 Spring Cloud Netflix 服务发现:Eureka (一) 注册和运行

部分内容摘自 Spring Cloud 官方文档中文版本文源码地址:https://github.com/Wyxwx/SpringCloudDemoSpring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具例如配置管理,服务发现,断路器,智能路由,微代理,控制总线Eureka服务发现是基于微服务架构的关键原则之一。Eureka 是 Netfl...

2019-04-13 16:56:45 448

原创 访问 Linux 服务器上的文件(以图片为例)

问题由来:编写服务端代码时,将前端传来的图片保存至服务器,并将路径保存到数据库中,当前端需要访问该图片时,不想利用二进制流传输,而是让前端利用 url 直接访问该图片如图,Linux 服务器 /root/photo 路径下保存有图片,需要在浏览器中可以直接根据 url 访问到此 Linux 服务器需要配置有 Tomcat进入 Tomcat 的 conf 文件夹下编辑 se...

2019-04-09 00:30:49 26178 10

原创 Springboot 将前端传递的图片上传至Linux服务器并返回图片的url(附源码)

问题由来:用户个人信息需要添加头像功能当前端程序是微信小程序时,前端将直接将图片 url 传送至服务端但是当前端是 Web 页面时,前端传递的参数是一张图片,服务端需要将图片保存至 Linux 服务器的某个文件夹下,并将该图片的访问路径保存至数据库中。pom.xml <!-- thymeleaf --> <dependency>...

2019-04-09 00:19:12 7326 8

原创 Springboot 在拦截器中自动注入属性为空问题解决方案

问题描述:需要在拦截器中用 Redis 缓存一些数据,但是不论是用 @Resource 还是 @Autowired 注入,都会报空指针异常如图:调试时显示 RedisUtil 为空出现这个问题的原因是因为拦截器作用在属性自动注入开始之前,其运行时,内部属性还未开始注入,所以为空于是在百度上找答案,找到的大部分答案如下:写一个配置类来注册拦截器,并在其中将拦截器作为 Bea...

2019-04-04 10:56:56 1729

原创 Springboot 从controller跳转至jsp页面(There was an unexpected error (type=Not Found, status=404)解决办法)

跳转 JSP 所需要的 jar 包:<dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId></dependency><dependency> <groupId>org....

2019-03-16 12:49:08 3794 3

原创 Spring Boot 项目在本地可以成功访问但是在服务器上无法访问 Controller 方法解决办法

这是一篇记录自己失了智的博客晚上写了一个小 Demo 来测试在云服务器上同时运行两个 jar 包的情况两个项目的端口分别为 8080 和 8880以 8880 为端口的 Demo 在本地成功运行并且访问到了 Controller 中的方法在服务器运行后从日志中也可以确定成功完成了映射但是就是没有办法通过服务器的 url 进行访问百度了 N 久都没有找到和我相同的...

2018-11-05 23:51:37 13225 2

原创 IDEA 创建 Maven + Spring Boot 项目并打包(jar 包)上传至 Linux 服务器上运行(详细多图)

首先打开 IDEA 并点击 New Project,进入如下页面,点击 Maven,选中"Create from archetype" big选择 quickstart 然后 nextGroupId 为 package 名,ArtifactId 为项目名称,点击 next不用改动,直接 next(有教程说要添加一个什么东西来防止下载速度过慢,笔者用了另一种办法,后面描述)上...

2018-11-05 22:49:44 1703

原创 Spring Boot 的 jsp文件中无法引入静态资源文件(js,css等文件),错误(net::ERR_ABORTED 404)

报错信息:报错时我的jsp文件中引入路径:<script type="text/javascript" src="../../sources/static/jquery-1.8.3.min.js"></script><script type="text/javascript" src="../../sources/static/websocket.js...

2018-10-30 00:11:18 11903 5

原创 Spring Boot + WebSocket 学习笔记

WebSocket 协议是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工通信--允许服务器主动发送信息给客户端,实现客户端之间的交互。WebSocket 是从 Html5 中演化而出,但是相对于 HTTP的 不支持持久性连接,WebSocket 是一个持久化的协议。实现 WebSocket 协议后,服务端只要与客户端进行过一次连接之后,就不需要再次连接,并且可以一直向客户端...

2018-10-30 00:00:32 400

原创 关于vi编辑器的方向键无法使用的解决方法

对于刚开始用Linux编程的小白来说,vi是最基础的编辑器,可以用vi写出一些简单程序而在vi中按下方向键或退格键会出现奇奇怪怪的字母这种情况是由于vi不支持方向键和退格键,这些功能是由vim支持的,所以只需要重新下载vim即可打开终端,依次输入以下命令:sudo apt-get remove vim-commonsudo apt-get install vim再次打开vi...

2018-10-24 13:08:01 2205

原创 Win10环境配置Tomcat(9.0版本)

由于博主今天中午脑子一抽重装了系统,电脑上所有的东西都被我干掉了,一朝回到解放前,被各种配置折磨了一下午,所以记录一下重装系统之后艰难的配置路线,以防以后再次冲动首先去官网下载tomcat的压缩包并解压然后去电脑的属性配置环境变量这里需要配置两处:CATALINA_HOME 与 PathCATALINA_HOME的变量值是tomcat的根目录,如下图其后,点击编辑P...

2018-10-20 21:15:51 3043 3

原创 阿里云Ubuntu64位云服务器搭建JavaEE环境(JDK+Tomcat+Mysql)

要想在服务器上部署自己的项目,首先要在服务器上安装JDK, Mysql, Tomcat,下面将先讲解如何安装这三项。由于我的电脑是win10系统,所以需要下载额外的辅助软件来实现与服务器的文件交互等。准备工作:下载PuTTy,FileZilla,jdk(请无视截图的版本,不要下载10.0版本!!!来自已踩坑选手的忠告),Tomcat,mysql打开FileZilla,将云服务器的公...

2018-09-15 17:09:14 677 2

原创 Linux 连接文件

Linux 的连接文件有两种1. symbolic link(符号连接)类似 Windows 的快捷方式功能的文件,可以快速连接到目标文件2. hard link(硬连接)通过文件系统的 inode 连接来产生新文件名,而不是产生新文件一、hard link在某个目录下新建一条文件名连接到某 inode 号码的关联记录eg:[root@www ~]# ln /etc/crontab crontab...

2018-03-17 11:41:35 2420

原创 Linux 命令与文件的查询

查询脚本文件名which(寻找“执行文件”)[root@www ~]# which [-a] command# -a:将所有由 PATH 目录中可以找到的命令均列出该命令是根据 PTAH 这个环境变量所规范的路径去查询“执行文件”的文件名查询文件名whereis(寻找特定文件)[root@www ~]# whereis [-bmsu] 文件或目录名# -b:只找二进制格式的文件# -m:只找...

2018-03-11 14:01:19 265

原创 Linux 下文件内容的查阅命令

简单介绍cat:由第一行开始显示文件内容tac:从最后一行开始显示文件内容nl:显示的时候,顺便输出行号more:一页一页地显示文件内容less:与 more 类似,但可以往前查询翻页head:只看头几行tail:只看结尾几行od:以二进制的方式读取文件内容命令详解1. cat[root@www ~]# cat [-AbEnTv] 文件名# -A:可以列出一些特殊字符,相当于 -vET 参数#...

2018-03-11 12:57:01 302

原创 Linux 下的文件与目录管理

查看文件与目录:ls[root@www ~]# ls [-aAdfFhilnrRSt] 目录名称[root@www ~]# ls [--color={never,auto,always}] 目录名称[root@www ~]# ls [--full-time] 目录名称# -a:全部文件,连同隐藏文件一起列出来# -A:列出全部文件,包含隐藏文件,但不包括 '.' 和 '..'这两个目录#...

2018-03-11 11:20:13 280

原创 Linux 下目录与路径

(一)相对路径与绝对路径绝对路径:路径的写法一定由根目录 / 写起相对路径:路径的写法不是由 / 写起比较而言,相对路径较为方便,但是绝对路径的正确度更好目录的相关操作下表为一些较为特殊的目录符号代表意义.此层目录..上一层目录-前一个工作目录~目前用户身份”所在的主文件夹~账号名该用户的主文件夹ps:根目录的上一层(..)与根目录自己(.)是同一个目录下表为一些常见的处理目录的命令cd切换目录p...

2018-03-11 10:23:23 1025

原创 Linux 的文件权限的概念

(一)Linux 文件属性利用 ls -al 命令查看文件命令 ls:显示文件的文件名与相关属性-al 参数:列出所有的文件(含隐藏文件)详细的权限与属性-rw-r--r--.1rootroot129Dec 29 2013.tcshrc权限连接数文件所有者文件所属用户组文件大小文件最后被修改的时间文件名--&gt; 第一列代表这个文件的类型与权限    · 第一个字符代表这个文件是“目录、文件或链...

2018-03-10 20:56:35 278

原创 关于 Linux 系统下的关机命令

由于 Linux 系统的特殊性,可能有很多人同时在你的主机上面工作,所以当你直接按下电源开关来关机时,其他人的数据传输也会中断,造成文件损毁,所以关于这个问题,Linux 里有一些相关的命令将数据同步写入磁盘:sync在 Linux 系统的默认情况下,某些已经加载内存中的数据不会直接被写回硬盘,而是先暂存在内存当中。因此在关机之前要利用 sync 命令先将数据写入磁盘,为了防止非正常关机,可以在关...

2018-03-10 18:51:30 312

原创 关于 Linux 的 man page 说明与使用

man 即是 manual 的简写在命令行执行 "man [命令或数据]" 既可以出现关于该命令或数据的详细操作说明例如,输入 "man cal" 之后会出现如下界面:下表为在 man page 界面中的常用快捷键按键功能空格向下翻一页[Page Down]向下翻一页[Page Up]向上翻一页[Home]去到第一页[End]去到最后一页/string向下查询string字符串?string向上查...

2018-03-10 15:18:50 4911

原创 关于 Vmware Workstation 虚拟机出现 The VMware Authorization Service is not running 问题的解决方案

点击开启虚拟机后,出现了如图所示的错误提示解决方案:打开任务管理器,点击服务在名称里找到 VMAuthdService 右键点击选择启动再次开启虚拟机即可成功...

2018-03-10 11:14:03 1270

原创 windows关机命令与tomcat的shutdown命令冲突解决方法

配置tomcat使其能在任意目录下启动之后,输入startup回车,如图再输入shutdown会出现如下图问题默认为关机命令,若想执行tomcat的shutdown命令,只需执行全称shutdown.bat成功关闭...

2017-12-14 13:20:06 2453

archetype-catalog.xml

可以有效解决 IDEA 的 Maven 项目下载资源过慢的问题,将其放在 C 盘 .m2 根目录下即可解决问题

2018-11-05

Spring框架jar包-5.0.4

Spring官网下载,spring-framework-5.0.4.RELEASE.zip,内含spring开发所用的jar包

2018-04-03

空空如也

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

TA关注的人

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