自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 方法调用的逆向工程

方法调用的逆向工程,借用Java的agent技术实现反射的正向调用,即把反射调用改为直接调用

2022-09-29 16:58:25 132 1

原创 java bean属性快速复制

java bean属性快速复制

2022-09-28 16:46:21 810

原创 java agent方式实现方法参数收及处理,可以指定任意处理器

基于Java字节码技术实现的可配置、收集数据并执行处理器方法的agent,可以指定任意的处理器

2022-07-08 20:46:30 537 1

原创 JSON的ANTLR语法规则

grammar JSON;/**JSON语法:对象规则:一个对象是一组无序的键值对集合。一个对象以一个左花括号({)开始,且以一个右花括号(})结束。每个键后跟一个冒号(:),键值对之间由逗号(,)分隔,键必须是字符串。数组规则:数组是一组值得有序集合。一个数组由一个左方括号([)开始,由一个右方括号(])结束 。其中之由逗号(,)分隔。值规则:一个值可以是一个双引号包围的字符串、一个数字、true/false、null、一个对象或者一个数组。这些结构中可能发生嵌套/json

2021-03-19 16:06:09 257

原创 java中属性复制工具类实现

介绍在做开发的过程中经常会遇到属性的复制,如果手动逐个进行复制会很麻烦,所以需要一个工具类来简化开发。下面介绍两种方式,一个是借助spring框架的BeanUtils,另一个是自己封装。借助BeanUtils完成工具类借助spring的BeanUtils有限制,只能在spring环境下使用,下面看代码:import org.springframework.beans.BeanUtils;import java.beans.PropertyDescriptor;import java.lang.

2020-12-03 20:46:05 751

原创 编译java代码时保留参数名称

介绍有的时候我们需要知道命名方法参数时指定的方法名称,但是如果没有特别指定的话java编译器是不保留原来的参数名称的。例如springMVC中用到在不指定@RequestParam的参数名称时,默认使用参数名称,所以此时保留参数名称就很用意义了。指定编译时的参数为: -parameters使用//定义类A,方法中只有一个参数,名称为namepublic class A{ public void say(String name){}}//javac A.java编译代码,通过反射获取到

2020-11-27 21:52:48 871

原创 java中枚举的基本原理

介绍枚举是一一列举的意思,列出某个有穷集合的所有成员。java中的枚举是在jdk1.5出现的,在枚举类型没出现之前,开发人员是采用在接口中定义常量来代表枚举的。使用枚举有什么好处呢?首先见名知意,看见枚举名称,就能知道枚举所代表的意思;其次使用枚举类型可以有强制的类型约束。枚举的基本原理Java中的枚举都是集成子Enum这个抽象类,下面来看下这个类中有哪些方法和字段://所有枚举的父类public abstract class Enum<E extends Enum<E>>

2020-11-27 17:35:46 517

原创 Mybatis学习笔记之用到的反射类

介绍Mybatis中与反射有关的类主要在 org.apache.ibatis.reflection 包下,主要涉及以下几个方面对象的创建 -> ObjectFactory类的Class对象解析 -> Reflector对象字段值的设置 -> MetaObject反射的基础知识可以参考这篇文章:https://blog.csdn.net/weixin_45341408/article/details/109902262ObjectFactory对象的创建首先看看java中有

2020-11-22 18:25:48 527

原创 java中的反射及Class对象常用方法介绍

介绍有一个有意思的小实验,有一盆水,在盆中放上镜子,放到阳光下,镜子反射到墙面的光变成了彩虹。通过反射,可以知道光是由七种颜色组成的。java中的反射又叫内省或者自省,简单来说就是知道自己身上有什么东西。我们知道一个类有自己的继承体系,由构造器、方法和字段组成,jdk1.5之后加入了注解。所以这些东西都能通过反射拿到。Java中跟反射有关的类有:Class、Constructor、Method、Filed。下面介绍这四个类中经常使用的方法。Class对象Class对象是由java虚拟机创建的,当我

2020-11-21 23:51:20 869 2

原创 java中注解的使用及解析

介绍java中有四大类型,分别是:类、接口、枚举、注解。注解是jdk1.5加入到语言规范的,注解主要有两个作用,一,给编译器传递信息,例如@Override方法重载,@SuppressWarnings抑制编译警告等等;二、开发人员可以携带一些信息到运行时期而不用改变原有的代码逻辑,主要用于框架。所有注解都是Annotation接口的子接口,Annotation中的方法:public interface Annotation { //判断两个注解是否相等 boolean equals(Obje

2020-11-20 10:49:29 539

原创 Mybatis学习笔记之泛型介绍及解析

泛型介绍我们都知道一个数据类型可以定义很多变量,例如:int a,b,c,d;那有没有一种类型可以定义或代表很多种数据类型呢?这就是泛型出现的原因。泛型简单来说就是数据类型参数化。java中泛型是在jdk1.5出现的,之所以能出现还要得益于Object对象,因为java中泛型属于伪泛型,采用泛型擦除机制,最终泛型对象都是被Object对象引用。既然说最终都是Object对象,那为什么还要出现泛型,这不是对此一举吗?因为泛型带来的好处是编译时期检查,可以防止"猫中出现狗"的现象。jdk中跟泛型有关的接

2020-11-19 20:52:23 1375

原创 MyBatis学习笔记之占位符解析

简介占位符,顾名思义就是先占住一个位置,占位符解析就是把这事先占住的位置解析成,所想要的值。常见的占位符有#{},${},{}等等。使用占位符有好处是采用统一的表达方式,根据不同解析策略,可以有不同的结果;占位符解析流程确定所要解析占位符的前缀和后缀取出前后缀所包裹的标记,token对token进行解析及占位符的替换具体解析过程1、定义TokenParserimport com.weikun.handler.TokenHandler;public class TokenParser

2020-11-17 23:00:44 635

原创 mybatis学习笔记之java的XPath介绍及使用

XPath简介XPath是jdk1.5提供的,与DOM解析方式搭配,解析XML文件。XPath使用路径表达式来获取XML文件指定的节点或节点集合,常见的路径表达式见下表:表达式表达式含义/从根节点选取指定节点//选择文档中的任意节点,而不考虑它们的位置.选取当前节点…选取父节点@选取属性*匹配任意节点@*选取任意属性node()匹配任意节点text()匹配文本节点|或语法,匹配多个节点[]指定条件,例如

2020-11-16 22:49:16 331

空空如也

空空如也

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

TA关注的人

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