
SpringBoot
文章平均质量分 69
病入高黄了
这个作者很懒,什么都没留下…
展开
-
Redis的杂七杂八
一、SDS1.空间预分配空间分配用于优化SDS的字符串增长操作:当SDS的API对一个SDS进行修改并且需要对SDS进行空间拓展的时候,程序不仅会为SDS分配所必须的空间还会有额外的未使用的空间,额外未使用空间大小遵循如下规则:如果对SDS进行修改之后,SDS的长度(len属性值)小于1MB,则程序分配和len属性同样大小的未使用空间,此时SDS的len属性将和free属性相同。例:进行修改后SDS的len将变成13字节,那么程序也会分配13字节的未使用空间,SDS的buf数组长度将变成13(len原创 2022-06-06 23:52:26 · 178 阅读 · 0 评论 -
MySQL报Column 时间戳字段 cannot be null
报错信息大致如下java.sql.SQLIntegrityConstraintViolationException: Column ‘xxx’ cannot be null;其中xxx字段为个timestamp(6)我们自己的生产上是正常的,客户独立部署报了上面的错误。 执行insert语句时违反完整性约束。查看代码近期没有被修改过,最终锁定到数据库配置这里通过对比我们和客户的配置发现执行下面的语句时SHOW GLOBAL VARIABLES LIKE '%explicit_default原创 2022-02-15 10:41:52 · 2221 阅读 · 0 评论 -
Spring事务失效的总结
事务失效1. final/static修饰方法Spring事务使用AOP,通过CGLIB或JDK动态代理生成代理类,使用final/static修饰方法会导致无法动态代理,继而导致事务失效。2. 使用非public修饰符修饰事务方法定义了错误的访问权限(非public修饰)就会使事务失效。protected TransactionAttribute computeTransactionAttribute(Method method, @Nullable Class<?> targetC原创 2022-02-14 14:52:12 · 947 阅读 · 3 评论 -
SpringBoot整合JPA做查询时报的一个错com.fasterxml.jackson.databind.exc.InvalidDefinitionException
ERROR 7508 — [nio-8088-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMess.原创 2020-10-04 22:45:46 · 297 阅读 · 0 评论 -
SpringCloud学习笔记16——高级篇之SpringCloud Alibaba Sentinel实现熔断与限流
8.SentinelResource配置①按资源名称限流(1)新建controllerpackage com.hry.springcloud.alibaba.controller;import com.alibaba.csp.sentinel.annotation.SentinelResource;import com.alibaba.csp.sentinel.slots.block.BlockException;import com.hry.springcloud.entities.Com原创 2020-07-12 22:46:16 · 374 阅读 · 0 评论 -
SpringCloud学习笔记15——高级篇之SpringCloud Alibaba Sentinel实现熔断与限流
四.Sentinel1.知识点官网主要特性2.下载点击这里下载运行进入目录,cmdjava -jar sentinel-dashboard-1.7.2.jar用户和密码都是sentinel3.构建项目(8401)①创建module②编写pom文件 <dependencies> <!-- nacos --> <dependency> <groupId>com.ali原创 2020-07-10 10:56:50 · 355 阅读 · 0 评论 -
SpringCloud学习笔记14——高级篇之SpringCloud Alibaba Nacos服务注册和配置中心
高级篇一.Nacos1.知识点nacos = eureka + config + bus①下载点击这里,下载1.2.1版本②运行下载后解压,进入bin目录,打开cmdhttp://localhost:8848/nacos/用户名和密码都是nacos2.构建项目(provider9001)①创建module②编写pom文件<dependencies> <!-- nacos --> <dependency>原创 2020-07-08 21:41:18 · 358 阅读 · 0 评论 -
SpringCloud学习笔记13——初级篇之分布式请求链路跟踪
十一.Sleuth1.知识点2.Zipkin①下载jar包SpringCloud F版以上不需要自行构建Zipkin Server了,只需要调用jar包即可。点击这里下载jar包②运行java -jar zipkin-server-2.21.5-exec.jar访问9411③构建(1)修改老8001pom文件中引入坐标<!--sleuth + zipkin--> <dependency> <gro原创 2020-07-06 17:38:51 · 169 阅读 · 0 评论 -
SpringCloud学习笔记12——初级篇之消息驱动
十.Stream1.知识点INPUT -> 消费者OUTPUT -> 生产者Stream中的消息通信方式遵循了发布-订阅模式2.构建项目(8801消息生产者)①创建module②编写pom文件<dependencies> <!--Stream-RabbitMQ--> <dependency> <groupId>org.springframework.cloud&l原创 2020-07-06 16:38:36 · 212 阅读 · 0 评论 -
SpringCloud学习笔记11——初级篇之消息总线
九.Bus消息总线1.知识点Bus支持两种消息代理:RabbitMQ和Kafka2.安装RabbitMQ①下载和安装erlang点击这里安装时常规下一步就行,选D盘②下载和安装RabbitMQ点击这里选D盘其他下一步。安装好了之后进入RabbitMQ下的sbin目录,打开cmd输入rabbitmq-plugins enable rabbitmq_management这样就行了点击start启动访问15672,默认用户名密码是guest登录进来3.Spri原创 2020-07-05 15:27:11 · 159 阅读 · 2 评论 -
SpringCloud学习笔记10——初级篇之分布式配置中心
八.Config分布式配置中心1.知识点2.在GitHub创建新的repository使用GitHub桌面版创建 ,具体可以参考我的另一篇文章点击这里或者访问链接https://blog.youkuaiyun.com/qq_41015977/article/details/1012139603.构建项目(服务端3344)①创建module②编写pom文件<dependencies> <!-- config --> <d原创 2020-07-04 21:56:36 · 223 阅读 · 0 评论 -
SpringCloud学习笔记9——初级篇之服务网关
七.SpringCloud Gateway1.SpringCloud Gateway知识点2.SpringCloud Gateway三大核心概念①Router路由路由是构建网关的基本模块,它由ID,目标URI,一系列的断言和过滤器组成,如果断言为true则匹配该路由②Predicate断言参考的是Java8的java.util.function.Predicate开发人员可以匹配HTTP请求中的所有内容(例如请求头或者请求参数),如果请求与断言相匹配则进行路由③Filter过原创 2020-07-04 14:28:10 · 275 阅读 · 0 评论 -
SpringCloud学习笔记8——初级篇之服务降级
5.使用全局服务降级@DefaultProperties(defaultFallback = “”)注解解耦可以看到fallback方法是一对一的,如果每个方法都跟一个与之匹配的fallback方法,会造成冗余,而且代码会膨胀,于是引出一个@DefaultProperties给出缺省的方法,这样没有指定的方法默认会调用@DefaultProperties中指定的方法,而指定fallback方法的还是会调用指定方法,不会调用缺省方法。这样,通用的和独享的各自分开①修改80的controller@Def原创 2020-07-03 21:32:14 · 639 阅读 · 0 评论 -
SpringCloud学习笔记7——初级篇之服务降级
六.HystrixHystrix官方宣布,停止更新,进入维护阶段,但Hystrix非常优秀,属“业界标杆”1.Hystrix断路器知识点能做的事:服务降级、服务熔断、接近实时的监控等。①服务降级fallback服务器忙,稍后再试。不让客户端等待并立刻返回一个友好提示。②服务熔断break达到最大服务访问后,直接拒绝访问,调用服务降级的方法并返回友好提示。③服务限流flowlimit秒杀高并发等操作,严禁一窝蜂拥挤,大家排队,一秒钟限制N个,有序进行2.构建项目先确定7001为单机原创 2020-07-02 20:18:26 · 263 阅读 · 0 评论 -
SpringCloud学习笔记6——初级篇之服务调用
五.OpenFeign1.OpenFeign知识点2.构建项目(订单模块)①创建module②修改pom文件<dependencies> <!-- openfeign --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud原创 2020-06-29 16:46:27 · 179 阅读 · 0 评论 -
SpringCloud学习笔记5——初级篇之服务调用
服务调用四.Ribbon1.Ribbon知识点Ribbon是用于负载均衡的客户端工具,很遗憾目前官网宣布rRbbon已进入维护状态一句话总结:Ribbon = 负载均衡 + RestTemplate调用2.getForObject和getForEntitygetForObject返回对象为响应体中数据转化成的对象,基本上可以理解为JsongetForEntity返回对象为ResponseEntity对象,包括了响应中的一些重要信息,比如响应头、响应状态码、响应体等①修改老o原创 2020-06-29 00:05:07 · 224 阅读 · 0 评论 -
SpringCloud学习笔记4——初级篇之服务注册中心
8.actuator微服务信息完善完善前:Status中为主机和服务名。完善后:只暴露服务名不暴露主机名,且显示IP地址①修改8001的yml文件eureka下添加如下配置eureka: instance: instance-id: payment8001 prefer-ip-address: true②修改8002的yml文件instance: instance-id: payment8002 prefer-ip-address: true③测试原创 2020-06-27 20:44:14 · 277 阅读 · 0 评论 -
SpringCloud学习笔记3——初级篇之服务注册中心
@初级篇当服务很多时,单靠代码手动管理是很麻烦的,需要一个公共组件,统一管理多服务,包括服务是否正常运行等。一.Eureka1.Eureka知识Eureka用于服务注册,目前官网已经停止更新。①服务治理SpringCloud封装了Netflix公司开发的Eureka模块实现服务治理。在传统的RPC远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,所以需要使用服务治理,管理服务与服务之间依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册②服务注册Eureka采用了C/原创 2020-06-25 01:02:03 · 269 阅读 · 0 评论 -
SpringCloud学习笔记2——入门篇
三、构建项目(订单模块)1.创建module创建过程同支付模块,选择Maven工程,JDK1.8,不勾选Maven原型。2.修改pom文件打开module order80的pom文件,添加如下依赖:<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spri原创 2020-06-23 22:36:02 · 254 阅读 · 0 评论 -
SpringCloud学习笔记1——入门篇
搭建项目一、准备工作1.使用IDEA创建Maven父工程2.设置ctrl+alt+s打开设置①配置字符集编码②配置注解生效激活③配置Java编译版本④文件类型过滤(可选)3.修改项目①删除src目录,使项目只保留pom.xml删除前删除后②修改pom文件先添加如下内容<packaging>pom</packaging>如图然后将之后的内容使用如下内容替换<!--统一管理jar包版本--> <propert原创 2020-06-21 23:40:31 · 232 阅读 · 0 评论 -
解决SpringBoot整合Mybatis时yml配置文件中 com.mysql.jdbc.Driver报错爆红的问题
打开pom文件,找到mysql依赖,找到<scope>runtime</scope>把它注释掉就好了,原因:他是指定了运行时才会用到,而我们是在编译过程中找不到mysql相关依赖所以会报错,把他注销,他就默认编译时也可以用了好了!...原创 2019-10-16 15:59:31 · 2946 阅读 · 1 评论