在 RestTemplate 中链接端点
Linking endpoint in RestTemplate
我编写了一个通过 Spring 的 RestTemplate 调用服务的应用程序。
当我直接调用 URL http://localhost:8081/index/myservice
时它工作正常。
我尝试使用 application.properties
配置端点,我如何 link 它到调用 URL 的方法?就像现在一样,它没有任何效果。
application.properties
app.endpoint = http://localhost:8081/index/
我想直接调用 app.endpoint
而不是写 URL。
更新:ApplicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- Rest Template -->
<bean id="restTemplate" class="org.springframework.web.client.RestTemplate">
</bean>
<bean id="properties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list><value>classpath:application.properties</value></list>
</property>
因此要从方法中调用 URL:您可以像这样使用 @Value 注释:
@Value("${app.endpoint}")
private String appEndpoint;
你XML中的配置:
<context:property-placeholder location="classpath:placeholder.properties"/>
HTH,
吉安
我编写了一个通过 Spring 的 RestTemplate 调用服务的应用程序。
当我直接调用 URL http://localhost:8081/index/myservice
时它工作正常。
我尝试使用 application.properties
配置端点,我如何 link 它到调用 URL 的方法?就像现在一样,它没有任何效果。
application.properties
app.endpoint = http://localhost:8081/index/
我想直接调用 app.endpoint
而不是写 URL。
更新:ApplicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- Rest Template -->
<bean id="restTemplate" class="org.springframework.web.client.RestTemplate">
</bean>
<bean id="properties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list><value>classpath:application.properties</value></list>
</property>
因此要从方法中调用 URL:您可以像这样使用 @Value 注释:
@Value("${app.endpoint}")
private String appEndpoint;
你XML中的配置:
<context:property-placeholder location="classpath:placeholder.properties"/>
HTH, 吉安