java - 如何将 UniqueID 作为构造函数参数传递给 spring bean

标签 java spring spring-mvc uuid

我是 Spring 的新手。我有一个 bean 类,它的构造函数只有一个参数,一个 uniqueId。

void Sample(String uniqueId){
      this.uniqueId = uniqueId;
}

bean 没有任何默认构造函数。 我需要这个 id 用于某些业务逻辑。 这个 uniqueID 需要是 UUID.randomUUID().toString()。

如何从 bean 配置 xml 将其传递给 bean。

<bean id="Sample" class="com.scribe.dao.Sample">
     <constructor-arg  value="UUID.randomUUID().toString()"/>               
</bean>

这行不通。我的其他选择是什么? 我在 stackoverflow 上的另一篇文章中也看到过这样的例子。 . <constructor-arg value="uniqueId"/> 但同样对我不起作用。有没有简单的方法可以做到这一点。 任何帮助表示赞赏。

最佳答案

您需要使用 Spring 表达式语言 (SpEL),如图所示 here

bean 定义应该如下所示

<bean id="Sample" class="com.scribe.dao.Sample">
    <constructor-arg  value="#{ T(java.util.UUID).randomUUID().toString() }"/>               
</bean>

关于java - 如何将 UniqueID 作为构造函数参数传递给 spring bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42105900/

相关文章:

java - 我如何打破这个循环?

java - 内存不足 : Java heap space

java.lang.NoClassDefFoundError : org/apache/commons/lang/text/StrLookup Exception While Running Spring Boot Application

java - 如何避免Spring批量将元数据持久化到DB中

spring - 使用 Spring Security 进行身份验证后如何基于角色进行重定向

java - 如何将 Java Web 应用程序转换为桌面 (.exe) 应用程序

Java、Spring、Apache Tiles 错误 : Could not resolve view with name 'index' in servlet with name 'dispatcher'

java - 当没有 id 时,如何在 Selenium 中单击此图像链接?

java - Spring安全注销使 session 范围对象无效,这不是必需的

java - 错误 : org. testng.TestNGException:在类路径中找不到类:EmpClass