浅谈xml配置spring profiles的几个注意点
作者:bluehtt 时间:2022-07-20 15:20:09
先贴正确配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:task="http://www.springframework.org/schema/task"
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/aop http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<aop:aspectj-autoproxy></aop:aspectj-autoproxy>
<task:annotation-driven/>
<import resource="spring-datasource.xml"/>
<import resource="spring-hessian-server.xml"/>
<import resource="spring-remoting-dis.xml"/>
<import resource="spring-remoting-worldeye.xml"/>
<import resource="spring-activemq.xml"/>
<import resource="spring-cxf-client.xml"/>
<!-- 开发配置 -->
<beans profile="dev">
<context:property-placeholder location="classpath:config/application.properties, classpath:config/application-dev.properties"/>
<import resource="spring-hadoop-dev.xml"/>
</beans>
<!-- 测试配置 -->
<beans profile="test">
<context:property-placeholder location="classpath:config/application.properties, classpath:config/application-prd.properties, classpath:config/application-test.properties"/>
<import resource="spring-hadoop-test.xml"/>
</beans>
<!-- 线上配置 -->
<beans profile="prd">
<context:property-placeholder location="classpath:config/application.properties, classpath:config/application-prd.properties"/>
<import resource="spring-hadoop.xml"/>
</beans>
</beans>
一. xml标签的xsd版本
spring-beans.xsd 文件不要指定版本,也可以使用高版本(起码是3.1),原因是 spring profile 是3.1版本开始的。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
......
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
二. dispatcherServlet文件配置
web.xml中配置了 DispatcherServlet 的 contextConfigLocation,需要在 spring-dispatch.xml 添加 spring profile 的配置,配置项同上。
<!-- profile配置 -->
<context-param>
<param-name>spring.profiles.active</param-name>
<param-value>prd</param-value>
</context-param>
<!-- Spring配置 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:config/spring/spring-context.xml
classpath:config/spring/spring-security.xml
</param-value>
</context-param>
......
<!-- Spring Dispatcher配置 -->
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:config/spring/spring-hessian-server.xml
classpath:config/spring/spring-dispatch.xml
classpath:config/spring/spring-security.xml
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
来源:https://segmentfault.com/a/1190000019853729
标签:xml,spring,profiles
0
投稿
猜你喜欢
C#获取远程XML文档的方法
2023-06-26 17:41:16
基于Java实现经典蜘蛛纸牌游戏
2021-09-06 15:22:57
聊聊Java 中的线程中断
2021-05-31 02:04:30
java基础(System.err和System.out)详解
2022-10-23 23:27:37
Android使用glide加载gif动画设置播放次数
2022-06-20 03:59:46
C#实现扫描枪扫描二维码并打印(实例代码)
2023-02-26 18:02:56
Java 的 FileFilter文件过滤与readline读行操作实例代码
2022-04-09 07:22:53
Springmvc模式上传和下载与enctype对比
2022-11-08 09:14:17
java整合SSM框架的图文教程
2023-03-11 01:06:30
Android选择图片或拍照图片上传到服务器
2022-12-15 01:48:41
Android自定义控件实现按钮滚动选择效果
2023-04-02 09:42:02
C++ 中String 替换指定字符串的实例详解
2021-06-05 19:08:23
Java进程间通信之消息队列
2023-05-24 01:44:27
ArrayList和LinkedList的区别、扩容机制以及底层的实现方式
2023-11-27 01:26:57
C# Timer控件学习之使用Timer解决按钮幂等性问题
2021-07-07 11:26:09
Android下拉刷新与轮播图滑动冲突解决方案
2021-08-12 12:30:40
ES结合java代码聚合查询详细示例
2022-08-31 01:23:29
Android画板开发之撤销反撤销功能
2023-11-28 10:08:37
Android显示GIF图片实例代码
2021-10-14 16:47:03
Spring+EHcache缓存实例详解
2023-12-12 20:27:51