自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 spring bean 的生命周期

1、初始化bean; 调用createBeanInitize; 就是在堆里面开辟一个空间、属性都还是默认值2、属性注入; 分两部分别自定义属性赋值; 容器属性赋值(比如ApplicationContent、BeanFacrty)自定义属性赋值--- 调用容器属性赋值--- 》 执行invoidMethodAware方法,检查是否实现Aware接口、如果实现并及逆行赋值此时bean初始化已经完成3、调用BeanPostProcessor前置处理 --- 给bean对象进行扩展比如a

2022-01-08 10:44:41 6410

原创 Synchronized与lock锁区别

1、synchronized是java关键字,他是jvm层面; lock是接口(相应的实现比如ReentrantLock);2、synchronized无法获取到锁的状态, lock可以获取到锁的状态;3、synchronized是自动锁,如果代码执行完毕或发生异常, 他会自动释放锁的资源, lock手动锁,需要人工进行调用unlock方法进行释放锁的资源, 一般都是放在finally; 如果不释放会发生死锁;4、synchronized如果线程a获取到锁的资源,发生阻塞,线程b会一直等待, 而

2021-09-02 10:52:08 15884

原创 vm安装centos7系统后,使用ifconfig命令 ens33 没有IP地址

xshell连接不上Linux

2022-12-29 09:50:54 4664 1

原创 kafka入门

kafka入门

2022-12-25 20:46:04 4447

原创 ces1111111

ces

2022-10-26 17:32:49 172

原创 【无标题】

【代码】【无标题】

2022-10-26 17:30:31 612

原创 Redis数据结构

Redis非关系型数据库,可以用作数据库、缓存、消息中间件,Redis他是基于内存的因此没有磁盘io的开销,因此他比我们关系型数据库读取数据快,能大大提升我们的运行效率,因此在我们开发中比较常用;Redis数据类型一字符串类型:这个很好理解,一个key存储一个字符串,value支持多种数据结构,比如我们常用的有:String、Hash、List、set、zset, 还有一些特殊数据类型比如Bitmaps、HyperLogLog、GEO;

2022-10-26 16:17:17 4769

原创 消息队列实现分布式事务

消息队列实现分布式事务

2022-09-25 12:36:02 9026

原创 redis缓存穿透、击穿、雪崩

redis缓存穿透、击穿、雪崩

2022-09-09 09:53:41 9265

原创 docker 部署 tomcat

docker

2022-09-03 23:32:46 3349

原创 spring 事务的传播行为

PROPAGATION_REQUIRED_NEW:事务a方法调用b方法,若a方法开启事务,他则会将放事务挂起,开启一个新的事务, 若a方法没有开启事务,则开启一个新的事务;:这个是spring默认的传播行为,我们事务a方法调用b方法,如果我们a方法开启事务,则b方法加入该事务, 如果a方法没有开启,则b方法会开启事务执行;:强制,我们事务a方法开启事务调用b方法,b方法加入该事务,如果a方法没有开启事务,则抛出异常;PROPAGATION_NEVER:非活动事务运行, 若a开始事务,则会抛出异常;

2022-09-02 11:22:03 595

原创 java 获取验证码优化(使用字符串截取,修改整数运算,提升n倍)

java 获取六位验证码

2022-08-30 17:46:03 13159

原创 mysql常见问题

mysql

2022-08-19 18:29:23 10346

原创 spring cloud alibaba gateway (网关)

getaway

2022-07-11 22:53:00 955

原创 springcloud alibaba sentinel持久化nacos

sentinel持久化nacos上

2022-07-09 16:53:05 210

原创 java 常用排序

入门基础排序

2022-07-09 10:23:24 241

原创 springcloud-alibaba sentinel

spring cloud alibaba sentinel

2022-07-03 09:59:58 113

原创 springcloud-alibaba sentinel 简单入门四(热点)

spring cloud aplibaba sentinel 热点

2022-07-02 18:10:03 154

原创 springcloud-alibaba sentinel 简单入门四(熔断)

spring cloud alibaba sentinel

2022-07-02 17:56:42 322

原创 springcloud-alibaba sentinel 简单入门四(流控-排队等待)

这个在我们现实中比如我们做核酸,我们去做核酸往往会到一个专门做核酸的地点,然后我们过去排队直到拍到我们我们才能做核酸; 在比如我们去银行办理业务,一般我们是先去银行柜台进行挂号,进行等待我们工作人员叫我们才能进行办理我们的业务;在我们程序中体现是我们规定多长时间处理一个请求,已固定的时间让我们请求通过,其他请求进行排队等待,就相当于漏斗算法;新建springcloud alibaba项目 编写pom、yml、controller;...

2022-07-02 17:17:02 255

原创 springcloud-alibaba sentinel 简单入门三(流控-预热)

比如我们有一些微博,平常没多少人访问,突然有一天我们的这个微博博主发布一些信息,然后突然访问量暴增,这样可能会导致我们系统崩溃;还比如我们一些秒杀系统,突然会有大量请求过来,比如下图: 突然请求量突然往上升;代码:同样我们需要搭建springboot项目,导入nacos、sentinel 依赖、编写application.properties文件;先启动nacos、sentinel; 下载地址上一篇博客有pom:yml: 编写controller 修改完之后的效果: sentienel配置信息:

2022-07-02 17:03:10 245

原创 springcloud-alibaba sentinel 简单入门二

这一节我们是对sentinel进行配置,添加流控信息;我们将我们的服务注册到我们sentinel中在我们簇点链路中会有我们的接口名称,在我们对应的接口名称旁边也就有我们的流控按钮进行操作;我们点击这个按钮会有以下弹窗 当我们选择qps会让我们填写单机阈值; 比如我们填写1的话,也就是说再我们这一秒期间只能有一个来访问其他就是被我们sentinel进行阻塞,其他则进行以下操作比如流控模式是选择直接的话,然后流控效果是快速失败的话,那么我们一秒中只能有一个请求成功,其他则返回失败如果我们选址不是qps而是并发

2022-06-25 15:08:16 320

原创 springcloud-alibaba sentinel 简单入门一

官方文档:quick-start下载地址: Releases · alibaba/Sentinel · GitHub 他是一个jar包直接运行即刻: 默认端口8080我们编写springboot项目(一般我们都是使用nacos跟sentinel配置使用)1、 添加pom依赖2、编写application.yml文件3、编写controller+启动类开启nacos(略)4、我们启动nacos、sentinel客户端;我们sentinel是冷加载的,我们需要先进行访问接口,然后再去访问localh

2022-06-25 14:51:29 127

原创 idea创建springboot项目链接超时切换alibaba地址

1

2022-06-19 16:09:22 412

原创 springcloud alibaba 一:nacos

springcloudalibaba入门

2022-06-16 19:32:32 74

原创 HTTP与TCP区别

1、TCP对应与传输层、而HTTP对应于应用层;2、HTTP底层是利用TCP协议传输的,所以支持http也就一定支持TCP;

2022-03-11 17:26:47 23778 3

原创 list转tree

Class Test {private int id;private int pid;private String name;private List<Test> chlidren;// 省略 getter setter 构造方法, toString}class Demo {public static void main(String [] args) { ...

2022-03-04 11:11:53 1955

原创 redis快速搭建 一主二从

1、下载reidswget http://download.redis.io/releases/redis-6.0.8.tar.gz2、解压缩tar -zxvf redis-6.tar.gz3、进入解压缩后的文件夹目前,执行make编译4、创建config目录将redis.conf复制进去,切拷贝三份5、那么我们用6379作为主机, 6380,6381作为从 ; 主机的话一般不需要修改;如果有特殊的需求当然使可以修改的;接下来修改从 6380、6381;进入..

2022-02-27 11:25:33 656

原创 快速使用注解方式实现aop切面编程

@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.METHOD})@Documentedpublic @interface AnnoAopLogs { boolean value() default true; // 是否需要打印日志}

2022-02-25 14:44:32 1510

原创 springboot 快速使用spring@Scheduled启动定时任务

@Component@Lazy(false)public class TestScheduled { // 秒、分、时、天、月份、星期、年 @Scheduled(cron = "0/5 * * * * ?") public void testSheduled() throws InterruptedException { System.out.println("clean:"+new Date().getTime() + ":" +Thread.current.

2022-02-24 15:06:32 3022

原创 springboot 快速使用dubbo + zookeeper

需求:商品下单,商城服务调用订单服务;涉及到的服务:商城服务、订单服务、工具类服务common;公共api-common:public interface OrderService { /** * 根据订单id查询订单详情 * @param orderId * @return */ OrderInfo queryOrderInfo(String orderId); /** * 商品下单 * @param.

2022-02-23 09:34:35 1691

原创 一、docker安装

一、docker安装1、进入docker官方文档:Install Docker Engine on CentOS | Docker Documentation2、卸载之前的docker版本:yum remove docker \ docker-client \ docker-client-latest \ docker-common \ ...

2022-01-08 10:29:57 73

原创 docker基本命令

1、启动docker: systemctl start docker;2、重启docker:systemctl restart docker;3、停止docker: systemctl stop docker;4、下载容器:docker pull5、查看镜像:docker images 【可选参数】-a 查看所有镜像 --默认-f 过滤-q 查看镜像id6、删除镜像:docker rm -f 【镜像id】【镜像id】 删除所有镜像 docker rm -...

2022-01-03 09:47:53 2564

原创 springboot根据request.getSession().getServletContext().getRealPath(“/“); 访问项目静态资源问题

springboot项目继承tomcat我们无需配置tomcat启动项目,当我要在项目中根据request.getSession().getServletContext().getRealPath("/");获取路径始终获取的是c盘的AppData\Local\Temp\tomcat-docbase.8888.6190239935306398198这个目录,这个问题找了一上午, 终于找到了问题所在;我们的工作目录定位是项目路径父工程上面, 于是我修改了下路径到子工程下面的resources就好了.

2021-12-11 11:44:02 3266

原创 解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题,即在mybatis中dao接口与mapper配置文件在做映射绑定的时候出现问题,简单说,就是接口与xml要么是找不到,要么是找到了却匹配不到。Mapper接口开发需要遵循以下规范: Mapper.xml文件中的namespace与mapper接口的类路径相同。 Mapper接口方法名和Mapper.xml中定义的每个state

2021-12-08 09:51:00 357

原创 idea配置本地maven仓库

1,去官网下载maven(Maven – Welcome to Apache Maven)2. 下载完成之后解压缩文件夹(略)3. 解压完成之后配置maven环境配置完成之后保存就可以了此时已经本地maven配置完成1,maven本地仓库准备好后,就是让idea项目中使用本地仓库。vm值:-Xms128m -Xmx512m -Duser.language=zh -Dfile.encoding=UTF-82,刷新项目maven, 此时他会去下载jar包到...

2021-12-06 09:36:46 1539

原创 SpringBoot的优点及缺点

优点:1. 去除大量的xml配置;2.简化复杂的依赖关系;3.配合starter,可以做到自动化配置;4.快速启动容器;5.创建spring容易内嵌servlet容易(tomcat,jetty等);6.嵌入tomcat无序部署war包;7.支持特定默认属性满足特定需求;8.没有代码生成并且对xml没有要求缺点:1.集成度过高,对于了解底层不容易;2.将原有的spring项目转成springboot项目比较困难;3.依赖过多,一个springboot项目有很...

2021-11-23 16:02:59 4191

原创 js 数组对象去重

1,利用对象属性去重let arr = [{ id : "10", name : "张三"},{ id : "20", name : "李四"},{ id : "10", name : "张三"},{ id : "30", name : "王五"}];let obj = {};let newArr = [];for (let i = 0; i < arr.length; i ++) { if (!obj.

2021-11-15 15:51:45 1789

原创 Exception和Error区别

Exception一般程序运行期间,可以预期到异常,希望能被捕获;而Error一般会导致程序崩溃,而是JVM出于非正常状态, 而这些非正常状态不能被程序捕获处理;1.而我们Exception一般分为两种,检查异常和非检查异常;检查异常一般在编译期间必须进行捕获或抛出,检查异常是没有继承RuntimeException,比如IOException,FileNotFoundException;1.1.对于检查异常程序可以进行try{}catch(){}进行捕获;或向上抛, 将由jvm处理; 我们尽量

2021-11-11 09:51:28 552

原创 SpringMvc执行流程

SpingMvc会围绕DispatcerServlet执行(三大步)1.用户发起请求,会请求到DispatcerServlet;2.DisPatcerServlet会请求HandlerMapping(映射器)找到对应的映射器;3.拿到映射器返回DispatcerServlet;4.DispatcerServlet会去调用HandlerAdapter(适配器)去找对应的controller;5.controller会去调用业务层;6.controller会返回一个ModelAndV.

2021-11-11 09:30:25 232

空空如也

空空如也

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

TA关注的人

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