使用maven、jaxb等技术构建可配置编译打包及可配置项目运行
一、说在前面
apache ant是以个非常流行的项目构建打包开源工具。在很长一段时间里,ant简化了我们项目构建打包的过程,使得我们项目部署的速度有了大幅的提升。
然而,熟悉ant使用的朋友可能与我都有一个切身的感受:当我们在使用ant进行项目构建打包时,由于要分不同的环境(如:开发环境、测试环境、生产环境),构建打包的项目在不同环境中运行,所要加载的配置文件不同,因此,我们通常会将不同环境的配置文件放置多分,在打包的时候修改build.xml拷贝不同的配置,最终打包到war中。这种打包方式极为不便,我们期望有一种更简便的构建打包方式,不需要频繁修改build.xml,就能分别打出不同环境的war包。maven的出现为我们实现这个期望带来了希望。
本文就结合eclipse、maven eclipse插件、jaxb技术,实现不同环境情况下的灵活打包。
二、约定:
1、存在的运行环境有:测试环境与正式环境,分别用test与real两个关键字表示
2、文章假定您掌握了maven的使用,并且已经安装配置好了maven环境
3、文章假定您已经安装好了eclpse,并安装了eclipse maven插件
4、文章假定您理解xml与jaxb之间的关系
5、文章假定您理解xml文件与xsd文件之间的关系
三、设计与实现
1、创建maven web项目
2、创建相关配置文件(test.properties、real.properties、config.xml)
3、编辑相关配置文件内容
4、设置编译打包不同环境的配置文件
5、生成config.xml对应的config.xsd
6、生成config.xml对应的jaxb(通过config.xsd生成)
7、清除多余文件,并拷贝部署配置文件到特定目录
8、加入servlet-api.jar,并创建Servlet Listener类,用于加载config.xml配置
9、创建jsp用于读取配置
index.jsp:
10、设定与配置打包插件
pom.xml:
2、测试环境编译打包后部署运行的效果图:
3、正式环境编译打包后部署运行的效果图:![]()