java获取调用当前方法的方法名和行数
java获取调用当前方法的方法名和行数
String className = Thread.currentThread().getStackTrace()[2].getClassName();//调用的类名
String methodName = Thread.currentThread().getStackTrace()[2].getMethodName();//调用的方法名
int lineNumber = Thread.currentThread().getStackTrace()[2].getLineNumber();//调用的行数
Thread.currentThread().getStackTrace()[1]是你当前方法执行堆栈
Thread.currentThread().getStackTrace()[2]就是上一级的方法堆栈 以此类推
________________________________________________________________________________________
1.System类
//获取服务器使用的系统
String system = System.getProperty("os.name");
Properties properties = System.getProperties();
for (String name : properties.stringPropertyNames()) {
System.out.println(name);
System.out.println(System.getProperty(name));
//单个实例:输出 os.name Windows 10 一共68组
}
2.EnvironmentAware类可以获取数据源,驱动等
@Configuration
public class EAwareInfo implements EnvironmentAware {
@Override
public void setEnvironment(Environment environment) {
String projectName =environment.getProperty("project.name");
System.out.println(projectName); //获取项目名称
}
}
//逻辑层使用
@Service
public class TestServiceImpl implements TestService, EnvironmentAware {
private static String projectName=null;
@Override
public void setEnvironment(Environment environment) {
//获取项目名称
projectName=environment.getProperty("project.name");
//获取到前缀是"spring.datasource." 的属性列表值.
RelaxedPropertyResolver relaxedPropertyResolver = new RelaxedPropertyResolver(environment, "spring.datasource.");
System.out.println("spring.datasource.url="+relaxedPropertyResolver.getProperty("url"));
}
}
————————————————
版权声明:本文为CSDN博主「吕小小布」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_37059838/article/details/89192503
java获取调用当前方法的方法名和行数的更多相关文章
- Java获取随机数的几种方法
Java获取随机数的几种方法 .使用org.apache.commons.lang.RandomStringUtils.randomAlphanumeric()取数字字母随机10位; //取得一个3位 ...
- Java 反射 调用私有域和方法(setAccessible)
Java 反射 调用私有域和方法(setAccessible) @author ixenos AccessibleObject类 Method.Field和Constructor类共同继承了Acces ...
- Java 获取APK安装程序的包名
Java 获取APK安装程序的包名核心的两个类: ResPackage ApkDecoder package com.temobi.util; import java.io.File; impo ...
- sqlserver查询数据的所有表名和行数及空间占用量
//查询所有表名 select name from sysobjects where xtype='u' --modify_date指表结构最后更新日期,并非数据最后更新日期SELECT na ...
- sqlserver查询数据的所有表名和行数
//查询所有表明 select name from sysobjects where xtype='u' select * from sys.tables //查询数据库中所有的表名及行数 SELEC ...
- 5种必会的Java异步调用转同步的方法你会几种
转载请注明本文地址:https://www.jianshu.com/p/f00aa6f66281 源码地址:https://gitee.com/sunnymore/asyncToSync Sunny先 ...
- JAVA获取Classpath根路径的方法
方法一: String path = Test.class.getResource("/").toString(); System.out.println("path = ...
- java反射调用某个对象的方法
// 反射调用某个对象的方法 public Object invokeMethod(Object methodObject, String methodName, Object[] args) thr ...
- Java 获取路径的几种方法 - 转载
1.获取当前类所在的“项目名路径” String rootPath = System.getProperty("user.dir"); 2.获取编译文件“jar包路径”(反射) S ...
随机推荐
- Qt压缩和解压 zip
zlib编译详见 https://blog.csdn.net/zhangxuechao_/article/details/85049711 下载quazip https://github.com/st ...
- 实用的生成二维码API
推荐一个生成二维码的API网站: 中文 http://www.topscan.com 英文 https://api.qrserver.com/v1/create-qr-code/?size=150x1 ...
- docker数据卷之持久化操作
docker Docker三大核心组件:(运行起来的镜像就可以称作容器) Docker 镜像--Dcoker images:类比与类 Docker 仓库--Docker registeries: Do ...
- JAVAWEB复习-JS
1.概述 JavaScript是基于对象和事件的脚本语言,主要应用在客户端 特点:信息动态交互,不可直接访问本地磁盘,只要是可以解析js的浏览器都可以跨平台执行 2.JS和JAVA比较 a:JS是面向 ...
- 酷睿i3-9100F简单评测
酷睿i3-9100F 四核四线程,三级缓存6MB,基础频率3.6GHz,可睿频到4.2GHz,性能上接近于七代的酷睿i5-7600K 四核四线程.
- 2019CCPC 秦皇岛 E.Escape
传送门 题意: 给出一个\(n*m\)的迷宫,有\(a\)个入口,\(b\)个出口. 现在有\(a\)个机器人都从入口出发,一开始方向默认为下,你可以选在在一些格子上面放置一个转向器,转向器有四种: ...
- idea中怎么忽略(ignore)掉 .idea等文件
idea需要下载一个专门的plugins 来ignore .idea *.iml等文件 可以在https://plugins.jetbrains.com/idea/plugin/7495–ignore ...
- nwjs-简单应用于基本结构
简单应用 1.在解压目录下创建文件夹dmeo01 2.在文件夹中创建index.html和package.json两个文件 3.index.html内容: <!DOCTYPE html> ...
- loj2305 NOI2017 游戏
题目链接 思路 既然\(x\)的数量那么小,我们就可以先把每个\(x\)搜索一遍. 枚举x的时候不需要把\(a,b,c\)全枚举一遍,只要枚举其中的两个就可以枚举到当前位置选任何车的情况. 然后就变成 ...
- 8.5 NOIP模拟测试13 矩阵游戏+跳房子+优美序列
T1矩阵游戏 数学题.首先这一列这一行先乘还是后乘对最后答案没有影响.a[i][j]表示矩阵中原始的值,h[i]表示i行的累乘,l[i]表示i列的累乘.易得ans=Σa[i][j]*h[i]*l[i] ...