Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用properties中的Spring@值设置注释属性_Java_Spring - Fatal编程技术网

Java 如何使用properties中的Spring@值设置注释属性

Java 如何使用properties中的Spring@值设置注释属性,java,spring,Java,Spring,我试图使用Spring@Value在注释中设置一个属性,但我发现类型不匹配:无法从值转换为字符串。以下是我尝试过的: @Table(name = "myTable", catalog = @Value("${database.myCatalog}") ) 可能吗?如果是,怎么做?我想您对Spring如何使用该注释有点困惑 据我所知,唯一的办法就是设置注释 此外,为了让Spring解决这个问题,POJO必须是一个Spring管理的bean。这意味着必须在要解决的Spring(Web)Applic

我试图使用Spring
@Value
在注释中设置一个属性,但我发现
类型不匹配:无法从值转换为字符串。以下是我尝试过的:

@Table(name = "myTable", catalog = @Value("${database.myCatalog}") )

可能吗?如果是,怎么做?

我想您对Spring如何使用该注释有点困惑

据我所知,唯一的办法就是设置注释

此外,为了让Spring解决这个问题,POJO必须是一个Spring管理的bean。这意味着必须在要解决的Spring(Web)ApplicationContext实现中定义它


您的问题似乎是在注释一个JPA实体,它不是Springbean,而是您正在使用的JPA实现(例如Hibernate)要使用的类。

您是对的,当然实体不是Springbean。在那个注释中,除了文字值,我看到我可以使用另一个类的静态final字段。我可以在容器启动时从构造函数中设置该字段,但最终的要求不能放松。因此,如果我想在源代码之外配置该值,我找到的唯一解决方案就是声明两个持久性上下文。