- 博客(53)
- 收藏
- 关注
原创 【JavaSe】反射入参为null,noSuchMethodName注意事项
实用反射 入参,传值为null。 注意对应方法的形参类型应设置为Object
2021-07-15 15:09:42
274
原创 【Gateway】网关Gateway全局过滤器和局部过滤器的实现
1. 全局过滤器:无差别拦截所有经过网关 的请求实现GlobalFilter接口,可以通过@Order注解或者Ordered接口指定顺序(越小优先级越高)@Component//@Order(1)//优先级public class MyGatewayGlobalFilter implements GlobalFilter, Ordered { @Override public Mono<Void> filter(ServerWebExchange exchange,
2021-04-27 20:49:46
2862
3
原创 【SpringGateway】java.lang.ClassCastException: org.springframework.core.io.buffer.DefaultDataBufferFac
解决方法:排除servlet 依赖gateway:webflux底层为 netty[3f0264ef] There was an unexpected error (type=Internal Server Error, status=500).org.springframework.core.io.buffer.DefaultDataBufferFactory cannot be cast to org.springframework.core.io.buffer.NettyDataBufferFa
2021-04-27 20:31:33
1107
2
原创 【elasticsearch】ik分词器安装
ik github地址:https://github.com/medcl/elasticsearch-analysis-ik/releases# 进入挂载的插件目录 /mydata/elasticsearch/plugins#(es已挂载到主机的 /mydata/elasticsearch/plugins 目录)cd /mydata/elasticsearch/plugins# 安装 wget 下载工具 yum install -y wget# 下载对应版本的 IK 分词器wget htt
2021-04-18 17:34:19
194
原创 【mybatis】 MybatisPlus 代码生成
CodeGeneratorpackage com.atlin.guli.statistics.genetator;import com.baomidou.mybatisplus.annotation.DbType;import com.baomidou.mybatisplus.annotation.FieldFill;import com.baomidou.mybatisplus.annotation.IdType;import com.baomidou.mybatisplus.generato
2021-03-24 23:45:12
197
原创 【SpringCloud】Spring Cloud Gateway 网关全局异常处理
之前前端直接访问后端微服务的Controller接口,如果抛出异常,会自动被编写的全局异常处理器(@ControllerAdvice )捕获返回一个正常的响应,响应的R对象中描述错误信息@Slf4j//lombok的注解,springboot项目底层默认引入slf4j日志门面+logback日志框架,动态提供@RestControllerAdvice//@ControllerAdvice//返回值不会处理为jsonpublic class GlobalExceptionHandler {...
2021-03-23 09:03:42
5538
原创 【SpirngCloud】ORS跨域问题,配置以及@CrossOrigin
在Gateway配置跨域问题解决方案: /** * 允许所有请求跨域访问 * 跨域配置:原理就是对响应报文添加一个响应头,允许跨域访问 * 实现方案: * 1、在springmvc的controller上添加注解,@CrossOrigin * 2、也可以通过gateway网关提供的CorsWebFilter全局过滤器处理响应报文 * * @return */ @Bean public CorsWebFilter
2021-03-23 08:53:21
215
原创 【MyBatis】IDEA+Maven+Springboot:invalid bound statement (not found) 解决办法
参考链接:https://blog.youkuaiyun.com/qixinbruce/article/details/82794774#mybatis-plus #扫描xml mapper-locations: classpath:com/atlin/guli/service/edu/mapper/xml/*.xml <build> <!-- 项目打包时会将java目录中的*.xml文件也进行打包 --> <resources>
2021-03-12 20:01:04
194
原创 【SpringCloud-Feign】超时策略
springcloud openfeign默认使用Retryer.NEVER 不重试解决方案edu中配置ribbon的超时时间(因为OpenFeing的底层即是对ribbon的封装)#超时配置#值小了容易失败,值大了可能会导致服务雪崩ribbon: ConnectTimeout: 10000 #连接建立的超时时长,默认1秒 ReadTimeout: 10000 #处理请求的超时时间,默认为1秒重置机制:2.0.x之前feign远程访问如果失败,默认会重试若干次,如果有一次成功则返回成
2021-03-09 19:54:03
310
原创 【SpringCloud-Feign】轮询策略配置
#给指定的service-oss微服务访问指定负载均衡策略,其他远程访问依然轮询#service-xxx: # 调用的提供者的名称 # ribbon: #NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule ```
2021-03-09 19:31:48
2181
原创 【Seata】
AT模式(Automatic (Branch) Transaction Mode)Transaction Coordinator (TC):事务协调器,维护全局事务的运行状态,负责协调并决定全局事务的提交或回滚。Transaction Manager(TM): 控制全局事务的边界,负责开启一个全局事务,并最终发起全局提交或全局回滚的决议。Resource Manager (RM):资源管理器,负责本地事务的注册,本地事务状态的汇报(投票),并且负责本地事务的提交和回滚。XID:一个全局事务的唯.
2021-02-25 17:14:30
114
原创 【Mark】事务ACID四大特性
什么是事务事务提供一种“要么什么都不做,要么做全套(All or Nothing)”机制。事务ACID四大特性A:原子性(Atomicity)一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。C:一致性(Consistency)事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态。如果事务成功地完成,那么系统中所有
2021-02-25 15:27:03
150
原创 【sentinel--Exception】sentinel持久化配置nacos,BeanCreationException
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ds1-sentinel-nacos-datasource': FactoryBean threw exception on object creation; nested exception is java.lang.NullPointerException at org.springframework.beans.factory
2021-02-25 15:10:21
1237
3
原创 【SpringBoot】整合spring-data-jpa
参考文章:SpringBoot整合SpringData与JPAspring boot 中使用 jpa以及jpa介绍
2021-02-21 17:56:38
102
原创 【SpringBoot:MybatisGenerator】SpringBoot 整合逆向工程Start
1. pom文件加入依赖和插件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org
2021-02-21 17:52:01
119
原创 【redis】缓存雪崩,缓存穿透,缓存失效
缓存雪崩:大量缓存数据同时间失效,导致用户直接发起大量请求到数据库,产生瓶颈。1、生成随机失效的缓存时间数据;2、生成不失效的缓存数据;3、定时任务更新缓存数据;缓存穿透用户请求数据,例如ID为负数,不存在缓存里,也不存在数据库里,会造成缓存穿透。1、无意义数据放入缓存,下一次相同请求就会命中缓存;2、IP过滤;3、参数校验;缓存失效由于缓存热点键到时失效导致用户请求直接访问数据库1、用久缓存;2、分布式锁a.单体应用—>互斥锁。参考文章:缓存穿透、缓存击穿、缓存雪
2021-02-21 10:58:17
169
原创 【Spring:注解】@Autowired 与@Resource的区别(详细)
https://blog.youkuaiyun.com/weixin_40423597/article/details/80643990@Autowired//默认按type注入@Qualifier(“cusInfoService”)//一般作为@Autowired()的修饰用@Resource(name=“cusInfoService”)//默认按name注入,可以通过name和type属性进行选择性注入...
2021-02-21 00:21:57
128
转载 【SpringBoot】spring注解之@Import注解的三种使用方式
转载:https://www.cnblogs.com/yichunguo/p/12122598.html
2021-02-19 19:35:11
228
原创 【JavaSE】常用API01
1.API1.1 API概述【理解】什么是API API (Application Programming Interface) :应用程序编程接口java中的API 指的就是 JDK 中提供的各种功能的 Java类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可,我们可以通过帮助文档来学习这些API如何使用。1.2 如何使用API帮助文档【应用】打开帮助文档[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
2021-02-10 13:37:02
85
原创 【SpringBoot】将配置文件中的内容注入到JavaBean时,properties配置文件中文乱码问题
解决方法:在Setting==>>Editor==>>File Encodings设置编码格式为UTF-8
2021-02-10 13:22:52
270
原创 【SpringBoot】SpringBoot热部署的配置
SpringBoot 热部署可以提高开发者的开发效率,无需手动重启Spring Boot 应用。Spring-boot-devtools 可以实现类和页面的热部署。第一步:在项目的配置文件中引入依赖信息<!--devtools热部署--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifac
2021-02-09 21:42:17
137
原创 【MQ--RabbitMQ-lException】ShutdownSignalException
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol methodCause:由于没有producer导致的异常
2021-02-08 18:33:41
295
原创 【MQ--RabbitMQ】RabbitMQ 模式 Tutorials
RabbitMQ 官方地址:http://www.rabbitmq.com/RabbitMQ 的基础架构图Broker:接收和分发消息的应用,RabbitMQ Server 就是Message BrokerVirtual host:出于多租户和安全因素设计的,把AMQP 的基本组件划分到一个虚拟的分组中,类似于网络中的namespace 概念。当多个不同的用户使用同一个RabbitMQserver 提供的服务时, 可以划分出多个vhost, 每个用户在自己的vhost 创建exchange/que
2021-02-08 00:34:55
321
原创 【MQ】MQ--消息中间件
消息中间件MQ 全称为Message Queue,是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信。1 MQ 三大特点:本身是一个服务,生产者和消费者都需要连接该服务底层采用队列(Queue)的数据结构实现先进先出结构是一个Pub、Sub 模型(发布、订阅模型)2 优点在项目中,可将一些无需即时返回且耗时的操作提取出来,进行异步处理,而这种异步处理的方式大大的节省了服务器的请求响应时间,从而提高了系统的吞吐量3 作用应用程序解耦合,提升容错性和可维护性。
2021-02-07 22:47:33
683
原创 【Git】常用命令
Git:常用命令命令Valuegit -version查看git版本号git init初始化本地仓git config -global user.name " 用户名"设置用户名git config -global user.eaml " 邮箱"设置用户签名git status查看本地仓库状态git add 文件名添加到 暂存区(stage)git commit -m"日志信息" 文件名提交到本地仓(Local Repository)
2021-02-03 20:56:08
93
原创 【Git】分布式的版本控制工具(一)
Git:分布式的版本控制工具(一)一 GIT简介是一种扁平化,去中心化的分布式版本管理工具(Distributed Version Control Systems),简称:DVCS。二 GIT 优势GIT 保存了分布式管理系统的DVCS 服务端,便于团队各个成员通过该服务器进行项目交互,相较于SVN的优势是:1. 即使DVCS服务端挂掉,在开发者各自电脑里面有GIT的版本库,开发者之间也是可以直接进行项目交互。2. 可以避免中心服务器的资料丢掉之后,无法找回的情况。三 Git 工作机制GIT
2021-02-03 20:25:44
191
原创 【Integer类型转换为String类型】toString()和String.valueOf()区别
通过源码,可以看到区别在于 当转换的obj==null的时候toString() 会报空指针异常(NullPointerException)String.valueOf()则会返回 “null” 字符串(return (obj == null) ? "null" : obj.toString();)源码:toString() /** * Returns a {@code String} object representing this * {@code Integ
2021-01-28 19:09:03
418
原创 【正则表达式】常用的正则表达式(regular expression)
整数或者小数:1+.{0,1}[0-9]{0,2}$只能输入数字:”2KaTeX parse error: Undefined control sequence: \d at position 15: ”只能输入n位的数字:”^\̲d̲{n}”只能输入至少n位的数字:”^\d{n,}KaTeX parse error: Undefined control sequence: \d at position 17: …只能输入m~n位的数字:”^\̲d̲{m,n}”只能输入零和非零开头的数字:”^(0
2021-01-27 18:12:27
300
原创 【vue】使用函数resetFields()重置规则提示
绑定对应的传入需要重置的表格(formName)名字即可,例: <el-button @click="dialogFormVisible = false,resetFormRules('dataAddForm')">取消</el-button>取消的时候,绑定单击事件,把表格名字作为参数 传入 resetFormRules 方法 methods:{ resetFormRules(formName) { this.$refs[formName].reset
2021-01-27 17:50:28
1071
原创 【Exception】NoSuchPropertyException:java.lang.Float.length
org.apache.ibatis.ognl.NoSuchPropertyException:java.lang.Float.length错误原因:sql语句中动态标签 <if test="price!=null and price.length>0">price=#{price},</if>解决:删除 sql语句关于Float类型的length判断=> and price.length>0Caused by: org.apache.ibatis.buil
2021-01-27 17:37:53
2012
1
原创 【Exception】java.lang.NullPointerException,springmvc中使用zookeeper,出现的NullPointerException
使用zookeeper,出现的NullPointerException原因==>>使用反射(invoke)调用方法,为nulljava.lang.NullPointerException at com.atlin.controller.TravelGroupController.add(TravelGroupController.java:27) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.
2021-01-27 17:28:57
463
原创 【WARNING】Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!解决方法:在父项目的 pom.xml 中添加如下配置<propert
2021-01-27 17:21:06
300
原创 【Exception】java.lang.IllegalArgumentException: Mapped Statements collection already contains
controller(consumer):com.alibaba.dubbo.rpc.RpcException: No provider available from registry 127.0.0.1:2181 for service com.atlin.service.TravelItemService on consumer 10.10.4.106 use dubbo version 2.6.0, may be providers disabled or not registered ?se.
2021-01-27 16:51:09
331
原创 【JavaSE】练习:比较器Comaprable和compare在TreeSet集合中的几种使用方式
比较器Comaprable和compare在TreeSet集合中的几种使用方式方式一学生类Student implements Comparable ,override compareTo();实现按照age -> score -> name,** 方式二**有时候实体类已写好了, 要存储到TreeSet中,这时候不方便修改实体类, 让其实现 Comparable,按照 score-> age -> name 从小到大顺序,怎么办?answer:可以创建一个匿名
2020-11-22 00:02:08
187
原创 【JavaSE】练习题:银行卡练习储蓄卡与信用卡(可透支和设置额度)
题目要求(1)声明一个银行储蓄卡类,包含属性:账户id,余额balance包含取款 public void withdraw(double money)存款 pubic void save(double money)获取账户信息: public String getInfo() 可以返回账户和余额(2) 声明一个银行信用卡类,继承储蓄卡类增加属性:可透支额度,最多可透支金额重写存款 public void withdraw(double money),可透支存款 pubic void
2020-11-15 21:55:26
2315
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人