Spring程序读取Cloud Foundry服务信息示例代码
2015-04-30 10:01
519 查看
Cloud Foundry提供的服务实例本质上就是访问信息:IP、端口、用户名、密码等,使用的过程当然可以写死在代码或配置文件里,但是高级一点儿的办法当然是让程序可以自动按照环境适配服务实例信息,切换数据库,消息中间件,云存储等代码连接的位置。这篇先写一下在web.xml里配置了listener的spring程序如何自动获取CF的服务实例信息,示例代码由Maven管理。
在web.xml里配置了以下listener的spring程序,PaaS里绑定的服务信息可以被自动获取,只需要在context配置文件中使用指定的语法定义bean即可。
比如,要使用redis服务,只需在context配置文件中定义如下:
然后在程序中使用下面的代码,即可获得绑定了的redis服务信息:
针对redis,这个bean可以直接通过spring-data-redis进行操作。
由于Spring与Cloud Foundry及其相关服务(如Redis)的兼容问题,不同版本的spring库可能导致兼容性问题,比如spring 3.2.8和spring-cloud 1.0.0放在一起会导致绑定了redis服务的程序无法在PaaS上启动。确保可兼容的版本可参见样例程序(是个Maven工程)的pom.xml。
在web.xml里配置了以下listener的spring程序,PaaS里绑定的服务信息可以被自动获取,只需要在context配置文件中使用指定的语法定义bean即可。
<listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
比如,要使用redis服务,只需在context配置文件中定义如下:
<cloud:redis-connection-factory id="redisConnectionFactory"/>
然后在程序中使用下面的代码,即可获得绑定了的redis服务信息:
@Autowired(required=false) RedisConnectionFactory redisConnectionFactory; Hostname = ((JedisConnectionFactory) redisConnectionFactory).getHostName(); Port = ((JedisConnectionFactory) redisConnectionFactory).getPort());
针对redis,这个bean可以直接通过spring-data-redis进行操作。
由于Spring与Cloud Foundry及其相关服务(如Redis)的兼容问题,不同版本的spring库可能导致兼容性问题,比如spring 3.2.8和spring-cloud 1.0.0放在一起会导致绑定了redis服务的程序无法在PaaS上启动。确保可兼容的版本可参见样例程序(是个Maven工程)的pom.xml。
相关文章推荐
- 在ASP.NET AJAX中使用应用程序服务和本地化(4):示例程序:读取、修改并保存用户个性化信息
- 读取数据库信息构建视图字段的备注信息,方便程序代码生成
- ASP.NET中读取XML文件信息的4种方法与示例代码
- ASP.NET中读取XML文件信息的4种方法与示例代码
- 读取数据库信息构建视图字段的备注信息,方便程序代码生成
- 在Eclipse和STS集成Cloud Foundry开发环境,spring + MongoDB 示例代码演示部署(二)
- 使用spring工厂读取property配置文件示例代码
- 读取数据库信息构建视图字段的备注信息,方便程序代码生成
- ASP.NET中读取XML文件信息的4种方法与示例代码
- java读取其他服务接口返回的json数据示例代码
- Android获取apk程序签名信息代码示例
- 在Eclipse和STS集成Cloud Foundry开发环境,spring + MongoDB 示例代码演示部署(一)
- ASP.NET中读取XML文件信息的4种方法与示例代码
- linux中读取网卡信息(ip, mask, mac)以及判断物理网线是否插好的C程序---我亲自试了一下,还不错!
- 在QT5中读取中文文本文件的示例代码
- 创建系统服务 代码示例
- 如何在spring中读取properties配置文件里面的信息
- LigerUi中下拉框一级树tree数据库读取代码示例!
- Nuva 示例代码(每日一帖)之 添加版权信息
- 我工作这几年(五)-- 在代码中加入一些关键统计信息来实时监控程序的运行状态