当前位置: 首页 > news >正文

java sw,java-项目环境隔离实现

实现为参考开源项目https://github.com/shuzheng/zheng.git,很不错的项目

1.demo结构

48e5520539b720fe9d736c6b803d0f6b.png

2.pom中添加web项目各种包,重点在下面,profiles节点用来配置需要的环境,build --> filters读取profile中的env加载指定的配置文件

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

4.0.0

com.test.group

mvnprofile

war

0.0.1-SNAPSHOT

mvnprofile Maven Webapp

http://maven.apache.org

1.7

4.2.1.RELEASE

1.7.12

UTF-8

taglibs

standard

1.1.2

dev

dev

true

test

test

prod

prod

zheng-upms-server

src/main/resources/profiles/${env}.properties

src/main/resources

true

org.eclipse.jetty

jetty-maven-plugin

9.2.7.v20150116

3

/

1111

automatic

org.apache.maven.plugins

maven-surefire-plugin

2.18.1

true

true

3.新建springMVC-servlet.xml测试配置是否生效

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:mvc="http://www.springframework.org/schema/mvc"

xmlns:context="http://www.springframework.org/schema/context"

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd

http://www.springframework.org/schema/mvc

http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

4.confi.properties文件内容

app.name=${app.name}

env=${profile.env}

5.dev.properties文件中的内容

profile.env=dev

app.name=xxxx-web-dev

zheng.ui.path=http://xxxxx:1000/

6.执行maven打包命令,默认会使用dev模式,指定打包的环境信息使用,mvn clean package -P test即可打包指定环境配置的包

7.打包后解压查看xml文件中的占位符会被替换为指定环境的参数

相关文章:

  • 提取不同站点下的列表内容
  • java web 服务器地址,Java web服务器内运用URLRewrite进行地址转向
  • 2008,北京读者见面会即将举行
  • 非有限结果matlab,在MATLAB中求解非线性有限元
  • 关于自动化测试的一些思考。
  • php微信小程序选项跳转,实现微信小程序路由跳转指定页面的代码实例
  • matlab图源代码,[转载]常用的一些图像处理Matlab源代码
  • 奇虎郑文彬:还原系统保护技术原理和攻防
  • php websocket class,server.php
  • 腾讯李旬保:WASL-Web应用安全的思考
  • java哈希映射干什么的,java 弱哈希映射表WeakHashMap原理
  • Java多线程Jdbc,java - jdbctemplate.batchupdate是多线程还是并发? - 堆栈内存溢出
  • 微软禇诚云:软件安全漏洞与软件开发
  • php怎么将二维数组倒置,如何在PHP中旋转二维数组90度
  • php小项目实例试题,lamp小项目实施题目及参考答案
  • 【挥舞JS】JS实现继承,封装一个extends方法
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • 5、React组件事件详解
  • Flannel解读
  • Github访问慢解决办法
  • Js基础知识(一) - 变量
  • Objective-C 中关联引用的概念
  • ReactNativeweexDeviceOne对比
  • Spring-boot 启动时碰到的错误
  • Spring框架之我见(三)——IOC、AOP
  • ubuntu 下nginx安装 并支持https协议
  • yii2中session跨域名的问题
  • 阿里云Kubernetes容器服务上体验Knative
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 免费小说阅读小程序
  • 通过git安装npm私有模块
  • 自动记录MySQL慢查询快照脚本
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • UI设计初学者应该如何入门?
  • 树莓派用上kodexplorer也能玩成私有网盘
  • #Linux(Source Insight安装及工程建立)
  • $.ajax中的eval及dataType
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (转)原始图像数据和PDF中的图像数据
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .NET Core Web APi类库如何内嵌运行?
  • .NET Framework 4.6.2改进了WPF和安全性
  • .NET开源项目介绍及资源推荐:数据持久层
  • .NET框架类在ASP.NET中的使用(2) ——QA
  • .NET中winform传递参数至Url并获得返回值或文件
  • .stream().map与.stream().flatMap的使用
  • [20190113]四校联考
  • [Android]如何调试Native memory crash issue
  • [AutoSar]状态管理(五)Dcm与BswM、EcuM的复位实现
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]
  • [c++] 什么是平凡类型,标准布局类型,POD类型,聚合体
  • [English]英语积累本
  • [ESP32] 编码旋钮驱动