java - Jenkins:为不同的 URL 部署不同的 applicationContext

标签 java spring jenkins web-deployment

我使用 Jenkins 将我的应用程序部署到两个环境:工作和测试。

问题:工作和测试环境必须使用不同的数据库。

我使用 Spring 并在 applicationContext.xml 中定义数据库路径。

  1. 如何根据部署路径部署两个不同的应用程序上下文?
  2. 是否可以仅在 Jenkins 的帮助下完成?

最佳答案

我想解决你的主要问题

Work and test environment must use different databases.

您应该使用 Spring 配置文件并定义多个数据源(如果需要,还可以定义其他 bean)quick example

然后,您可以使用不同的命令行 Spring 的配置文件参数 -Dspring.profiles.active=<your-profile,your-another-profile,etc> 来运行您的应用程序或在 web.xml 中指定它们example

Useful Spring blog post

希望这有帮助。

关于java - Jenkins:为不同的 URL 部署不同的 applicationContext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20608070/

相关文章:

Java 通用函数 : Define a set of classes generic object must be

spring - @Cacheable 无法更新

mysql - 从每组中选择前 N 行,第一个最大行,相差一列(Spring、Hibernate、JPQL)

jenkins - 如何将 'git describe' 的输出获取到 Jenkins 构建名称中

java - 编辑: How do I set variables in a Project pom from a Maven Plugin?

java - 在 Ant 中为 jUnit 任务设置编码

java - 在找到解决方案之前 BFS 队列为空

java - inconsolata 和 netbeans

java - 在应用程序代码中使用 Spring 框架异常?

Jenkins:即使构建失败,管道也始终返回 "SUCCESS"