借助Maven为项目划分development,test,production环境
原文地址:http://melin.iteye.com/blog/1339060
很早学习rails的时候,rails在服务器启动的时候,通过参数可以切换不同运行环境。也许spring从rails吸取了这样的功能,从spring3.1就提供了profile功能,方便我们为不同的profile使用不同的bean。能够想到的应用场景就是数据源的配置,在production profile中,可能通过jndi获取数据源,而在开发环境中配置jndi比较费事,使用durid配置数据源,项目发布的时候需要修改数据源的配置,比较麻烦,如果忘记修改就更惨了。 为了解决这样相关的问题,这里使用maven profile和maven resource plugin为项目提供profile功能。
spring profile实例:
这里我主要解决项目中三个应用场景:
1:资源文件配置,每个环境下的属性值可能不同
2:日志文件配置,开发环境下日志只需要在控制台显示,而production profile中是需要打到日志文件中。
3:使用maven切换spring profile。
完成上述功能,最主要是在pom.xml文件中添加如下一段配置:
这样maven搜索src/main/resources下的所有文件,替换有类似这样变量${profiles.active}的值,其中profiles.active中的值是配置pom.xml文件,如下:
上面配置三种profile,默认激活development profile。
为了解决资源文件的问题,我们提供三个资源文件,命名如下。logback-和.xml中间的值为profiles.active的值。
spring property-placeholder引用资源文件的方式如下。
为了解决日志文件的问题,这里使用了logback,和资源文件一样提供四个配置文件。
在classpath下添加logback.xml。logback默认加载classpath下的logback.xml文件,配置内容如下:
激活spring profile,只要在web.xml中添加如下配置:
一文搞懂Java项目工程管理神器——Maven 在日常的Java项目开发当中,构建一个通用、合理、统一的项目工程框架,一直是很多程序员头疼的事情。 要解决这个问题,我们就不得不提到Maven这个Java工具了。 本文会详细分享Maven,并在文章内分享代码实例。
Mybatis学习(一):Maven工程部署Mybatis项目 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程,换句话说就是补了JDBC的坑,让操作数据库变得更方便。
相关文章
- Maven 多项目依赖,需要验证artifact的output root中是否包含其他项目输出
- Maven 如何将本地的项目发布到 Archiva 中
- Maven-在eclipse创建maven项目
- MyEclipse管理部署Maven项目 供调试
- 如何使用maven优雅地管理项目版本号
- 在Eclipse中创建Maven多模块工程的例子
- 在idea中使用maven的webapp 模板创建spring mvc项目-1(推荐使用)
- 使用maven命令创建web项目
- maven学习(中)- 私服nexus搭建
- 创建maven父项目以及子项目
- Intellij idea操作maven时控制台中文乱码
- DEA中MAVEN项目有多个子目录,如何加载构建
- JDK7的maven项目切换到JDK8全纪录
- eclipse导入SVN上的Maven多模块项目
- maven(1)------使用myeclipse构建maven项目
- apache maven安装教程
- Maven依赖仲裁
- maven插件的生命周期的详细说明(两)
- eclipse中maven项目交付svn忽略配置文件
- Android配置maven阿里云镜像
- Java fastJson的maven配置以及下载使用方法及相关文档
- idea处理maven项目jar包冲突,及idea重新刷新maven依赖
- idea把项目模块添加到maven管理 & Structure中添加模块【我】
- maven项目新检出后不编译爬坑记 及 mvn clean package报错 WagonTransporterFactory: java.util.NoSuchElementException 异常【我】
- Maven项目打包成可执行Jar文件
- 如何优雅地修改多模块maven项目中的版本号?