gpt4 book ai didi

java - 使用注释注入(inject)替换通过 XML 进行的 Spring bean 注入(inject)

转载 作者:行者123 更新时间:2023-11-30 03:32:52 25 4
gpt4 key购买 nike

我想通过注解声明并注入(inject)一个bean。之前是通过XML完成的,但是我需要在Spring Boot项目上应用。

这是源 xml

<oauth:resource-details-service id="rds">
<oauth:resource
id="oauth1"
key="${key}"
secret="${secret}"
request-token-url="${token}"
user-authorization-url="${user-auth}"
access-token-url="${accesstokenurl}">
</oauth:resource>
</oauth:resource-details-service>

这个bean后来是这样使用的

<bean class="org.springframework.security.oauth.consumer.client.OAuthRestTemplate">
<constructor-arg ref="oauth1"/>
</bean>

我发现的唯一方法是通过直接实例化

BaseProtectedResourceDetails resourceDetails = new BaseProtectedResourceDetails();
resourceDetails.set...
resourceDetails.set...
OAuthRestTemplate restTemplate = new OAuthRestTemplate(resourceDetails);

执行此操作的正确方法是什么?

最佳答案

您可以在主类中使用@Bean注释,例如:

@SpringBootApplication
public class Application{

@Bean
public OAuthRestTemplate getAuth(){
BaseProtectedResourceDetails resourceDetails = new BaseProtectedResourceDetails();
resourceDetails.set...
resourceDetails.set...

return new OAuthRestTemplate(resourceDetails);
}
}

并在使用@Autowired注入(inject)对象后

@Autowired
private OAuthRestTemplate oAuthRestTemplate;

关于java - 使用注释注入(inject)替换通过 XML 进行的 Spring bean 注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28598496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com