java - 如何将数组作为注释参数传递?

标签 java arrays annotations argument-passing

我有以下类(class)。

public class MultipartFileWrapper {
    @Extensions({".jpg",".png",".gif",".bmp",".mp4"})
    MultipartFile multipartFile;  
    ...
}

现在我想将格式提取为常量。 但我不明白如何替换

@Extensions({".jpg",".png",".gif",".bmp",".mp4"})

如果我有数组

String[] validFormats

其中包含列出的格式。我想写这样的东西:

public class MultipartFileWrapper {
        @Extensions(validFormats)
        MultipartFile multipartFile;  
        ...
    }

最佳答案

现在我明白了你的问题...也许你可以在类里面尝试这个方法:

public String[] getExtensions()throws NoSuchFieldException, SecurityException{
    return MultipartFileWrapper.class.getDeclaredField("multipartFile").getAnnotation(Extensions.class).value();
}

调用该方法并获取“注释”值

关于java - 如何将数组作为注释参数传递?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28417310/

相关文章:

java - 多次调用 Method/Field.getAnnotation(Class) 与在 Map 中预缓存此数据的性能

java - 如何使用可扩展的解决方案从 java 中非常大的文件中查找唯一记录?

Javac 未被识别为内部或外部命令

python - 在python中将win32ui DataBitmap转换为数组

php - PDO 中的操作数选择

C++ 空终止对象数组

ios - 在 Swift 中构建地理定位

c# - 为什么 Resharper/Jetbrains [NotNull] 注释接口(interface)会警告我 nullreferenceexceptions?

java - ClassNotFoundException : com. allen_sauer.gwt.log.client.WrappedClientThrowable

java - JPA:消息+通知数据库架构