![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
工具
妖四灵.Shuen
这个作者很懒,什么都没留下…
展开
-
如何从request中获取域名
//获取是http 还是 https,如果有通过nginx就行转发,记得配置带上sceme信息String scheme = request.getScheme();System.out.println("scheme = " + scheme);//获取域名 String serverName = request.getServerName();System.out.println("serverName = " + serverName);//组装成基础urlString basePat.原创 2021-09-26 11:34:17 · 7032 阅读 · 0 评论 -
java中如何查看一个实例对象的大小
绕开所有的介绍,直接上代码(1)引入相关的工具依赖 <dependency> <groupId>com.carrotsearch</groupId> <artifactId>java-sizeof</artifactId> <version>0.0.5</version> </dependency>(2)关键的类/** * Estimates the size (m原创 2021-03-15 14:05:34 · 1564 阅读 · 0 评论 -
git warning:not all local changes may be shown due to an error:
下午敲完代码,准备提交,突然一行提示,warning:not all local changes may be shown due to an error:心头一紧,我的代码怎么没有提示修改呢?不会吧但是确实我本地代码是已经修改过了,那么肯定估计是idea 又抽风了 ,咋办呢。我先自己先备份一份代码在本地,以防万一我查了下网上的操作解决方案:选择File --> settings --> Version Control --> Subversion取消选中 .原创 2021-01-26 15:18:06 · 4778 阅读 · 5 评论 -
微信下载交易账单API工具类
本文是基于微信支付V2版本的工具类,如果使用V3的版本请参考官网:https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/pages/api.shtml因为图方便,所以引入了两个公共的工具包 来处理https 请求 以及 加密,里面也封装了快速替换下面两个依赖的方式 <dependency> <groupId>cn.hutool</groupId> <a原创 2020-11-27 17:26:54 · 2732 阅读 · 4 评论 -
APP调用微信三方登陆 授权码模式 工具代码
官方文档介绍:https://developers.weixin.qq.com/doc/oplatform/Mobile_App/WeChat_Login/Development_Guide.html代码:WXTokenEntity 对应 通过code 获取 access tokenpublic class WXTokenEntity { //请求访问token private String accessToken; //刷新token private原创 2020-11-18 16:02:25 · 602 阅读 · 0 评论 -
git 命令查看远程分支以及拉取并切换
这篇博客是记录一下命令,有时候突然要用,老忘记命令所以写一篇记录一下查看远程分支查看本地所有分支git branch查看远程所有分支git branch -r查看本地和远程所有分支git branch -a➢ 拉取分支name为远程分支的名称git fetch orgin name➢ 切换分支git checkout name➢ 切换分支二git checkout -b 本地自己命名 origin/远程分支名...原创 2020-11-16 15:10:15 · 4027 阅读 · 0 评论 -
git 仓库回滚代码到某个commit版本(本地和仓库都会回滚)
git维护代码版本信息是根据commit快照版本来维持的,每一次提交都会生成一个新的commit 对象,下面我们直接看下怎么回归。Git回滚代码到某个commit回退命令:$ git reset --hard HEAD^ 回退到上个版本$ git reset --hard HEAD~3 回退到前3次提交之前,以此类推,回退到n次提交之前$ git reset --hard commit_id 退到/进到 指定commit的sha码强推到远程:$ git push origin HE原创 2020-11-05 15:25:28 · 2589 阅读 · 0 评论 -
Maven 生命周期详解
思考:我们常使用的maven命令,比如 mvn clean install,mvn clean package 这些命令到底最后是如何工作的?在这里我们还是先一步步来,其实它们运行的是生命周期中对应的phase阶段。Maven 拥有三套独立的生命周期,它们分别是clean、default 和 site。clean 生命周期的目的是清理项目;default 生命周期的目的是构建项目;site 生命周期的目的是建立项目站点。生命周期相互独立每个生命周期又包含了多个阶段。这些阶段在执行的时候是有.原创 2020-10-31 20:52:43 · 3604 阅读 · 0 评论 -
IntelliJ IDEA 统一设置编码为utf-8编码格式 处理乱码
问题一:File->Settings->Editor->File Encodings问题二:File->Other Settings->Default Settings ->Editor->File Encodings问题三:将项目中的.idea文件夹中的encodings.xml文件中的编码格式改为uft-8问题四:File->Settings->Build,Execution,Deployment ->.转载 2020-08-05 15:05:12 · 8155 阅读 · 0 评论 -
Jmeter之JSON提取器应用
场景分析:有时候我们的业务需要发送多次请求,每次请求都是上下相互依赖,也就是说串行执行,每个请求需要上一个请求的部分数据返回作为本次请求的参数,该如何在Jmeter中实现呢?例如:登录之后的响应结果中会返回用户id、token信息; 而更新昵称需要传参member_id、且需要请求头传token;也就是我们要想办法从“登录”的响应结果中获取到id、token信息,再去传给“更新昵称”请求。因为返回数据格式是json,所以我们用JSON提取器来实现。当然也可以用正则表达式提取器,只是现在用的不多。下面原创 2020-07-17 15:05:20 · 7965 阅读 · 0 评论 -
JsonPath 运算符使用
背景因为之前用到Jmeter的Json 提取器涉及到JsonPath的使用,因此查找了一些文章,将里面的精华部分运算符的使用提取出来记录以下,方便自己以后使用。JsonPathJsonPath参照XPath解析xml的方式来解析Json JsonPath用符号$表示最外层对象,类似于Xpath中的根元素 JsonPath可以通过点语法来检索数据,如:shell $.store.book[0].title 也可以使用中括号[]的形式,如shell $['store']['book'][0..原创 2020-07-17 15:01:30 · 8992 阅读 · 0 评论 -
Jmeter 拦截请求并修改数据(可用于生成签名sign等或者动态获取数据)
本文基本没有上面文字,因为存粹是代码实现,关于参数的一些讲解,已经在代码中写了注释,当然如果想了解更多的一些用法,建议参考Jmeter官网API:https://jmeter.apache.org/api/org/apache/jmeter/效果请求前自定义的POST Body Data通过Beanshell拦截,并进行参数处理以及额外数据添加后真正发出的请求Body Data代码实现import java.util.*;import org.apache.commo...原创 2020-07-17 14:02:09 · 2001 阅读 · 0 评论 -
jmeter 用beanShell preProcessor 生成sign并使用
背景最近在进行压力测试的时候,需要在发送请求的时候生成签名,因为现在的REST api大多会传sign(签名)字段,各接口对sign签名的内容、方式可能不一样,但一般模式都是从接口的入参中选择部分内容组成一个字符串,然后再拼接一个 secretKey 或 appKey (像秘钥一样,值固定) ,最后对这个拼接起来的字符串进行MD5的运算或者其他自定义的算法,将结果赋值给sign。完整规范的接口文档都会有sign的算法描述。因此,编写了本篇文章记录以下。解决步骤(1)确认签名算法。(2)如.原创 2020-07-17 12:03:48 · 8708 阅读 · 0 评论 -
Jmeter 之BeanShell 获取 header 以及 body
Jmeter使用,从body 中获取数据脚本代码import org.apache.jmeter.config.Arguments;import org.apache.jmeter.protocol.http.control.HeaderManager;import org.apache.jmeter.testelement.property.CollectionProperty;Arguments args = sampler.getArguments();HeaderM...原创 2020-07-16 11:40:31 · 12009 阅读 · 0 评论 -
JMeter 使用(实现压测请求以及生成图文报告)
压力测试是每一个Web应用程序上线之前都需要做的一个测试,他可以帮助我们发现系统中的瓶颈问题,减少发布到生产环境后出问题的几率;预估系统的承载能力,使我们能根据其做出一些应对措施。所以压力测试是一个非常重要的步骤,下面我带大家来使用一款压力测试工具JMeter。原创 2020-07-16 11:04:57 · 9499 阅读 · 0 评论 -
Jackson 使用以及性能介绍
直接上代码,看下最简单也是最常用的方法,将Object 转为 JSON 以及将Json转为Object方式public class TestJackson { public static void main(String[] args) throws IOException { ObjectMapper objectMapper = new ObjectMapper(); Map<String,Object> params = new HashMa原创 2020-07-15 15:26:19 · 9258 阅读 · 1 评论 -
Jackson,fastjson Gson比较
jackson:反射+反射缓存、良好的stream支持、高效的内存管理 fastjson: jvm虚拟机:通过ASM库运行时生成parser字节码,支持的field不能超过200个。参考:FastJson使用ASM反序列化。 android虚拟机:反射的方式。 gson:反射+反射缓存、支持部分stream、内存性能较差(gc问题)。ASMASM是一个 Java 字节码操控框架。它能被用来动态生成类或者增强既有类的功能。ASM 可以直接产生二进制 class 文件,也可以在类被加载入 J原创 2020-07-15 15:42:55 · 13292 阅读 · 0 评论 -
Maven 在pom文件中修改JDK版本
maven项目会用maven-compiler-plugin默认的jdk版本(一般是1.5)来进行j编译,如果不指明版本就容易出现版本不匹配的问题,可能导致编译不通过的问题。解决办法:在pom文件中配置maven-compiler-plugin插件(以jdk1.8)。 <properties> <maven.compiler.target>1.8</maven.compiler.target> <maven.compile原创 2020-07-15 13:16:51 · 8358 阅读 · 0 评论 -
Spring 中@Validated 分组校验使用
Spring注解之@validated的使用通过本文你能学习到@Validated 的基本使用,以及如何再spring-boot 中进行数据异常的统一处理Spring Validation验证框架对参数的验证机制提供了@Validated(Spring’s JSR-303规范,是标准JSR-303的一个变种),javax提供了@Valid(标准JSR-303规范),配合BindingResult可以直接提供参数验证结果。在检验入参是否符合规范时,使用@Validated或者@Valid在基本验证原创 2020-07-07 11:55:08 · 10202 阅读 · 0 评论 -
Tomcat post提交参数过长时,取消Tomcat对 post长度限制
背景最近测试的时候,发现接口中传递的参数太长了,导致tomcat报错 request header is too large ,如何解决? 1.Tomcat 默认的post参数的最大大小为2M, 当超过时将会出错,可以配置maxPostSize参数来改变大小。 从 apache-tomcat-7.0.63 开始,参数 maxPostSize 的含义就变了: 如果将值设置为 0,表示 POST 最大值为 0,不限制 POST 大小需要将值设置为 -1。,在此版本之前设置为 0 表示不限制 POST 大小。原创 2020-07-01 14:21:13 · 8559 阅读 · 0 评论 -
分布式唯一ID 雪花算法(JAVA)
依赖数据库,使用如MySQL自增列或Oracle序列等。UUID随机数snowflake雪花算法(本文将要讨论)利用Redis 单线程处理模型的自增长实现原创 2020-06-30 10:26:39 · 8074 阅读 · 0 评论 -
JMH 使用测试(附 测试案例)
JMH 是 Java Microbenchmark Harness 的缩写。中文意思大致是 “JAVA 微基准测试套件”是专门用于代码微基准测试的工具套件。何谓Micro Benchmark呢?简单的来说就是基于方法层面的基准测试,精度可以达到微秒级。当你定位到热点方法,希望进一步优化方法性能的时候,就可以使用JMH对优化的结果进行量化的分析。JMH比较典型的应用场景有:想准确的知道某个方法...原创 2020-04-01 13:29:29 · 13430 阅读 · 0 评论