-
java agent-02-Java Instrumentation API
介绍一下 Java Instrumentation API
Java Instrumentation API是Java平台提供的一组API,它允许开发者在运行时通过修改字节码来监测和改变Java应用程序的行为。
这个API在Java SE 5(JDK 5)引入,为开发者提供了访问和操作类加载、字节码修改和类转换的能力,使得在Java应用程序运行时进行动态修改成为可能。
Java Ins...
2023-07-12 00:00:00 |
Java
-
java agent 介绍
java -javaagent 解释
在Java中,-javaagent是一种Java虚拟机(JVM)启动参数,用于指定一个Java代理(agent)程序。
代理程序可以在Java应用程序运行时对类进行修改或增强。这种方式通常被称为Java代理技术。
具体地说,-javaagent参数用于加载Java代理库(JAR文件),并在JVM启动时将代理绑定到正在运行的Java应用程序中。
代...
2023-07-12 00:00:00 |
Java
-
postman post 请求后端,对应的报错为 501 not implement
场景
场景,查询出对象列表之后,直接通过 FastJSON 序列化,取其中一个 json。
然后通过 post 请求,传入一个 json。发现请求失败。
原因
序列化的时候,使用 fastjson
但是 http 通过 @RequestBody 请求接收,一般是通过 jackson 反序列化。
对于字段的处理,fastjson 会 Date 变成 long 类别,和 jackso...
2023-07-12 00:00:00 |
WEB
-
java 类内存看到 xxx.className$1 是怎么回事?
原始代码
定义了一个类,其中没有使用任何的内部类。
有一个方法如下:
@Override
public String replace(final List<CharsScanMatchItem> charsScanMatchItemList, final String originalString, final CharsScanContext context) {...
2023-06-05 00:00:00 |
Basic
-
char数组转byte数组
例子
将char数组转换为byte数组需要考虑编码方式的问题。如果使用ASCII编码的话,每个字符只需要一个字节,直接将char数组中的每个字符转换为byte即可;如果使用其他编码方式,可能会出现一个字符需要多个字节的情况。
下面是一个使用UTF-8编码转换的示例代码:
public static byte[] charToByte(char[] chars) {
Charse...
2023-06-05 00:00:00 |
Basic
-
java 性能压测 ArrayList Iter 内存占用问题
测试代码
开启 10 个线程,然后每一个循环 50W 次。
public void commonThreadTest() throws InterruptedException {
final String expect = "mobile:130****7777|9FC4D36D63D2B6DC5AE1297544FBC5A2; bankCard:6217***...
2023-06-05 00:00:00 |
Basic
-
多态在底层如何实现? --- Java虚方法详解
前言
多态作为 Java 三大特性之一自然是十分重要,在各种设计模式中多态的影子也是随处可见。
所以能更好更深的理解多态,可以大大提交我们的代码能力,写出优雅的代码。
(我将本文的内容分为两大块用分割线隔开,前半段的内容会讲java中实现多态的基本规则,后半段算是进阶篇主要讲解JVM是如何实现多态的和即时编译器对虚方法的优化。)
Java中方法的分派机制
Java中的分派也被称为动...
2023-05-28 00:00:00 |
Java
-
http 请求 使用FormData提交文件与对象信息 对象中内嵌对象
背景
一般的接口后端如果使用 json 的格式传递,那么传递对象比较简单。
但是如果后端接口使用的是 formdata 形式,同时后端接口对象中又内嵌对象,应该如何处理呢?
说明
对象
我们使用FormData有时候不仅仅要传给后端文件,还需要传给后端对象信息。
使用FormData传对象是用key-value形式的,所以传对象不能传整个对象,要传属性
后端接口用对象接收即可,...
2023-05-24 00:00:00 |
WEB