spring boot中带有@preauthorize的java常量表达式

at0kjp5o  于 2021-07-05  发布在  Java
关注(0)|答案(0)|浏览(201)

因此,我尝试从应用程序属性中读取我的角色,并将它们作为没有最终产品的字符串(链接)输入到@preauthorize注解中。当字符串被硬编码时,一切正常,但当我尝试这样加载它们时就不行了。我试过别人给我的建议,但也没有结果。
我最后的办法是创建一个静态的final字符串,并将其输入到注解中。我尝试过这样的方法,但是编译器仍然不接受它,因为它不是一个常量表达式。

public static final String ADMIN;

    static {
        Properties properties= new Properties();
        InputStream inputStream = AuthRule.class.getClassLoader().getResourceAsStream("properties");
        try {
            properties.load(inputStream);
            inputStream.close();
        } catch (Exception e) {
            System.out.println("Failed");
        }

        ADMIN= properties.getProperty("role.Admin");
    }

有人知道如何使用应用程序属性创建常量表达式吗?提前感谢大家的回答和努力。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题