其他分享
首页 > 其他分享> > Spring Application Context:如何将类的构造函数参数设置为类静态成员变量?

Spring Application Context:如何将类的构造函数参数设置为类静态成员变量?

作者:互联网

在应用程序上下文XML文件中,如何为静态类成员设置构造函数参数?

例如,我正在使用Restlet,并且Restlet的一个类名为ChallengeAuthenticator接收挑战方案成员变量.

// Normal Initialization
ChallengeAuthenticator challengeAuthenticator = new ChallengeAuthenticator(
                null, ChallengeScheme.HTTP_BASIC, "WSRealm");

如果可能,我想在应用程序上下文中使用它.对于这样的事情:

<bean id="challengeAuthenticator" class="org.restlet.security.ChallengeAuthenticator">
  <!-- Not meant to be String for value just trying to make it easier to reader to interpret my question -->  
  <constructor-arg value="ChallengeScheme.HTTP_BASIC" />
</bean>

解决方法:

最简单的方法是使用Spring Expression Language

<constructor-arg value="#{ T(ChallengeScheme).HTTP_BASIC }" />

请注意,您需要在T(…)中使用完整的类名.

标签:applicationcontext,static-members,restlet-2-0,spring
来源: https://codeday.me/bug/20191127/2073790.html