java - Logback获取方法名称】的更多相关文章

java - Logback获取方法名称 摘自: https://blog.csdn.net/qq853632587/article/details/78222780 我们目前正在从 Log4J 迁移到 Logback,但是在获取触发日志的"原"方法名称时遇到了问题. 我叫它"原",因为我们有一个集中的记录器类( 隐藏和操作某些日志) 和日志中显示的方法名称. 在 Log4J 中,我们能够正确获取"原"方法名. Logback是否能够获得它? 记…
//ProceedingJoinPoint pjp //获取方法返回值类型 Object[] args = pjp.getArgs(); Class<?>[] paramsCls = new Class<?>[args.length]; for (int i = 0; i < args.length; ++i) { paramsCls[i] = args[i].getClass(); } //获取方法 Method method = pjp.getTarget().getCl…
例子代码如下: package com.reflect; import java.lang.reflect.Method; public class ClassUtill { /* * 打印类的信息,包括类的成员函数,成员变量, * obj 该对象所属类的信息 * */ public static void printClassMessage(Object obj) { //要获取类的信息,首先要获取类的类类型 Class c=obj.getClass(); //传递的是哪个子类的对象,c就是该…
背景说明 最近写反射相关的代码,想获取对应的参数名称,却发现没有特别好的方式. jdk7 及其以前,是无法通过反射获取参数名称的. jdk8 可以获取,但是要求指定 -parameter 启动参数,限制较多. 期间尝试过类似于 Mybatis 使用 @Param 的方式,但是感觉不够优雅,后来发现了下面的这个工具. asm-tool 是基于 asm 构建的常见工具类. 下面简单介绍下使用方式. 快速开始 准备 jdk 1.7+ maven 3.x+ maven 引入 <dependency>…
package reflect; import java.lang.reflect.Method; public class ClassDemo3 { public static void main(String[] args) { String s = "hello"; ClassUtil.printClassMethodMessage(s); Integer n1 = 1; ClassUtil.printClassMethodMessage(n1); } /** * 获取方法 *…
// 这种方式获取的话,数组的第一个元素是当前运行方法的名称,第二个元素是调用当前方法的方法名称 StackTraceElement[] stackTrace = new Exception().getStackTrace(); String methodName = stackTrace[0].getMethodName(); // 这种方式获取的话,数组的第二个元素是当前运行方法的名称,第三个元素是调用当前方法的方法名称 stackTrace = Thread.currentThread()…
Service1.java package reflection; public class Service1 { public void doService1(){ System.out.println("业务方法1"); } } Service2.java package reflection; public class Service2 { public void doService2(){ System.out.println("业务方法1"); } } s…
关于反射中getDeclaredMethod().invoke()的学习,来源于项目中的一行代码: SubjectService.class.getDeclaredMethod(autoMatchConfig.getMethodName(), Integer.class).invoke(subjectService, GlobalConfig.OPEN_TO_IPLAN); 获取反射的方法有: 第一种: Class c = SubjectService.class 第二种: Class c =…
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多线程第四章:设置和获取线程名称 下一章 "全栈2019"Java多线程第五章:线程睡眠sleep()方法详解 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复"Jav…
不多说,直接上干货! 获取文件名称.获取文件路径.获取文件大小.获取文件修改时间 FileMethodDemo.java package zhouls.bigdata.DataFeatureSelection.test; import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.util.Date; public class FileMethodDemo { /** * @p…
Java 反射理解(三)-- Java获取方法信息 基本的数据类型.void关键字,都存在类类型. 举例如下: public class ClassDemo2 { public static void main(String[] args) { Class c1 = int.class;//int 的类类型 Class c2 = String.class;//String类的类类型,可以理解为String类字节码 Class c3 = double.class; Class c4 = Doubl…
方法的参数名,在很多时候我们是需要反射得到的.但是在java8之前,代码编译为class文件后,方法参数的类型是固定的,但参数名称却丢失了,这和动态语言严重依赖参数名称形成了鲜明对比.(java是静态语言,所以入参名称叫什么其实无所谓的). 虽然名称无所谓,但很多时候,我们需要此名称来做更好的安排,比如Myabtis的应用.下面介绍两种方式获取参数名: 一.通过jdk原生反射机制获取 import java.lang.reflect.Method; import java.lang.reflec…
查看本章节 查看作业目录 需求说明: 根据提供的 IP 地址,获取主机名称和域名 实现思路: 创建 GetHostNameByIpAddress 类,在main方法中声明 String 类型的变量 ipAddress,调用 ipAddress 字符中的split方法分割字符串,指定的分隔符是"·",并将方法返回值保存到 String 类型的数组变量 ipArr 中 实例化 byte 类型的数组变量 ipByteArr,用来保存 IP 地址,该数组长度与数组 ipArr 的长度相等 使用…
Java中获取键盘输入值的三种方法     Java程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这种情况我们就束手无策,请你看以下三种解决方法吧:  以下将列出几种方法: 方法一:从控制台接收一个字符,然后将其打印出来 import java.io.*; public static void main(String [] args) throw…
1.获取当前时间,和某个时间进行比较.此时主要拿long型的时间值. 方法如下:  要使用 java.util.Date .获取当前时间的代码如下 Date date = new Date(); date.getTime() ; 还有一种方式,使用 System.currentTimeMillis() ;都是得到一个当前的时间的long型的时间的毫秒值,这个值实际上是当前时间值与1970年一月一号零时零分零秒相差的毫秒数 一.获取当前时间,   格式为:   yyyy-mm-dd   hh-mm…
paip.java c++得到当前类,方法名称以及行号 作者Attilax 艾龙,  EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.net/attila 得到当前类名称(带package 路径)             //m.util.tAnno         System.out.println(    Thread.currentThread().getStackTrace()[1].getClassName());…
此文源码主要为应用 Java 获取文件名称及文件目录的源码及其测试源码.若有不足之处,敬请大神指正,不胜感激!源代码测试通过日期为:2015-2-3 00:02:27,请知悉. Java获取文件名称的源代码如下: /** * @function 获取文件名 * * @author Aaron.ffp * @version V1.0.0: autoUISelenium main.java.aaron.java.tools FileUtils.java getfname, 2015-2-2 23:2…
@Test public void testParse() { //表达式解析 ExpressionParser expressionParser = new SpelExpressionParser(); Expression expression = expressionParser.parseExpression("#itemId"); EvaluationContext context = new StandardEvaluationContext(); context.set…
JAVA反射系列之Field,java.lang.reflect.Field使用获取方法.   转载https://my.oschina.net/u/1407116/blog/209383 摘要 java.lang.reflect.Field使用 Field. 首先必须明一点 Field类主要是用来辅助获取和操作类的属性的! 1.怎么通过反射获取类的属性 先来看JDK提供的方法有如下几种: a)Class.getDeclaredField(String name);      返回一个 Fiel…
函数的作用域:调用对象 JavaScript中函数的主体是在局部作用域中执行的,该作用域不同于全局作用域.这个新的作用域是通过将调用对象添加到作用域链的头部而创建的(没怎么理解这句话,有理解的亲可以留言告诉我, 谢谢).因为调用对象是作用域链的一部分,所以在函数体内可以把这个对象属性作为变量来访问. 调用对象的属性包括:用var声明的局部变量,函数形参,还有一种特殊的属性arguments 函数的实际参数:实际参数对象 arguments对象,用来引用实际参数对象.函数的arguments对象并…
1.(new StackTrace()).GetFrame(1) // 0为本身的方法:1为调用方法2.(new StackTrace()).GetFrame(1).GetMethod().Name; // 方法名3.(new StackTrace()).GetFrame(1).GetMethod().ReflectedType.Name; // 类名 获取当前方法的名称空间.类名和方法名称 public string GetMethodInfo() { string str = ""…
JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过MessageDigest类进行MD5加密,第三步转换成16进制的MD5码值.几种方法的不同点主要在第一步和第三步上.具体可以看下面的例子: 方法一. private final static String[] strHex = { "0", "1", "2"…
获取类名的方法 Java 中获取类名的方式主要有以下三种. getName() 返回的是虚拟机里面的class的类名表现形式. getCanonicalName() 返回的是更容易理解的类名表示. getSimpleName() 返回的是类的简称. 都有什么区别? 通过一个实例来看下它们主要的区别. public class TestClass { public static void main(String[] args) { // 外部普通类 System.out.println("方法名…
PHP获取项目所有控制器方法名称 //获取模块下所有的控制器和方法写入到权限表 public function initperm() { $modules = array('admin'); //模块名称 $i = 0; foreach ($modules as $module) { $all_controller = $this->getController($module); foreach ($all_controller as $controller) { $all_action = $…
一.简介 本文主要讲JAVA项目中引入Logback的方法. 二.解决 1.引入依赖. <!--Begin LogBack Log--> <!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic&…
package com.study.reflect; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import org.omg.Dynamic.Parameter; /** * 反射,获取方法 * @ClassName: MethodDemo * @author liChao * @date 2017年9月10日 下午4:25:21 */ public class Met…
转载:https://www.cnblogs.com/yskcoder/p/4718198.html 这两天在用spring进行上传上遇到问题,今天进行了问题的排查,这个过程也增加了我看spring源码的兴趣!还是很有收获的! 首先先给A组提供了上传接口,并没有在spring的配置文件进行multipartResolver的配置,后台Controller的java的获取为: MultipartResolver resolver = new CommonsMultipartResolver(req…
类的成员包含变量(Field),方法(Method),构造器(Constructor) 类定义 package Reflect; public class MyTest { public int a; public static int b; public static final int c = 0; private int d; public int sum(int a, int b, String c) { return a + b; } public int sub(int a, int…
一.问题描述 这里描述两个问题: 1.Java Map获取key和value的方法: 2.String字符串转List的方法: 二.解决方法 1.Java Map获取key和value的方法   2.String字符串转List的方法  …
// 获取数据库的元数据信息 DatabaseMetaData metaData = conn.getMetaData(); // 获取数据库名称的方法 System.out.println(metaData.getUserName()); 暂时只用到这一个方法,查询数据库名称,其他的,如果大家想要用什么字段,可以通过API来完成,后续如果用到了哪些方法,会进行更新.…