自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一只小码渣的博客

小开发一只,日常学习及问题记录

  • 博客(29)
  • 收藏
  • 关注

原创 Integer类型值相等判断

背景本周开发中遇到一个很低级的问题,Integer包装类的相等判断,包装类与基本数据类型的区别,应该大多数人在面试中经常被问到,但是有的时候大家都会烦这些看起来没啥用的东西,面试前还需要去熟悉,博主之前也是这样认为的,但是平时看一些理论性的东西,在方案探讨或者可行性分析时是很必要的,废话不多少,看看这个问题吧事故现场public static void main(String[] args) { Integer a =127; Integer b = 127;

2021-02-01 10:31:45 108125 6

原创 Sonar,扫出你的不规范

介绍Sonar(SonarQube)是一个开源平台,用于管理源代码的质量。Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。支持的语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。特性idea在集成sonar插件后,就可以在代码提交前发现代码中的不规范和漏洞,即使进行修复,而不是等到提交到仓库后在进行代码质量扫描,然后重复提交–检测–修复的过程。sonar目前可以扫除以下类型的问题点不遵循代码规范sonar可以通过PMD,CheckStyle,Findb

2020-12-29 10:12:35 125773

原创 系统参数配置维护建议

背景随着系统的发展和迭代,会有越来越多的业务配置参数存在于代码之中,大多数开发者会将此类参数放到项目配置文件中,或者枚举类中获取,但是对于一些变动率比较高的参数,放在以上位置,参数的变动可能需要进行代码的发布或者服务的重启配置分类根据个人观察及日常开发中发现的情况,配置需要细分为至少两类,且需要按照不通的方式进行维护系统配置系统配置可以理解为系统运行必须的配置,没有配置会直接导致系统无法启动或着运行,此类配置主要有:数据库连接中间件连接系统组件配置业务配置在支撑业务过程中需要的配置项

2020-12-28 11:37:18 125194

原创 Navicat无法使用时可以试试DBeaver

背景Navicat可以说是目前开发者使用最多的且功能做齐全的数据库工具,但是由于正版授权的价位,大多数人都是用的时各社区出产的高科技版本,用于私下学习还好,用于工作中会给企业带来侵权的风险;另外部分购买了个人授权和教育版授权的,在企业中使用也是属于侵权的,详情见Navicat非商业许可证哪些可以用开源的数据库工具以及收费数据库工具的社区版这类工具百度一下会出来一大片,今天主要介绍一下DBeaver这款开源数据库工具DBeaver介绍DBeaver是一个基于Java 开发,免费开源的通用数据库管

2020-12-25 10:14:24 127005 3

原创 第三方token过期监控及刷新机制

背景信息系统随着业务发展的多样化及场景的拓展,需要接入越来越多的第三方系统,部分收费的第三方服务都会按照合同约定给用户提供对应的应用授权账户,授权账户包含并不仅限于账号/密码/AppKey/AppSecret/MerchantId,但是从系统安全角度出发,为了保护授参数的安全性和系统的稳定性,服务商都有针对账号进行流量控制/服务降级/关键安全信息定期更新等机制,来确保双方系统稳定及安全,本次说到的Token过期就是其中的一种保护账号安全的机制现状各第三方服务token过期时间针对目前的一些第三方服务

2020-12-21 11:10:53 131744

原创 docker-compose命令安装(-bash: docker-compose: command not found解决)

安装步骤1.下载安装sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose2.目录授权sudo chmod +x /usr/local/bin/docker-compose3.安装验证docker-compose --version...

2020-11-12 15:39:42 143565

原创 Linux安装Git命令(docker环境下提示git command not found)

背景笔者准备在服务器上安装一个开源项目,第一步就是拉取对应的包。但是就在这第一步就GG了。git clone直接报错git command not found解决因为机器上面已经安装了docker仓库,docker可以拉取tomcat和jdk,就习惯的docker pull git,#docker pull gitUsing default tag: latestError response from daemon: pull access denied for git, repository

2020-11-12 14:18:02 145505

原创 shardingsphere+dynamic-datasource配置多数据源

依赖引入在maven项目中引入依赖1.shardingsphere依赖<dependency> <groupId>org.apache.shardingsphere</groupId> <artifactId>sharding-jdbc-spring-boot-starter</artifactId> <version>4.1.1</version></dependency>&l

2020-10-24 19:58:38 153236 17

原创 Dynamic-datasource加载报错:jdbcUrl is required with driverClassName

问题描述在给项目配置动态数据源时使用的时<dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId> <version>3.1.1</version> </dependenc

2020-10-22 10:40:23 142978 1

原创 Idea报错:Command line is too long. Shorten command line for className

问题描述使用Idea运行项目在项目启动时报错:Command line is too long. Shorten command line for XXXApplication or also for Spring Boot default configuration.问题分析这种异常的出现是因为运行项目的指令过长引起的,在IDEA进行代码运行时加载了很多指令,这些指令拼接后的长度超出了系统的最大长度,当你的命令行长度超过 32768 个字符时,idea就会提示你使用短一点的命令行。大家可以在运

2020-10-22 10:20:03 174927 6

原创 Spring-cloud升级异常:java.lang.NoSuchMethodError: feign.Request.requestBody()Lfeign/Request$Body;

错误现象使用feign调用接口报错:Caused by: java.lang.NoSuchMethodError: feign.Request.requestBody()Lfeign/Request$Body; at feign.httpclient.ApacheHttpClient.toHttpUriRequest(ApacheHttpClient.java:137) at feign.httpclient.ApacheHttpClient.execute(ApacheHttpClient.jav

2020-10-21 11:12:28 147781 3

原创 Mybatis-plus报错:AbstractSqlInjector.getMethodList(Ljava/lang/Class;)Ljava/util/List

问题场景:项目中有使用mybatis-plus的逻辑删除插件,在项目初始化时有加载此插件,由于近期mybatis-plus版本升级从3.0-gama升级到3.2.0版本,在原本的逻辑删除处出现报错:Caused by: java.lang.AbstractMethodError: com.baomidou.mybatisplus.core.injector.AbstractSqlInjector.getMethodList(Ljava/lang/Class;)Ljava/util/List; at c

2020-10-21 09:41:04 144132

原创 Idea运行项目报错:java.lang.OutOfMemoryError: Java heap space 解决方法

问题描述使用idea运行代码量比较多的项目时,会报错:java.lang.OutOfMemoryError: Java heap space问题处理这个显而易见时堆内存溢出,首先想到的时tomcat的内存分配太小了,调整Idea的内存分配:Help–>Edit Custom VM Options–>将配置改为以下内容:-server-Xms512m #JVM启动时分配的内存-Xmx1024m #JVM运行时内存-XX:ReservedCodeCacheSize=300m-X

2020-10-16 17:40:34 207476 30

原创 idea 2020引入包无问题但类中代码报红

问题描述代码中已经引入类的对应的类和包,但是代码依旧显示红色,不影响编译问题影响这种错误编译和运行都是没问题的,但是作为强迫症,这是完全受不了的,一点红都不能存在解决方法进入File–>Invalidate Cache&restart,清理缓存并重启Idea可以解决此问题。注意问题此操作对于破解版的Idea可能会导致激活码信息失效。...

2020-09-21 16:18:27 143983

原创 Linux服务器端口不通处理方法及CentOS 7/8 防火墙操作命令

背景在linux服务器部署应用经常会出现因为端口开放而引起的无法访问问题,此类问题确认需要从客户端检查端口是否开放。检测端口畅通方法使用telnet ip port可以确定是否端口畅通,例如:telnet 192.168.2.1 80端口不通使用netstat -ntl命令确定此端口服务是否已启动Active Internet connections (only servers)Proto Recv-Q Send-Q Local Address Foreign Addres

2020-09-18 09:41:05 149961

原创 CentOS 8.1.1911安装Docker环境

准备工作一台服务器安装步骤安装Docker依赖库yum install -y yum-utils device-mapper-persistent-data lvm2添加Docker CE的软件源信息yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo安装Docker CEyum -y install docker-ce注意:此处可能会报错Probl

2020-09-17 17:20:57 140776

原创 域名请求配置https(使用腾讯免费SSL证书)

事件背景近期捡漏了一个.cn的域名,于是就部署了一套静态页面到服务器上,绑定域名/nginx反向代理。一顿操作猛如虎,然后使用www.yuming.cn访问。欢迎进入新X京娱乐城,?????一定是看错了,重新刷新一下才进入到自己的页面。之后还会偶现跳到娱乐城的页面,然后看到浏览器地址栏那里写了不安全三个字。突然想到了什么,所以就开始了准备工作一个已备案域名一台公网可访问服务器一个web服务器(nginx或者apache)SSL证书申请之前看了很多都说阿里云和腾讯云都可以免费申请SSL证书,但是

2020-09-15 10:33:19 144336

原创 JAVA过滤文字中的emoji表情及特殊字符及完整Unicode字符对照

问题背景在做接口对接的过程中都会涉及到签名的计算,但多数的签名算法都会根据入参去生成sign,但是随着各种社交电商的普及,用户信息中的很多字段都会出现emoji表情和特殊字符(例如:用户昵称,用户评论,用户问题描述),在此类数据传输计算sign时就会出现编码问题引起的sign计算问题,导致数据传输失败解决方案在计算sign是对可能存在特殊字符的字段进行特殊字符过滤,然后在进行sign计算,关于特殊字符的范围不太好确定,一般建议只要用户可维护的字段都需要进行此类数据处理。实现代码/** * @au

2020-09-10 16:23:42 145933

原创 IntelliJ IDEA使用lombok的@Slf4j后无法使用log问题解决

问题lombok一直用起来很爽,特别是使用lombok+mybatis-plus的脚手架后,开发效率非常高,今天在开发过程中突然发现使用了@Slf4j注解后在类中无法通过log调用日志打印方法。现象如图使用@Slf4j调用log方法时提示此处无法调用log方法问题分析因为之前导入的包倒错,使用了groovy.util.logging.Slf4j;这个包,修改过来之后,重新进行了maven的clean。问题仍然存在,排除包错误的问题因为其他类中都可以调起方法,只有这个刚写了类出现这种问题

2020-09-09 16:10:14 157485 3

原创 天猫自研系统对接(交易单流程)

背景随着电商平台的发展,越来越多的商家为了提升产品的销售机会都会将自己的产品放到一些第三方的电商平台进行销售;其中一些商家自己有技术开发团队的,虽然有自建的电商渠道(小程序/APP/电商网站),但是对于销售机会,只要在投入产出比较小的情况下,当然是多多益善了。故此,很多公司都有在电商渠道进行产品销售,特别是传统企业转型触网的第一站几乎都是先上电商渠道。而说到电商平台,淘宝几乎家喻户晓,小弟之前任职为某企业的对外平台负责人,对于常见的电商平台积累了一点业务对接经验,主要对接平台有淘宝天猫/1688/亚马逊

2020-09-07 18:22:15 148140 11

原创 JAVA代码实现扫码购带圆图二维码生成

JAVA代码生成带图片的圆形二维码需求背景技术方案程序设计代码实现实现效果过程中遇到的问题写在最后需求背景针对常规的新媒体运营渠道,经常要推出一些福利商品,只能通过自媒体的渠道进行购买,因为在当前商城中商品一旦上架,所有的用户都可进行购买,所以需要控制商品购买入口,提供新的商品购买入口。技术方案针对以上的需求,开发侧和产品侧讨论之后确定使用扫码购的方式来实现这一需求。程序设计商品信息添加购买渠道标识因为商品的购买一般是经过商品详情页进行加车的,所以直接提供特殊通道让用户可以跳转到详情页,而正

2020-09-03 15:36:40 143897 2

原创 当天是否生日的判断方法比较

基础的生日判断逻辑

2023-02-27 10:41:37 549 1

原创 feign调用接口被调用方接收不到参数

背景使用springcloud的过程中,微服务间调用的情况是非常多的,其中springcloud有提供feign调用的方式,来实现服务间的通信。对于post请求大多都是使用RequestBody注解来表示请求参数,基本上不会存在什么问题,但是对于入参为类的GET请求,大多数情况下大家都会用RequestParam注解用来标识请求参数,但是RequestParam在基本数据类型的情况下是没有问题的,对于请求参数是一个类时,就会出现请求参数无法传递到下游的情况。解决方案此时针对入参为类的GET请求,需要

2021-07-20 20:22:17 2050

原创 浏览器请求接口弹窗报错600处理

背景近期有开发一个广告模块,用来在用户loading的时候展示一些新品动图,接口开发完成后,自测冒烟都跑的没问题,提测后突然接到测试的反馈,有个接口调不通,浏览器用的chrome。现场情况调用接口查询时出现以下弹窗:弹窗提示:请求失败:600 网络未连接或者请求配置发生错误异常接口:api/service-mall-admin/admin/mart_ad_config/list?pageNo=1&pageSize=10&adName=1请求方式:GET注意:测试同事反馈,

2021-03-15 10:09:31 81669 1

原创 时间段互斥算法SQL实现

背景最近有接到需求,线上需要创建一个活动信息,同一时间段只能生效一个活动,活动状态需要自动流转。本文不针对全部需求进行设计,只讨论时间互斥的实现实现思路当前需要写入时间段S1----E1,场景模型建立:表中的开始字段记为S,结束时间记为E,以下用区间标记列举存在场景:case1: S<=S1<=E<=E1case2: S1<=S<=E1<=Ecase3: S<=S1<=E1<=Ecase4: E1<S || E<S1以上四种

2021-03-05 11:35:17 85601 1

原创 springboot项目获取resource文件夹下资源

背景springboot项目resource目录下的资源获取,按照以往的获取方式,拿到的都是jar包中的压缩内容,无法获取到文件,试了好多种方式后,最终使用以下方式可以获取到资源地址demo |---src |---main |---java |---resource |--logo.png |---test代码ClassPathResource resource = new ClassPathResource("logo.png"); In

2021-03-04 10:51:56 86624 1

原创 Java后台报错:The valid characters are defined in RFC 7230 and RFC 3986

TOMCAT报错:The valid characters are defined in RFC 7230 and RFC 3986异常背景异常描述问题分析处理过程解决方案处理结果异常背景由于公司之前的商城业务是依托第三方的服务,最近技术部门获取到了这一部分代码。由于公司内部的技术架构是spring Cloud+k8s体系,此项目代码使用的是jetty容器发布,为降低运维成本,提供发布效率,针对此项目进行技术栈重构异常描述在调试一个接口时后台出现报错:java.lang.IllegalArgume

2020-08-19 11:40:26 148628

原创 项目日志级别设置为INFO,控制台一直输出DEBUG级别日志

昨天项目中需要引入一个其他系统的功能,在直接把对方pom引入后,重新启动项目后,控制台输出大量Zookeeper和Spring的DEBUG日志;首先,将log4j从引入的项目中排除掉,重启项目,依然刷了很多的DEBUG日志;再去检查,发现引入的这个包里面包含自己的log4j.perp;点进去发现项目打包的时候,里面的日志界别设置的是DEBUG;临时解决: 将次文件里面的日志级别修改为INFO...

2018-06-15 14:29:39 156122 1

原创 Eclipse开发pom文件报红org.codehaus.plexus.archiver.jar.Manifest.write(java.io.PrintWriter)

遇到这个问题看了很多文章都是让更新一下eclipse默认版本就行;很多教程上面给的路径是无法连接的;以下这个路径亲测可用;操作为:help -&gt;Install New Software -&gt; add -&gt;http://repo1.maven.org/maven2/.m2e/connectors/m2eclipse-mavenarchiver/0.17.2/N/LATEST/之...

2018-05-31 17:57:42 144206 2

空空如也

空空如也

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

TA关注的人

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