自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 微服务阿里巴巴:服务网关 Spring Cloud Gateway 熔断降级

概念:服务降级一般是指在服务器压力剧增的时候,根据实际业务使用情况以及流量,对一些服务和页面有策略的不处理或者用一种简单的方式进行处理,从而释放服务器资源的资源以保证核心业务的正常高效运行。原因: 服务器的资源是有限的,而请求是无限的。在用户使用即并发高峰期,会影响整体服务的性能,严重的话会导致宕机,以至于某些重要服务不可用。故高峰期为了保证核心功能服务的可用性,就需要对某些服务降级处理。可以理解为舍小保大。

2023-11-03 11:18:27 220

原创 微服务阿里巴巴:Spring Cloud Alibaba 之 Nacos 配置中心

是你的服务注册的配置,你的服务在哪个空间,在哪个分组,这里看到将group设置为LiuLaoLao,空间没有配置,就是默认的public空间。还有一个好处,在开发时,能保证多人开发同一服务能保持配置一致,也可使用非公共配置, 保证自己起的服务部分配置不同。:直接去修改配置中心的配置,配置修改后,配置中心将会通知服务,来获取最新的配置。:是获取配置的配置,即配置在哪个空间,哪个分组的配置,然后系统会自动进行匹配。配置获取后,生效的配置 = 本地配置+获取的配置。当一个服务A,拥有三个实例,而修改配置以后。

2023-10-26 14:14:51 218

原创 表单设计。。。。。

java项目自定义字段表单处理方式。

2023-08-12 22:16:19 116

原创 三范式建表

数据库设计

2023-05-06 16:54:42 183 1

原创 log日志等级与配置

总共有7等级:OFF 、FATAL 、ERROR、WARN、INFO、DEBUG、TRACE 、ALL1.OFF 为最高等级 关闭了日志信息2.FATAL 为可能导致应用中止的严重事件错误3.ERROR 为严重错误 主要是程序的错误4.WARN 为一般警告,比如session丢失5.INFO 为一般要显示的信息,比如登录登出6.DEBUG 为程序的调试信息7.TRACE 为比DEBUG更细粒度的事件信息8.ALL 为最低等级,将打开所有级别的日志输出的规则是,大于等于当前设置的日志等级的才

2022-07-04 16:24:18 7311

原创 springboot的事务处理,ApplicationEvent的应用

文章目录1.ApplicationEvent的应用2.ApplicationEvent的使用2.1基础ApplicationEvent2.2监听器的使用1.ApplicationEvent的应用在springboot项目中,ApplicationEvent的应用会和切面AOP相结合,做一些本身功能以外的事务处理,例如数据同步,在自己系统中,新建只需要将自己的数据插入数据库,而同步数据到另一个系统中就是额外的事务,还能做一些操作验证的事务。最关键是,当一个事件发布(注册),可以被多个监听器监听,执行事务逻

2022-05-25 19:56:48 1390

原创 springboot启动类分离,可以扫描其他包的类注入容器

文章目录1.springboot启动扫描包机制2.如何扫描到其他包2.1手动增加扫描包2.2扫描包配置类2.3在需要扫描的包配置3.分离启动类扫描包机制3.1将启动类单独作为一个包3.2启动配置3.3 注意路径3.4 这样子做的好处1.springboot启动扫描包机制从启动类所在包开始,扫描当前包及其子级包下的所有文件。也就是说你的启动类在哪一层决定着你扫描的类文件多少。这个可以从注解SpringBootApplication中的默认值看到:其中圈出部分是自己手动指定扫描包路径,如果没有,按照启动

2022-05-19 16:09:35 2792

原创 树形数据结构构造工具

树形数据结构的用途树形数据结构需要在

2022-04-16 17:25:02 826

原创 字符串中空格的坑

空格的类型编码32的空格,就是我正常输入的中英文空格,数据库里的空格一般也是这个。网页上的NBSP空格,这是编码格式为-62,-96,感觉应该是和网页上的空格有关,也可能和编码方式有关。错误记录:在查询数据库时候,你会发现两个字符串一模一样,但是匹配不到,自然你也就查询不出数据在字符串使用NBSP空格时候,查询结果用sql语句查询也是一样的结果,正常空格的查询结果:就能够查询出来问题解决一开始以为是匹配的语句也错了,但是发现并没有错,就把客户发来的数据拿去数据查询,一查吓一跳

2022-03-29 17:47:45 1123

原创 python项目前期准备

安装python怎么安装自行百度,检测一下自己电脑有没有python环境输入:python结果:工具安装一个前后端项目需要的安装的工具virtualenv的安装pip install virtualenv随后执行: virtualenv pyweb #pyweb 为虚拟环境目录名,目录名自定义.可以为项目的运行提供稳定的环境Django的安装pip install django成功后输入,查看Django的版本信息>>> import dj

2022-03-15 19:35:13 1197

原创 spring boot自定义错误返回

封装的必要性在日常的开发中,需要将所以反馈给前端,让客户知道错误信息是什么,例如密码错误,用户不存在等等信息,如果使用系统的报错信息返回给前端,要是数据库出错的话,那就一串sql语句给前端了,所以封装错误信息返回还是很有必要的。封装过程错误信息类,一般就两个属性,code和message,可能还会有出错时间errorTime,需要的可以添加上去。public class ErrorMessage { private int code; private String message

2022-02-20 19:31:20 1064

原创 springboot项目统一后端数据返回格式

spring boot自带的ResponseEntityResponseEntity是springboot自带的返回格式封装类,使用起来也简单,和我们平时自己封装的差不多,大概的使用如下:自己封装类和spring boot自带的类似,返回的无非就是data,code,message,其中data是个泛型,可以存放各种数据类型。封装类如下:Datapublic class ResultData<T> { /** 结果状态 ,具体状态码参见ResultData.java*

2022-02-20 15:18:04 1054

原创 knife4j-swagger封装配置,注解使用knife4j

knife4j-swagger相对于swagger-ui更加的美观,相信大家看到这个界面也就更加肯定我的想法了,比原生的swagger厉害的多了,出了不能进行文档上传接口测试。大家可以去官网进行学习哈。knife4j的使用maven引入 <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-

2022-02-16 21:11:39 2843 6

原创 在静态方法中使用@Autowired注入的类

常见错误使用方式变成静态的在静态方法里直接使用:如图错误:直接会为空,借用一段网上不错的解释:针对static静态成员,我们有一些最基本的常识:静态变量(成员)它是属于类的,而非属于实例对象的属性;同样的静态方法也是属于类的,普通方法(实例方法)才属于对象。而Spring容器管理的都是实例对象,包括它的@Autowired依赖注入的均是容器内的对象实例,所以对于static成员是不能直接使用@Autowired注入的。...

2022-02-09 15:03:47 3624

原创 springboot的切面应用(注解Aspect )

spring boot 拦截的方式过滤器filter:可以获取http、http请求和响应,但无法获取与spring框架相关的信息,如哪个control处理,哪个方法处理,有哪些参数,这些都是无法获取的。主要用于内容上的过滤,敏感字替换成*等,也可用于非登入状态的非法请求过滤。拦截器interceptor:除了获取http、http请求和响应对象,还可以获取请求的类名、方法名,但拦截器无法获取请求参数的值,从DispatcherServlet类源码分析。主要用于对公共的一些拦截获取,例如请求

2022-01-24 11:55:04 5528

原创 java生成二维码

1,该文中的部分代码来自gitee上的开源项目,我只是整理了一下,使其更加规范且通用。1.1首先引入对应的工具包。 <dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.3.3</version> </dependency&g

2022-01-17 21:37:26 14357 10

原创 常用的json处理工具类

json工具的使用说明在日常的开发中,经常会对json字符串进行处理,最常见的操作为序列化和反序列化,而当后端的开发使用的是spring boot框架时,在前后端进行交互时,是会自动的序列化和反序列化,但当我们遇到自己需要处理的json字符串时,json工具必不可少的。1.已有工具,在广大开发中常用的时alibaba的fastJson和hutool工具包里的json处理工具类,进本身一系列的转化都不需要我们写什么处理代码,但是问题在于,spring boot自身使用的序列化是jackson,与前两者有一

2022-01-17 21:21:30 1850

原创 开发小技巧

开发小技巧在进行返回值处理时,经常需要以下代码逻辑。如果为空,需要new一个对象来返回,避免空指针的错误。if (CollectionUtils.isEmpty(list)){ return new ArrayList<>(); }//换成下面的写法 return Optional.ofNullable(list).orElse(new ArrayList<>());流的打开和关闭,经常使用到try{}catch{}finia

2021-11-20 15:23:23 378

原创 集合的坑啦啦啦

集合的坑在集合的操作里,当list进行转map操作时候,list里保存的是对象,可能会遇到的错误。1、key重复,这是最普遍的错误,如下示例:List<User> userList = new ArrayList<>(); userList.add(new User().setId(1234L)); userList.add(new User().setId(1234L)); Map<Long, User> userMap = userList.str

2021-10-25 11:09:40 197

原创 注解FeignClient的规范使用

首先是对FeignClient里的常用属性 1. contextId ,当有多个服务调用方法不想写在一个接口里,就要使用到 2. name:指定FeignClient的名称,如果项目使用了Ribbon,name属性会作为微服务的名称,用于服务发现 3. url: url一般用于调试,可以手动指定@FeignClient调用的地址 4. fallback: 定义容错的处理类,当调用远程接口失败或超时时,会调用对应接口的容错逻辑,fallback指定的类必须实现 @Feign

2021-09-30 11:42:57 6833

原创 两个不同对象的list要取交集(list转map的应用)

前提说明当前有两个实体类,LinePort为航线港口中间表实体,存有到港时间,出港时间,航线id和港口id,Port为港口信息表,现在前端需要将两个查询到的实体信息list,List和List通过portId来进行对比是否相同,进行属性上的赋值。常规想法将两个list进行foreach循环操作,以其中的一个list为基础,进行对比。缺点就是,非常的影响系统的性能,如果有双循环是大忌。for (LinePort linePort:linePortList){ for(Port port :

2021-09-26 12:07:37 1516

原创 集合的交集和差集优化(代码层面)

正常的集合取交集操作如下代码示例:public class Test { public static void main(String[] args) { //自定义的对象,Dept部门实体类 List<Dept> deptList1 = new ArrayList<Dept>(); deptList1.add(new Dept(190,"销售部","learn")); deptList1.add(ne

2021-09-22 10:27:04 179

原创 对象判定

对象是否为空的判定在大学里,在做一些对象判定,经常使用object == null这样的语句,从逻辑上是没有错的,但是在工作中这是不允许的。对象判定行业里经常使用Objects.isNull()来进行判定,或者是Objects.noNull()。集合对象判定使用CollectionUtils.isNotEmpty()来判断。道理和“”.equal()与string.equal("");是一样的...

2021-09-22 10:05:10 142

原创 JavaScript使用axios进行多条数据打包发送

使用JavaScript来实现多条数据的打包发送平时在开发的过程中,大多数时候是进行一条数据的打包发送,如用Json的方式打包{"name":"刘芳","age":"6","sex":"男"}利用post请求或者get请求等方式来进行打包发送,单如果遇到多条数据[{"name":"刘芳","age":"6","sex":"男"},{"name":"刘芳1","age":"9","sex":"女"}]就需要一些处理了。特别是后端的接收过程。前端处理前端的处理和打包一个数据发送没什么不一样的

2021-08-12 16:29:05 467

原创 使用RXTX串口通信来用java进行控制USB控制塔灯

使用java进行控制USB控制塔灯准备工作:USB控制塔灯连接,串口程序安装,RXTX架包配置,java程序实现(1)塔灯连接:一般笔记本电脑有三个串口,分别是COM1,COM2,COM3,插入以后可以在电脑的设备管理查看相关的信息,配置相关信息,下图为我所用的产品指令表。波特率,数据位,停止位,校验位都可以在电脑上配置,不会的可以去百度。(2)串口程序安装这个基本上你购买了塔灯就能找商家拿到,就和平常安装一个软件一样,注意是将串口接收到的消息来控制串口连接的设备。(3)RXTX架包的配置R

2021-08-12 14:11:20 819

空空如也

空空如也

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

TA关注的人

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