spring怎么读取xml文件(java 请问下SpringMVC中Spring是怎么去解析XML)

2025-08-14 03:15:02 0

spring怎么读取xml文件(java 请问下SpringMVC中Spring是怎么去解析XML)

其实spring怎么读取xml文件的问题并不复杂,但是又很多的朋友都不太了解java 请问下SpringMVC中Spring是怎么去解析XML,因此呢,今天小编就来为大家分享spring怎么读取xml文件的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

本文目录

java 请问下SpringMVC中Spring是怎么去解析XML

spring使用了jdk自带的jaxp解析技术,没有使用dom4j,所以spring工程里面也并没有依赖dom4j的jar。你可以看看XmlBeanDefinitionReader中的documentLoader属性,使用了DefaultDocumentLoader类来初始化的,DefaultDocumentLoader中的引用(import)都是JDK自带的类,DefaultDocumentLoader是spring用来解析xml的类。

spring读取不到applicationContext.xml文件 项目里build了junit包,但是还是不能用@Test 多谢大神了!

  1. 第一种方式:路径修改为/com/test/applicationContext.xml

  2. 第二种方式:把config设为源码目录,config文件夹右键-Build Path-Use as Source Folder

Spring中加载XML文件的方式

  spring 中加载xml配置文件的方式 好像有 种 xml是最常见的spring 应用系统配置源 Spring中的几种容器都支持使用xml装配bean 包括

  XmlBeanFactory

  ClassPathXmlApplicationContext

  FileSystemXmlApplicationContext

  XmlWebApplicationContext

  一 XmlBeanFactory 引用资源

  Resource resource = new ClassPathResource( appcontext xml )

  BeanFactory factory = new XmlBeanFactory(resource)

  二 ClassPathXmlApplicationContext 编译路径

  ApplicationContext factory=new ClassPathXmlApplicationContext( classpath:appcontext xml )

  ApplicationContext factory=new ClassPathXmlApplicationContext( appcontext xml ) // src目录下的

  ApplicationContext factory=new ClassPathXmlApplicationContext( conf/appcontext xml ) // src/conf 目录下的

  ApplicationContext factory=new ClassPathXmlApplicationContext( file:G:/Test/src/appcontext xml )

  三 : 用文件系统的路径

  ApplicationContext factory=new FileSystemXmlApplicationContext( src/appcontext xml )

  //使用了 classpath: 前缀 作为标志 这样 FileSystemXmlApplicationContext 也能够读入classpath下的相对路径

  ApplicationContext factory=new FileSystemXmlApplicationContext( classpath:appcontext xml )

  ApplicationContext factory=new FileSystemXmlApplicationContext( file:G:/Test/src/appcontext xml )

  ApplicationContext factory=new FileSystemXmlApplicationContext( G:/Test/src/appcontext xml )

  四 XmlWebApplicationContext 是专为Web工程定制的

  ServletContext servletContext = request getSession() getServletContext()

lishixinzhi/Article/program/Java/ky/201311/28211

如何使用spring解析xml文件

Spring框架从2.0版本开始,提供了基于Schema风格的XML扩展机制,允许开发者扩展最基本的spring配置文件(一般是classpath下的spring.xml)。试想一下,如果我们直接在spring.xml中加入一个自定义标签《mytag id="aty"》《/matag》,会发生什么呢?spring框架启动的时候会报错,因为spring根本不认识我们自定义的《mytag》,这样对spring.xml的校验就会失败,最终结果就是框架不能启动。有什么方法,能够让spring认识并加载解析我们自定义的《mytag》呢?这就是spring提供的xml扩展机制。我们可以在spring.xml中加入自己的标签,之后spring会帮我们解析并纳入自己的管理范围内,这也就是说我们扩展了spring的功能。
现在我们来看下怎么实现这个功能,可以参考spring帮助文档中的extensible-xml.html。我们知道如果在需要在spring.xml中配置数据源,需要进行如下的配置:
《bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"》
《property name="driverClassName" value="com.mysql.jdbc.Driver" /》
《property name="url" value="jdbc:mysql://localhost:3309/sampledb" /》
《property name="username" value="root" /》
《property name="password" value="1234" /》
《/bean》

如何让是spring启动时加载一个类这里类实现了读取xml配置数据到内存中(不是属性文件)

《bean id="readXmlService" class="com.xxx.xxx.readXmlServiceImpl" init-method="init"》《/bean》

这样配置你的读取xml的服务,spring框架会在启动的时候自动跑 readXmlServiceImpl中的init方法,所以你只要将读取xml的过程放到init方法里,那在spring启动的时候就会自动将xml中数据读取到内存中。

文章分享结束,spring怎么读取xml文件和java 请问下SpringMVC中Spring是怎么去解析XML的答案你都知道了吗?欢迎再次光临本站哦!

spring怎么读取xml文件(java 请问下SpringMVC中Spring是怎么去解析XML)

本文编辑:admin

更多文章:


vbnet连接sql数据库实例(请各位大侠给出用VB.NET连接oracle数据库并执行sql查询语句的代码示例,谢谢!!)

vbnet连接sql数据库实例(请各位大侠给出用VB.NET连接oracle数据库并执行sql查询语句的代码示例,谢谢!!)

大家好,关于vbnet连接sql数据库实例很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于请各位大侠给出用VB.NET连接oracle数据库并执行sql查询语句的代码示例,谢谢!!的知识点,相信应该可以解决大家的一些困惑和问

2026年7月21日 09:15

python编程实例详解(python函数变量及代码利用是什么python函数变量及代码利用说明)

python编程实例详解(python函数变量及代码利用是什么python函数变量及代码利用说明)

大家好,python编程实例详解相信很多的网友都不是很明白,包括python函数变量及代码利用是什么python函数变量及代码利用说明也是一样,不过没有关系,接下来就来为大家分享关于python编程实例详解和python函数变量及代码利用是

2025年8月3日 06:00

vb 全局数组 如何在子过程里定义全局性的数组,在主函数里可以使用?在java中定义了一个二维数组,int[][] a = null;a[1] = new int[]{1,2,3};这样定义对不对

vb 全局数组 如何在子过程里定义全局性的数组,在主函数里可以使用?在java中定义了一个二维数组,int[][] a = null;a[1] = new int[]{1,2,3};这样定义对不对

大家好,今天小编来为大家解答以下的问题,关于子数组定义,vb 全局数组 如何在子过程里定义全局性的数组,在主函数里可以使用这个很多人还不知道,现在让我们一起来看看吧!本文目录vb 全局数组 如何在子过程里定义全局性的数组,在主函数里可以使用

2026年6月28日 01:00

已知大写字母a的ascii码值十进制(已知大写字母a的ASCII码值十进制表示为65那么asii码值为十进制数68的字母是)

已知大写字母a的ascii码值十进制(已知大写字母a的ASCII码值十进制表示为65那么asii码值为十进制数68的字母是)

“已知大写字母a的ascii码值十进制”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看已知大写字母a的ascii码值十进制(已知大写字母a的ASCII码值十进制表示为65那么asii码值为十进制数68的字母是)!本文目录已知

2026年8月11日 21:30

struts2拦截器和过滤器的区别(struts2拦截器的作用是什么(它拦截什么)过滤器的作用是什么呢(过滤什么))

struts2拦截器和过滤器的区别(struts2拦截器的作用是什么(它拦截什么)过滤器的作用是什么呢(过滤什么))

本篇文章给大家谈谈struts2拦截器和过滤器的区别,以及struts2拦截器的作用是什么(它拦截什么)过滤器的作用是什么呢(过滤什么)对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以

2025年6月18日 21:15

sql语句优化面试(面试问到 数据库性能优化 怎么回答 我是Oracle数据库)

sql语句优化面试(面试问到 数据库性能优化 怎么回答 我是Oracle数据库)

本篇文章给大家谈谈sql语句优化面试,以及面试问到 数据库性能优化 怎么回答 我是Oracle数据库对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

2025年7月30日 02:15

commerce和commercial的区别(commercial名词)

commerce和commercial的区别(commercial名词)

大家好,今天小编来为大家解答以下的问题,关于commerce和commercial的区别,commercial名词这个很多人还不知道,现在让我们一起来看看吧!本文目录commercial名词请问Finance,Economics和Accou

2026年7月6日 01:00

shell脚本写加减乘除运算(用shell做个加减乘除运算)

shell脚本写加减乘除运算(用shell做个加减乘除运算)

其实shell脚本写加减乘除运算的问题并不复杂,但是又很多的朋友都不太了解用shell做个加减乘除运算,因此呢,今天小编就来为大家分享shell脚本写加减乘除运算的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录用

2025年6月20日 21:30

keystone蝶阀中国代理(美国泰科TYCO阀门授权代理商)

keystone蝶阀中国代理(美国泰科TYCO阀门授权代理商)

“keystone蝶阀中国代理”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看keystone蝶阀中国代理(美国泰科TYCO阀门授权代理商)!本文目录美国泰科TYCO阀门授权代理商keystone蝶阀在工业领域中的作用是什么

2025年9月8日 02:45

eraser的发音音标(eraser音标怎么读音是什么)

eraser的发音音标(eraser音标怎么读音是什么)

其实eraser的发音音标的问题并不复杂,但是又很多的朋友都不太了解eraser音标怎么读音是什么,因此呢,今天小编就来为大家分享eraser的发音音标的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录eraser

2025年12月5日 21:45

writeline在c井(怎样在visual studio 2008中的c#控制台中用console.writeline语句输出一个字符数组用foreach循环怎么写)

writeline在c井(怎样在visual studio 2008中的c#控制台中用console.writeline语句输出一个字符数组用foreach循环怎么写)

各位老铁们,大家好,今天由我来为大家分享writeline在c井,以及怎样在visual studio 2008中的c#控制台中用console.writeline语句输出一个字符数组用foreach循环怎么写的相关问题知识,希望对大家有所

2025年8月7日 09:30

日期型的函数datediff(datediff函数怎么用啊)

日期型的函数datediff(datediff函数怎么用啊)

大家好,如果您还对日期型的函数datediff不太了解,没有关系,今天就由本站为大家分享日期型的函数datediff的知识,包括datediff函数怎么用啊的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录dated

2025年12月17日 06:15

定义字符串用什么(汇编中定义字符串为什么用DB)

定义字符串用什么(汇编中定义字符串为什么用DB)

其实定义字符串用什么的问题并不复杂,但是又很多的朋友都不太了解汇编中定义字符串为什么用DB,因此呢,今天小编就来为大家分享定义字符串用什么的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!本文目录汇编中定义字符串为什么用D

2025年10月13日 19:15

加拿大study permit(加拿大的STUDY PERMIT 里,签证官指定学校这句话什么意思 )

加拿大study permit(加拿大的STUDY PERMIT 里,签证官指定学校这句话什么意思 )

各位老铁们好,相信很多人对加拿大study permit都不是特别的了解,因此呢,今天就来为大家分享下关于加拿大study permit以及加拿大的STUDY PERMIT 里,签证官指定学校这句话什么意思 的问题知识,还望可以帮助大家,解

2026年8月7日 06:45

小米13发布会为何延期(小米和华为的冬季新品发布会为什么延期)

小米13发布会为何延期(小米和华为的冬季新品发布会为什么延期)

各位老铁们,大家好,今天由我来为大家分享小米13发布会为何延期,以及小米和华为的冬季新品发布会为什么延期的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本文

2026年6月3日 04:30

rank函数如何自动填充(excel根据最终得分列数据公式填充排名列数据)

rank函数如何自动填充(excel根据最终得分列数据公式填充排名列数据)

大家好,如果您还对rank函数如何自动填充不太了解,没有关系,今天就由本站为大家分享rank函数如何自动填充的知识,包括excel根据最终得分列数据公式填充排名列数据的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录

2026年3月12日 12:15

rsync协议(为什么rsync服务对应的端口显示所属进程是xinetd而非rsync)

rsync协议(为什么rsync服务对应的端口显示所属进程是xinetd而非rsync)

本篇文章给大家谈谈rsync协议,以及为什么rsync服务对应的端口显示所属进程是xinetd而非rsync对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录为什么rsync服务对应的端口显示所属进程是xinetd而非rsync

2025年11月11日 08:30

reset current branch to here(resetcurrentbranchtohere会覆盖本地代)

reset current branch to here(resetcurrentbranchtohere会覆盖本地代)

大家好,reset current branch to here相信很多的网友都不是很明白,包括resetcurrentbranchtohere会覆盖本地代也是一样,不过没有关系,接下来就来为大家分享关于reset current bran

2025年11月13日 21:30

c语言中printf与scanf的先后顺序(c语言中printf 跟scanf执行顺序颠倒)

c语言中printf与scanf的先后顺序(c语言中printf 跟scanf执行顺序颠倒)

“c语言中printf与scanf的先后顺序”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看c语言中printf与scanf的先后顺序(c语言中printf 跟scanf执行顺序颠倒)!本文目录c语言中printf 跟sca

2026年2月26日 06:00

ASP.NET MVC 4框架揭秘:Controller类型的缓存?RxCache缓存框架

ASP.NET MVC 4框架揭秘:Controller类型的缓存?RxCache缓存框架

本篇文章给大家谈谈缓存框架,以及ASP.NET MVC 4框架揭秘:Controller类型的缓存对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录ASP.NET MVC 4框架揭秘:Controller类型的缓存RxCache

2026年6月1日 06:00

近期文章

char ch用法(c语言char ch)
2026-09-24 18:45:02
本站热文

electronics软件(labcenter electronics是什么软件)
2025-05-22 23:45:02 浏览:134
博客是微博吗(博客是微博吗)
2025-05-22 22:45:01 浏览:111
diversity and distribution(悬赏英语短文)
2025-05-23 16:15:02 浏览:107
ios软件开发前景(iOS就业前景怎么样)
2025-05-22 23:00:01 浏览:102
next month(有The next month这个单词吗,和 next month有什么区别)
2025-05-23 02:30:01 浏览:102
patron(patron是什么意思)
2025-05-23 10:30:02 浏览:95
标签列表

热门搜索