如何获取class对象全路径名
时间: 2024-03-05 21:55:09 浏览: 23
在 Java 中,可以通过 Class 类的 getName() 方法获取一个类的全路径名,例如:
```java
Class<?> clazz = String.class;
String className = clazz.getName();
System.out.println(className); // 输出 java.lang.String
```
这里以 String 类为例,获取它的全路径名为 java.lang.String。需要注意的是,getName() 方法返回的是一个字符串,表示该类的全限定名,即包名和类名的完整路径。
相关问题
java如何获取class对象全路径名
Java 中获取 Class 对象的全路径名也可以使用 Class.getName() 方法,例如:
```java
Class<?> clazz = String.class;
String className = clazz.getName();
System.out.println(className); // 输出 java.lang.String
```
这里以 String 类为例,获取它的全路径名为 java.lang.String。需要注意的是,getName() 方法返回的是一个字符串,表示该类的全限定名,即包名和类名的完整路径。
在controller里 获取类全路径
在controller里获取类全路径可以通过Java反射机制实现。首先,我们需要获取当前controller的类对象,可以通过Spring的@controller注解获取,或者通过类名反射获得。然后,通过调用Class的getName方法即可获取全限定类名。
具体步骤如下:
1. 在controller类上使用@SpringBootAnnotation或@Controller注解标注该类,使之成为Spring的一个bean。
2. 获取当前类对象,可以使用以下方法:
- 使用this.getClass()获取当前对象的类对象;
- 使用类的静态方法Class.forName("类名")获取类对象。
3. 通过类对象调用getName方法获取该类的全限定名。
实现代码如下:
```
@RestController
@RequestMapping("/api")
public class DemoController {
@GetMapping("/className")
public String getClassName() {
Class clazz = this.getClass();
String className = clazz.getName();
return className;
}
}
```
以上代码实现了在DemoController中获取该类的全限定名。