- 博客(57)
- 收藏
- 关注
原创 spring AOP注解@Aspect的使用
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
2022-09-11 21:47:32
671
原创 Mysql 存在则修改 不存在则新增的两种实现方法
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
2022-09-11 10:02:35
6256
原创 设计模式_spring框架中常用的8种设计模式
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
2022-09-11 00:20:19
488
原创 使用node命令提示 ‘node‘ 不是内部或外部命令,也不是可运行的程序
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
2022-09-10 22:52:07
4022
原创 WebFlux 详解
Spring Framework 中包含的原始 Web 框架 Spring Web MVC 是专门为 Servlet API 和 Servlet 容器构建的。反应式堆栈 Web 框架 Spring WebFlux 是在 5.0 版的后期添加的。它是完全非阻塞的,支持反应式流(Reactive Stream)背压,并在Netty,Undertow和Servlet 3.1 +容器等服务器上运行。上面的文字和图片都是来自官网的。从中我们可以大概知道是对标Spring MVC的。
2022-09-10 09:30:18
480
原创 SpringBoot---自动配置原理
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
2022-09-10 02:17:56
145
原创 Nginx反向代理WebSocket服务连接报错:WebSocket connection to “wssxxxxxx“ failed
WebSocket 协议与 HTTP 协议不同,但 WebSocket 握手与 HTTP 兼容,使用 HTTP 升级工具将连接从 HTTP 升级到 WebSocket。这允许 WebSocket 应用程序更容易地适应现有的基础架构。例如,WebSocket 应用程序可以使用标准 HTTP 端口80和443,从而允许使用现有的防火墙规则。WebSocket 应用程序可以在客户端和服务器之间保持长时间运行的连接,从而有助于开发实时应用程序。
2022-09-10 00:51:08
4020
1
原创 kali下对Docker的详细安装
Docker是渗透测试中必学不可的一个容器工具,在其中,我们能够快速创建、运行、测试以及部署应用程序。如,我们对一些漏洞进行本地复现时,可以使用Docker快速搭建漏洞环境,完成复现学习。注:本教程仅供学习参考,请勿用在非法途径上,违者后果自负,与笔者无关。
2022-09-07 15:15:14
2072
1
原创 JVM 哪块内存区域不会发生内存溢出?
程序计数器是一块内存较小的区域,它用于存储线程的每个执行指令,每个线程都有自己的程序计数器,此区域不会有内存溢出的情况。
2022-09-07 12:47:11
344
原创 Java虚拟机:JVM 主要组成部分与内存区域
对于永久代,由于类和方法等信息比较难确定大小,所以指定永久代的大小比较困难,太小容易出现永久代溢出,太大则容易导致老年代溢出,并且每次Full GC 之后永久代的大小都会改变,如果动态生成很多 class 的话,就很可能出现 OOM,毕竟永久代的空间配置有限。JDK8 之前,Hotspot 中方法区的实现是永久代(Perm),JDK8 开始使用元空间(Metaspace),以前永久代的静态变量和常量池移至堆内存,其他内容移至元空间,元空间直接在本地内存分配。该区域线程私有,生命周期与线程的生命周期相同。
2022-09-07 10:12:37
412
原创 docker:CentOS安装 docker和默认安装目录
Docker 运行在CentOS-6.5或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker。从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Docker EE。Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。...
2022-09-01 16:26:47
1532
原创 docker保存和加载tar及其tar.gz
其中-o和>表示输出到文件,nginx.tar为目标文件,nginx:latest是源镜像名(name:tag)其中-o表示输出到文件,xxx.tar为目标文件,base_mes_1.1是源容器名(name)其中xxx.tar为目标文件,base_mes:1.1是目标镜像名:tag。其中-i和...
2022-09-01 14:00:18
2113
原创 cmd 输入java,javac,java -version无效解决方案
运行cmd的时候,不管是输入java,javac,还是java -version 报不是内部或外部命令的错误。笔记本的系统是win10 64bit的系统,按照网上的指导安装了jdk和jre ,环境变量什么的都配置了。cmd中输入:set path=“%JAVA_HOME%in”...
2022-09-01 11:30:25
964
原创 @MapKey的使用
我这里的业务场景是:有字典表,其他表的很多字段都需要去字典表中查询,由于字典表的维护方便统一,所以将其他表对字典值的查询单独抽出来,那么我们可以将每次需要查询字典值的id拿到一起,直接查询字典信息,用map接收字典的内容,将id做为key,很方便拿到。mybatis的xml文件最后查询的结果...
2022-09-01 08:46:03
203
原创 干货|Spring Cloud Bus 消息总线介绍
Spring Cloud Bus 自身内容还是比较少的,不过还是需要提前了解 Spring Cloud Stream 体系以及 Spring 自身的事件机制,在此基础上,才能更好地理解 Spring Cloud Bus 对本地事件和远程事件的处理逻辑。目前 Bus 内置的远程事件较少,大多数为配置相关的事件,我们可以继承并配合注解构建自身的微服务消息体系。原文链接本文为云栖社区原创内容,未经允许不得转载。...
2022-08-29 08:50:48
886
原创 初级Java工程师面试所遇面试题
4、addFirst()添加在首,addLast()添加在尾,getFirst(),getLast()获取元素,removeFirst(),removeLast()删除元素;1、底层基于iterator实现,也是从头开始遍历,但是效率会慢与iterator迭代,因为多出类型转换;4、addElement()添加元素,elementAt(index)获取元素;4、add()添加元素,get(index)获取元素;1、servlet调用init()方法进行初始化;4、调用service()方法;...
2022-08-28 03:36:37
153
原创 使用MySQL APT库在Linux上安装MySQL
deb用下载的包的名称替换掉version-specific-package-name.deb。4.在安装期间,需要选择mysql server和组件的版本。不能确定版本,就不要改变默认版本。如果不想安装某一个组件,就选择none。选择完毕后,选择ok就可以完成安装。安装完成以后也可以通过选择发行版本,修改mysql版本。5. 可以用下边的命令更新包。除了利用发行的deb包,还可以人工自己添加APT仓库。详见注意:MYSQL APT仓库一旦生效,就不可以从系统自带的软件库安装MYSQL的任何包。...
2022-08-28 01:03:48
659
原创 为什么java不是最强的语言而JVM确可以叫做最强的虚拟机呢
JVM虚拟机的作用 : 二进制字节码的运行环境负责装载字节码,到其内部,编译为对应平台上机器指令执行,每一条java指令,JVM虚拟机规范中有详细的定义,如:怎么取到操作数,处理操作数,处理的结果在哪里特定一次编译 到处运行自动内存管理自动垃圾回收功能。...
2022-08-27 06:39:09
352
原创 Windows编译安装Redis 6.0
先下载MSYS2,我用的清华的源 https://mirrors.tuna.tsinghua.edu.cn/msys2/distrib/x86_64/ ,Redis 6.0出来了,但微软提供的Windows版Redis竟然还是3.2版本,不能忍,所以准备自己编译安装新版Redis。经评论区提醒,发现上面分享的以及教程演示的redis版本号显示为999,看了看是因为我下的源码是。下载的是压缩包要先解压下,然后在msys2里cd进入解压后的目录。换源很简单,在 解压后的msys2目录下的。...
2022-08-27 01:43:01
1242
原创 vue项目部署运行到tomcat上
还有一点需要注意的就是,webstorm起服务时,需要改回来,不然也是不行的。3.【tomcat部署】现在,在tomcat的webapps文件夹下以项目名称新建一个文件夹,比如my_app,然后将index.html和static文件夹复制到my_app文件夹下,现在就可以启动服务器了,访问正常。经过了好一番折腾,发现手机端可以访问电脑端的文件了,可是发现这是一个坑,这样子设置了只是说手机可以访问电脑当前目录的一些文件,对于静态文件还好,但是这是一个服务,那就没办法了。...
2022-08-26 23:16:54
525
原创 Ubuntu安装 Docker
Docker 需要在64位版本的Ubuntu上安装。此外,你还需要保证你的 Ubuntu 内核的最小版本不低于 3.10,其中3.10 小版本和更新维护版也是可以使用的。在低于3.10版本的内核上运行 Docker 会丢失一部分功能。在这些旧的版本上运行 Docker 会出现一些BUG,这些BUG在一定的条件里会导致数据的丢失,或者报一些严重的错误。Docker 可以安装在 64 位的 x86 平台或 ARM 平台上。...
2022-08-26 11:31:43
279
原创 Tomcat内存增长分析
(这个时候我还原了Tomcat的配置,所以虚拟内存是1024MB)刚开始刷新的时候,发现tomcat疯狂的涨,不过也只是涨到800+MB了,然后开始慢慢往下掉了,最后掉到了300+MB。于是又查看了一遍数据,发现新生代区的Total memory内存涨了。当时怀疑内存泄露了,于是导出刚启动tomcat的dump文件和已经涨到800多的dump文件进行对比。提交大小就是分配的虚拟内存,tomcat启动的内存也从500M降到了300M。这个时候发现我的JVM最大内存是1797.50 MB。...
2022-08-26 08:45:50
2332
原创 ssm mybatis 配置多个 mapper 目录
除了上面这种目录结构一致的方式,我们还可以使用下面的配置方式,这个意思也就是说只要是符合mapper* 这样的命名规则的包都会被扫描到。
2022-08-25 06:28:40
439
原创 springcloud学习之路(一)
1、使用eureka做注册中心2、使用restTemplate实现服务之间的调用3、服务集群后使用ribbon实现服务本地轮询调用。
2022-08-25 04:01:26
74
原创 SpringBoot整合Dubbo
Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分业务的架构,使用这种方式可以使各个业务之间解耦合(或者最大限度地松耦合)。一款分布式服务框架高性能和透明化的RPC远程服务调用方案SOA服务治理方案Dubbo架构这里写图片描述Provider: 暴露服务的服务提供方。Consumer: 调用远程服务的服务消费方。Registry: 服务注册与发现的注册中心。Monitor: 统计服务的调用次数和调用时间的监控中心。调用流程服务容器负责启动,加载,运行服务提供者。
2022-08-24 23:09:07
778
原创 springBoot启动时找不到或无法加载主类解决办法
第一步:首先鼠标键右击你的项目,点击run as——》maven clean第二步:鼠标键右击你的项目,run as—>maven install;在eclipse控制台你可以看见报错的jar包;第三步:去maven仓库删除对应的jar,右击你的项目,maven–>update project(重新下载jar包);第四步:重复一,二步骤,找到你的启动类,run as java application;问题解决。
2022-08-24 19:35:28
4889
原创 springboot 整合lombok
lombo可以简化实体类开发(简化get和set方法,toString方法,hashcode方法,equals方法)
2022-08-24 17:03:45
309
原创 Spring Cloud认证和授权
由于服务被拆分成很多细小的服务,这种情况下,需要为每个服务进行每个用户的SSO动作,那么每个服务都需要做用户的认证和授权,可能保存用户信息或者每个用户都会和鉴权服务打交道,这种情况会带来非常大的网络消耗和性能损耗,也可能会造成数据不一致,所有不太建议用这种方案。我们发送请求到负载均衡软件,负载均衡发到微服务网关上,网关进行用户认证后,解析出用户的基本信息,通过认证后,携带用户标识到后台微服务,微服务根据标识进行相应的鉴权,这样就形成一个完整的权限链路。这种方式适合老系统改造。
2022-08-24 14:36:03
446
原创 Shiro 学习应用
和 Spring Security 一样,Shiro 也属于权限安全框架。和 Spring Security 相比,Shiro 更简单,学习曲线更低。关于 Shiro 的一系列特征及优点,很多文章已有列举,这里不再逐一赘述。这里记下学习 Spring 4.x + Shiro 1.2 的过程,可能有水平不够的地方,敬请指正。
2022-08-24 01:57:08
107
原创 redis向指定ip主机开放远程连接权限(防骚扰)
一开始,在redis.conf配置文件中,我将bind设置为0.0.0.0,将protected-mode设置为no;最近在做一个java项目,想要把项目部署到云端。项目中用到了redis服务器。我的redis服务器布置在华为云服务器,而我的应用布置在阿里云上。这样就开放了远程连接,我可以使用阿里云愉快的连接redis服务器。这是在我们按照有redis的服务器,查看6379端口的连接。或者在防火墙内设置向某IP开放某个端口。在华为云中设置安全组,允许指定ip访问。被一些莫名其妙的ip骚扰,很头大。
2022-08-23 23:24:53
390
原创 RabbitMQ防止消息丢失
RabbitMQ中,消息丢失可以简单的分为两种:客户端丢失和服务端丢失。针对这两种消息丢失,RabbitMQ都给出了相应的解决方案。
2022-08-23 16:25:35
131
原创 Nginx+Tomcat搭建高性能负载均衡集群
谁能想到实现一个高性能的负载均衡集群会如此简单。Nginx的功能如此强大,配置却如此简单,我们还有什么理由拒绝它呢?这比我们动不动就十多万至几十万人民币的F5 BIG-IP、NetScaler等硬件负载均衡交换机廉价了不知多少。此外,大家别忘了Nginx不仅仅是一个反向代理服务器,它本身也可以托管网站,作为Web服务器,进行Http服务处理。
2022-08-23 11:20:45
152
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人