Java注解获得本地时间
时间: 2023-05-28 10:05:09 浏览: 100
可以使用Java的Date类和注解来获得本地时间,具体实现如下:
```java
import java.util.Date;
import java.text.SimpleDateFormat;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.Method;
@Retention(RetentionPolicy.RUNTIME)
@interface LocalTime {
}
public class Main {
@LocalTime
public void printLocalTime() {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("Local time: " + sdf.format(date));
}
public static void main(String[] args) {
Main main = new Main();
Method[] methods = main.getClass().getMethods();
for (Method method : methods) {
LocalTime localTime = method.getAnnotation(LocalTime.class);
if (localTime != null) {
try {
method.invoke(main);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
```
在上面的代码中,我们定义了一个注解`@LocalTime`,用于标记需要获取本地时间的方法。在`printLocalTime`方法中,我们使用`Date`类和`SimpleDateFormat`类获取当前本地时间,并将其格式化为`yyyy-MM-dd HH:mm:ss`的字符串格式输出。
在`main`方法中,我们通过反射获取`Main`类中的所有方法,然后判断每个方法是否被`@LocalTime`注解所标记。如果是,则调用该方法。最终输出结果为:
```
Local time: 2022-03-02 22:44:06
```
阅读全文