自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ClassPathResource读取资源文件

resource.getFile()读取文件由于系统差异,在linux中使用时无法读取;推荐使用 resource.getInputStream()

2023-07-04 16:39:05 521

原创 Java开发问题整理

记录常见问题

2022-07-13 13:41:08 306 1

原创 webstorm 在Vue项目下不识别@路径问题

解决方案:在WebStorm中的WebPack添加当前项目模块中的webpack.config.js,具体如下图所示:

2021-10-13 16:12:17 941

原创 JAVA问题学习(二)- JAVA锁

JAVA锁1、公平和非公平锁(1)是什么公平锁:是指多个线程按照申请锁的顺序来获取锁,先来后到非公平锁:是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁。在高并发下,有可能会造成优先级反转或者饥饿现象(2)两者区别并发包中ReentrantLock的创建可以指定构造函数的boolean类型来得到公平或非公平锁,默认非公平suo。公平锁:API原文:Threads acquire a fair lock in the order in

2021-06-15 15:59:56 108

原创 Synchronized与Lock(周阳视频学习记录)

1、synchronized与lock的区别1.1 原始组成synchronized是属于JVM层面的关键字Lock是具体类(java)

2021-06-09 13:57:26 116

原创 Java问题学习(一)- JUC

JUC1、volatile1.1、谈谈对volatile的理解(1)volatile是java虚拟机提供的轻量级的同步机制保证可见性 不保证原子性 禁止指令重排(2)谈谈JMMJMM(Java内存模型Java Memory Model,简称JMM)本身是一种抽象的概念并不真实存在,它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素) 的访问方式。JMM关于同步的规定:线程解锁前,必须把共享变量的值刷新回主内存 线程加锁前

2021-06-01 14:45:05 42

原创 SpringCloud(H版&alibaba)框架开发教程学习笔记五-Stream、Sleuth

1、Stream 消息驱动1.1 概述简述:屏蔽底层消息中间件的差异,降低切换成本,统一消息的编程模型。官网:https://spring.io/projects/spring-cloud-stream#overview什么是Spring-Cloud-Stream?官方定义Spring Cloud Stream是一个构建消息驱动微服务的框架。应用程序通过inputs或outputs来与Spring Cloud Stream中binder对象交互。通过配置binding(绑定),而S

2021-05-22 10:24:43 137

原创 SpringCloud(H版&alibaba)框架开发教程学习笔记三-OpenFeign、Hystrix

一、OpenFeign(一)测试OpenFeign新建子项目cloud-consumer-feign-order801、pom文件<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifact

2021-05-21 20:32:50 182

原创 SpringCloud(H版&alibaba)框架开发教程学习笔记四——GateWay、Config、Bus

1、Gateway1.1 概述简介Gateway是在Spring生态系统之上构建的API网关服务,基于Spring 5、Spring Boot 2和Project Reactor等技术。Gateway旨在提供一种简单而有效的方式来对API进行路由,以及提供一些强大的过滤功能,例如:熔断、限流、重试等SpringCloud Gateway作为SpringCloud的生态系统中的网关,目标是替代Zuul,在SpringCloud 2.0以上版本中,没有对新版本的Zuul 2.0以上最新高性能版本进

2021-05-20 20:04:26 181

原创 Netty深入学习(二)

1、Netty1.1原生NIO存在的问题1)NIO的类库和API繁杂,使用麻烦;需要熟练掌握Selector、ServerSocketChannel、SocketChannel、ByteBuffer等。2)需求具备其他的额外技能:要熟悉Java多线程编程,因为NIO编程涉及到Reactor模式,你必须对多线程和网络编程非常熟悉,才能编写出高质量的NIO程序。3)开发工作量和难度非常大:如客户端面临断连重连、网络闪断、半包读写、失败缓存、网络拥塞和异常流的处理4)JDK NIO的Bug.

2021-05-05 15:19:22 187 1

原创 设计模式(二)——建造者、装饰器、模板设计、适配器、策略、代理、原型、组合、观察者模式

1、建造者模式产品,省略get、set方法class Computer { private String cpu; private String gpu; private String memory; private String hd;}建造者:当需要扩展时,只需继承ComputerBuilder 接口,并实现相应方法。interface ComputerBuilder { void setCpu(); void setGpu();

2021-05-01 15:36:53 215

原创 Netty深入学习(一)——NIO

1、Netty介绍Netty原是由JBOSS提供的一个Java开源框架,现为Github的独立项目。Netty是一个异步的、基于事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络IO程序。主要针对在TCP协议下,面向Client端的高并发应用,或Peer-to-Peer场景下的大量数据持续传输应用。本质上Netty是一个NIO框架,深入学习Netty首先需要学习NIO。2、I/O模型2.1 I/O模型基本说明1) 简单理解:就是用什么样的通道进行数据的发送和接收2)Java共支持

2021-04-24 23:06:38 287

原创 设计模式(一)——工厂模式、原型模式

1、简单工厂// 抽象产品interface Food { void eat();}// 具体产品class Hamburger implements Food { @Override public void eat() { System.out.println("吃汉堡!"); }}public class Test { public static void main(String[] args) { Food f

2021-04-22 13:41:55 267

原创 设计模式-设计原则

1、单一职责原则每个方法、类、框架都只负责一件事情。/** * 反例: * 统计一个文本文件中,有多少字符,所有功能在一个方法里 */public class Test { public static void main(String[] args) throws Exception { Reader in = new FileReader("d:\\a.txt"); BufferedReader br = new BufferedReader(

2021-04-20 14:30:51 63

原创 SpringCloud(H版&alibaba)框架开发教程学习笔记二-Eureka、Zookeeper、Consul

一、Eureka(一)搭建单机版Eureka1、建立子模块<artifactId>cloud-eureka-server7001</artifactId>2、pom文件<dependencies> <!-- eureka-server --> <dependency> <groupId>org.springframework.cloud</groupI

2021-04-13 11:05:36 128

原创 SpringCloud(H版&alibaba)框架开发教程学习笔记一环境搭建

一、版本选择SpringBoot:2.2.5.RELEASESpringCloud:SpringBoot与SpringCloud版本依赖常用组件pom <dependencies> <!-- spring boot 2.2.5 --> <dependency> <groupId>org.springframework.boot</groupId> .

2021-03-29 09:38:02 162

原创 关于手机微信端内嵌浏览器中scrollTop的奇葩问题

关于手机微信端内嵌浏览器中scrollTop的奇葩问题记录一次在微信端打开第三方页面的奇葩问题。情况说明:项目中下拉数据量太大,故实现了懒加载判断是否到底部,方式为scrollTop + height >= scrollHeight,其中大于等于表示滚动到底部需要加载下一页,否则不用加载。在其他浏览器中此方式能正常使用,但在手机微信端使用时会存在只加载一次的现象。现象产生原因:通过排查发现scrollTop 在微信端取得值不是一个int型,而是一个double型,在临界值时(即接近scr

2021-03-22 16:01:52 509 1

原创 SpringCloud开启熔断导致TXLCN回滚失效

本文主要记录项目中所遇的问题,以及查询资料得到的解决方案。项目环境:spring-boot:2.2.5.RELEASEspring-cloud:Hoxton.SR3txlcn:5.0.2.RELEASE问题描述:使用feign调用远程方法并开启熔断,熔断开启后txlcn的回滚失效,发起方A通过feign调用参与方B(删除操作)、C(添加操作),其中B发生异常能正常回滚,C无异常直接正常执行不参与回滚事务发起方有关配置如下:spring: application: n

2020-09-12 21:39:15 831 1

原创 IDEA创建三个模块以上子模块无法识别

IDEA创建三个模块以上子模块无法识别的问题版本信息:IDEA2020.1,spring boot 2.2.5在IDEA右侧的maven管理窗口重新加载一次在弹出的对话框中,选择未识别的子模块的pom.xml文件,点击确认即可。

2020-08-13 19:16:59 1835 3

转载 Maven plugin中的lifecycle、phase、goal、mojo概念及作用的理解

lifecycle生命周期,这是maven最高级别的的控制单元,它是一系列的phase组成,也就是说,一个生命周期,就是一个大任务的总称,不管它里面分成多少个子任务,反正就是运行一个lifecycle,就是交待了一个任务,运行完后,就得到了一个结果,中间的过程,是phase完成的,自己可以定义自己的lifecycle,包含自己想要的phase常见的lifecycle有 | clean | ...

2019-07-16 09:38:15 408

原创 学习记录(二)——ssm项目的搭建与简单测试

本文主要实现了ssm的maven项目的搭建,以及通过jetty运行项目,并通过jmeter进行测试。

2018-06-25 11:29:23 469

原创 学习记录(一)——在eclipse中添加maven及新建maven项目

1、下载并配置maven1.1 下载maven点击下载maven,下载所需要的版本。本文使用的版本是3.5.0,当然也可以使用目前最新版3.5.3。1.2 配置将下载好的maven进行解压,解压到自己想要的位置(本文为D:\maven)。解压后打开环境变量对话框,添加MAVEN_HOME或M2_HOME到系统变量,其值为"D:\maven"接着在PATH系统变量末尾添加"%MAVEN_HOME%\...

2018-05-29 14:51:26 259

空空如也

空空如也

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

TA关注的人

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