自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(204)
  • 资源 (6)
  • 收藏
  • 关注

原创 Android apk多渠道打包工具,支持V1和V2签名的apk,不破坏原有签名

该部分内容除了用来进行打渠道包以外,还可以用来给apk进行二次签名,只是写入的渠道信息变成二次签名信息而已。本文只是讲解具体的实现思路,不会进行详细的分析,因为网上关于V1和V2签名的文章太多了,这里不赘述了。V1签名的apk已经有很多人写过分析了,主要是对META-INF目录进行操作,因为V1签名的apk除了该目录外,别的文件都是被保护的,只要进行了修改,那么就会破坏原有签名,所以对于V1签名的apk主要是在META-INF目录下写入渠道信息,这里简单的创建一个新文件,渠道名称为文件名..

2020-09-27 14:15:52 3391 1

原创 自定义过滤器实现对请求报文统一解密对响应加密

前端在请求头里增加特定字段表示是前端请求,报文是否需要加密,后端自定义过滤器获取请求时根据请求头判断,如果是前端请求并且需要加密,则走加密流程,如果不是前端请求且不需要加密,则直接走正常流程即可。工作中经常会遇到这样的情况,前端(Android或vue等)跟后台通讯时需要对报文做加密和签名处理,但是后端微服务之间调用是明文,这种情况可以考虑通过自定义过滤器的方式实现。接下来是前端通过拦截器的方式对请求和响应进行统一处理。通过工厂方法获取OkhttpClient。创建HttpUtils对象。

2024-03-06 21:53:09 343

原创 Android端RSA加密,服务端无法解密的一个坑

RSA 算法规定:待加密的字节数不能超过密钥的长度值除以 8 再减去 11(即:KeySize / 8 - 11),而加密后得到密文的字节数,正好是密钥的长度值除以 8(即:KeySize / 8)。在实际工作中,Android端和后端进行RSA报文加密操作时,发现密钥正确的情况下,Android端加密的数据,后端死活不能解密,最后发现是RSA操作的填充方式不对。android系统的RSA实现是"RSA/None/NoPadding",RSA的填充问题解决之后,还需要注意数据长度要求,

2024-03-05 19:34:02 372

原创 Feign远程调用数据量大时压缩导致转json失败

Spring Cloud Feign 支持对请求和响应进行GZIP压缩,以提高通信效率。

2024-02-29 21:46:16 1173

原创 SpringBoot通过HttpClient的form-data传参

适用于post请求并传送form-data数据(同样适用于Raw类型的application-json格式)httpClient模仿Postman的form-data格式。

2024-02-29 21:43:08 1664

转载 自动注入feign接口项目无法启动

,如果引用多个api,可用逗号进行分割,例如 @EnableFeignClients(basePackages = {"com.aaa.sms.api", "com.aaa.ums.api"}) ,相似地址可简写为 @EnableFeignClients(basePackages = "com.aaa.*.api")另外需要注意的是,当在启动类上添加@ComponentScan注解时,@SpringBootApplication中的@ComponentScan就会失效。,此时需要在启动类上添加注解指明。

2024-02-27 22:00:55 278

转载 @Autowired和@Resource到底有什么区别

Autowired 和 @Resource 来自不同的“父类”,其中 @Autowired 是 Spring 定义的注解,而 @Resource 是 Java 定义的注解,它来自于 JSR-250(Java 250 规范提案)。依赖注入的功能,是通过先在 Spring IoC 容器中查找对象,再将对象注入引入到当前类中。4、依赖注入的用法支持不同:@Autowired 既支持构造方法注入,又支持属性注入和 Setter 注入,而 @Resource 只支持属性注入和 Setter 注入;

2024-02-27 21:57:44 299

转载 Spring的FactoryBean和BeanFactory区别

从名字上就能看出来个一二,BeanFactory 是 Factory 而 FactoryBean 是一个 Bean,我们先来看下总结:BeanFactory 是 Spring 框架的核心接口之一,用于管理和获取应用程序中的 Bean 实例。它是一个工厂模式的实现,负责创建、配置和管理 Bean 对象。BeanFactory 是 Spring IoC 容器的基础,它可以从配置元数据(如 XML 文件)中读取 Bean 的定义,并在需要时实例化和提供这些 Bean。

2024-02-25 21:03:06 71

原创 RecycleView结合ItemTouchHelper实现拖动排序

最近项目中需要实现对某一类条目进行拖动排序功能,实现技术方案就是利用ItemTouchHelper绑定RecyclerView、ItemTouchHelper.Callback来实现UI更新,并且实现动态控制是否开启拖动功能。其中,ItemTouchHelper是Google在androidx包中添加的,其于RecyclerView配合可以比较容易地实现这个功能。3、初始化RecycleView,并绑定ItemTouchHelper。2、实现ItemTouchHelper.Callback。

2024-02-22 20:57:11 767

原创 Android使用shape定义带渐变色的背景

渐变角度,仅用于线性渐变。必须是[0-315]范围内45的倍数。在drawable目录下创建文件bg_gradient.xml。type : linear 直线。angle 180 从右往左。angle 270 从上往下。angle: 0 从左到右。angle 90 从下往上。angle表示渐变角度。

2024-02-19 20:01:05 730

原创 SpringCloud微服务调用丢失请求头

HystrixConcurrencyStrategy 是提供给开发者去自定义hystrix内部线程池及其队列,还提供了包装callable的方法,以及传递上下文变量的方法。所以可以继承了HystrixConcurrencyStrategy,用来实现了自己的并发策略。

2024-02-19 19:59:41 737

原创 AndroidStudio升级到2022.3.1 Giraffe之后,JDK使用17出现module java.base does not “opens java.io“ to unnamed mod

module java.base does not “opens java.io“ to unnamed mod

2023-09-05 16:58:22 3140 1

原创 解决打印org.apache.http.wire,org.apache.http.headers日志的问题

解决org.apache.http.wire日志问题

2023-09-05 15:12:29 1929

原创 @Cacheable缓存相关使用总结

Cacheable

2023-08-12 14:47:47 3042

原创 Stream API总结

Stream API

2023-08-10 16:08:28 222

原创 IDEA如何调试Stream API

Stream API调试

2023-08-10 09:50:21 1493

原创 BigDecimal使用总结

BigDecimal使用

2023-08-09 18:54:53 466

原创 Nginx常用功能

nginx常用技巧

2023-08-07 19:26:39 775

原创 SpringBoot 整合 Minio

SpringBoot 整合Minio

2023-08-07 19:09:57 673

原创 Linux安装和卸载MiniIO

linux安装minio和卸载

2023-08-07 18:54:40 1392

原创 a-switch和a-popconfirm联合使用,进行二次确认

a-switch结合a-popconfirm做二次确认

2023-08-01 16:21:48 776

原创 @Scheduled cron的表达式详解

@Schedual 的cron表达式

2023-08-01 13:39:23 1588

原创 通过Vue-cli解决前端跨域问题

vue-cli解决前端跨域

2023-07-27 08:52:34 349

原创 SpringBoot解决跨域问题的几种方式

跨域问题指的是不同站点之间,使用 ajax 无法相互调用的问题。跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。但这个保护机制也带来了新的问题,它的问题是给不同站点之间的正常调用,也带来的阻碍,那怎么解决这个问题呢?接下来我们一起来看。跨域三种情况在请求时,如果出现了以下情况中的任意一种,那么它就是跨域请求:1、协议不同,如 http 和 https;2、域名不同;3、端口不同。也就是说,。常见的跨域问题如下图所示:跨域问题演示。

2023-07-21 22:56:05 141

原创 String数组转List的三种方式

数组转集合

2023-07-03 11:55:12 28790

原创 SM4、AES,RSA,DES等加解密,以及一些其他常用工具方法整理

该CommonUtils为后台使用,主要是将PKCS#8转成PKCS#1,将x509格式证书转换为ASN1格式。工作中接触到了SM4,AES,RSA等算法的加解密,这里整理下来,以备后续其他地方需要使用到。CertUtils用于证书链的校验,主要校验上下级的签名和有效期,没有校验签发者信息。MacUtils主要是计算mac算法的工具类,该mac算法是银联标准的mac计算方式。Base64Utils为使用到的Base64的encode和decode方法。DesUtils主要是后台使用的3DES算法工具类。

2023-06-30 10:59:07 1102

原创 将String类型的证书转换为X509Certificate类型对象,读取证书链文件内容,完成证书链校验

证书解析

2023-06-28 11:07:01 645

原创 maven测试依赖的排除

当 A 依赖 B,B 依赖 C 而且 C 可以传递到 A 的时候,A 不想要 C,需要在 A 里面把 C 排除掉。而往往这种情况都是为了避免 jar 包之间的冲突。所以配置依赖的排除其实就是阻止某些 jar 包的传递。因为这样的 jar 包传递过来会和其他 jar 包冲突。测试的方式:在 pro02-maven-web 工程中配置对 commons-logging 的排除。发现在 spring-core 下面就没有 commons-logging 了。

2023-06-20 18:28:57 811

原创 maven测试依赖传递性

从上面的例子已经能够看到,pro01-maven-java 依赖了 junit,但是在 pro02-maven-web 工程中查看依赖树的时候并没有看到 junit。要验证 provided 范围不能传递,可以在 pro01-maven-java 工程中加入 servlet-api 的依赖。在 A 依赖 B,B 依赖 C 的前提下,C 是否能够传递到 A,取决于 B 依赖 C 时使用的依赖范围。A 依赖 B,B 依赖 C,那么在 A 没有配置对 C 的依赖的情况下,A 里面能不能直接使用 C?

2023-06-20 16:55:50 855

原创 maven的依赖范围scope使用

maven的scope使用

2023-06-20 16:53:43 756

原创 如何解决form表单循环添加一组数据

如何使用循环添加表单的结构,收集数据和使用数据

2023-04-27 14:10:00 568 1

原创 使用a-upload上传图片或者文件(符合规则,显示在fileList,不符合不显示)

文件或者图片上传

2023-04-25 11:05:42 3169

转载 基于Vue-cli的一套代码打包成多个项目(换肤)

基于Vue-cli的一套代码打包成多个项目(换肤)

2023-04-18 19:18:17 632

原创 form表单收集数据提交和回显数据

表单收集数据提交和回显

2023-04-13 19:57:25 1211

原创 JS小数加减乘除丢失精度问题的解决办法

【代码】JS小数加减乘除丢失精度问题的解决办法。

2023-04-11 10:50:24 669

原创 客户端LocalStorage命名冲突问题(二)

Vue.ls使用

2023-04-10 14:42:34 591

转载 客户端LocalStorage命名冲突问题(一)

localStorage命名冲突

2023-04-10 14:24:19 343

原创 前端常用正则表达式

常用正则表达式整理

2023-04-10 09:51:21 97

原创 Mac上配置git

git使用

2023-03-01 10:02:04 2468

转载 xposed 的基本使用

xposed的使用

2023-02-22 09:18:59 1818

ios原生集成极光推送

ios原生集成极光推送,sdk已集成,只需要自己配置证书,profile,即可在xcode当中运行

2022-03-09

MyExoPlayer

Android用于播放一组音频文件

2022-02-14

dex反编译工具包,支持AndoridN以上

下载该jar包以后,解压,将apk解压后得到的dex文件拷贝到ex-tools-2.1-SNAPSHOT目录,然后在命令行执行d2j-dex2jar classes.dex,就可以得到反编译的jar包了

2020-09-28

Android多渠道打包工具,支持V1和V2签名的apk

该jar包可直接用命令行运行,命令为:java -jar writechanneltool.jar -sourceApk test.apk -channelFile channel.txt,test.apk为待签名apk,channel.txt为渠道信息文件,每个渠道占一行,支持#开头的注释,该工具可自动识别apk是V1还是V2签名,然后选择合适的方式写入渠道,V1签名的apk是在META-INF目录下增加渠道信息,V2签名的apk是在签名块增加渠道信息,该工具写入渠道后不会破坏原apk签名结构,运行速度快,操作简便

2020-09-28

MySlideRecyclerView.java

自定义RecycleView,支持侧滑菜单,可以根据逻辑设置菜单的宽度和显示元素,可直接导入工程使用,无需导入其他资源包,方便快捷

2020-09-25

RSAUtils.java

RSA常用的签名签名方法,支持多种填充方式,支持对数据进行分段处理,支持多种签名验签模式,亲测有效,欢迎各位相互交流

2020-09-08

空空如也

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

TA关注的人

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