spring application.xml在项目中的几种解析方式(正在整理中......)

Java Web项目从零部署实战:Spring Boot健身系统全流程解析 在Java Web开发领域,Spring Boot框架因其简化配置和快速启动的特性,已成为构建企业级应用的主流选择。其核心原理在于通过自动配置和约定优于配置的理念,大幅降低了传统Spring项目的复杂度,使开发者能更专注于业务逻辑实现。这一技术价值体现在快速迭代和微服务架构支持上,广泛应用于电商、管理后台、物联网平台等场景。本文以健身管理系统为例,结合Spring Boot和MySQL数据库,详细拆解从环境准备、依赖管理到服务部署的完整流程,涵盖Maven构建、Docker容器化等关键环节,为开发者提供一套 阅读详情

解析 在java项目中的spring applicationContext.xml文件的几种解析方式:
一种:
ApplicationContext cxt = new ClassPathXmlApplicationContext(“applicationContext.xml”);
cxt.getBean(“在applicationContext.xml中bean的id”);

二种:
ApplicationContext cxt =
 new FileSystemXmlApplicationContext(“applicationContext.xml的绝对路径”);
cxt.getBean(“在applicationContext.xml中bean的id”);

三种:
Resource res= new ClasspathResource(“applicationContext.xml”);
XmlBeanFactory factory = new XmlBeanFactory(res);
factory.getBean(“applicationContext.xml中的bean的id”); 

第四种:在web项目中解析applicationContext.xml,此方法本人感觉很好用,如在struts2.0+hibernate3.0+sprnig2.0中,某jsp页面须用daoImpl(业务实现类的一个方法),一般写法是在action中调用该方法,写不可以直接使用,因为所有东东都交给spring管理了,但是在原来的基础上加上以下这个类,做法就多了,我们可以在该jsp页面用<s:bean id="aa" name="org.xxxx.Gean"> <s:set name="bb" value="%{#aa.getBean('此处为applicationContext.xml中所写的daoImpl的bean的id')}"> bb就是我们所要的方法的返回值.
public class GetBean {
    private XmlBeanFactory factory;
 public GetBean()
 {
    Resource res=new ServletContextResource(ServletActionContext.getServletContext(),"/WEB-INF/transaction.xml");
    factory=new XmlBeanFactory(res);
 }
    public Object getBean(String beanname)
    {
     XmlWebApplicationContext ctx=new XmlWebApplicationContext();
     ServletContext servletcontext=ServletActionContext.getServletContext();
     ctx.setServletContext(servletcontext);
     ctx.setConfigLocations(new String[]{"/WEB-INF/transaction.xml"});
  ctx.refresh();//由servletContext初始化beanfactory需要的配置文件,进而加载该配置文件
  Object obj=ctx.getBean(beanname);
      return obj; 
    }
}

 以下为applicationContext.xml完整配置文件,供参考

- < bean id =" config " class =" org.springframework.beans.factory.config.PropertyPlaceholderConfigurer ">
- < property name =" location ">
  < value > classpath:jdbc.properties </ value >
  </ property >
  </ bean >
- < bean id =" jdbc " class =" org.springframework.jdbc.datasource.DriverManagerDataSource ">
- < property name =" url ">
  < value > ${connection.url} </ value >
  </ property >
  < property name =" driverClassName " value =" ${connection.driver_class} " />
- < property name =" username ">
  < value > ${connection.username} </ value >
  </ property >
- < property name =" password ">
  < value > ${connection.password} </ value >
  </ property >
  </ bean >
- < bean id =" sessionfactroy " class =" org.springframework.orm.hibernate3.LocalSessionFactoryBean ">
  < property name =" dataSource " ref =" jdbc " />
- < property name =" hibernateProperties ">
- < props >
  < prop key =" hibernate.dialect "> ${dialect} </ prop >
  < prop key =" hibernate.show_sql "> ${hibernate.show_sql} </ prop >
  < prop key =" hibernate.generate_statistics "> true </ prop >
  < prop key =" hibernate.cache.use_query_cache "> true </ prop >
  < prop key =" hibernate.cache.provider_class "> org.hibernate.cache.EhCacheProvider </ prop >
  </ props >
  </ property >
- < property name =" mappingDirectoryLocations ">
  < value > /WEB-INF/classes/org/itfuture/wuliu/hbm </ value >
  </ property >
- < property name =" eventListeners ">
- < map >
- < entry key =" merge ">
  < bean class =" org.springframework.orm.hibernate3.support.IdTransferringMergeEventListener " />
  </ entry >
  </ map >
  </ property >
  </ bean >
- < bean id =" transactionManager " class =" org.springframework.orm.hibernate3.HibernateTransactionManager ">
  < property name =" sessionFactory " ref =" sessionfactroy " />
  </ bean >
<!-- DAO对象注入   -->
- < bean id =" cgdddaoimpl " class =" org.itfuture.wuliu.daoimpl.CgddDaoimpl ">
  < property name =" sessionFactory " ref =" sessionfactroy " />
  </ bean >
- < bean id =" cgshddaoimpl " class =" org.itfuture.wuliu.daoimpl.CgshdDaoimpl ">
  < property name =" sessionFactory " ref =" sessionfactroy " />
  </ bean >
- < bean id =" gysdaoimpl " class =" org.itfuture.wuliu.daoimpl.GysDaoImpl ">
  < property name =" sessionFactory " ref =" sessionfactroy " />
  </ bean >
<!-- 业务层对象注入   -->
- < bean id =" cgddservice " class =" org.itfuture.wuliu.serviceimpl.CgddServiceImpl ">
  < property name =" cgdddao " ref =" cgdddaoimpl " />
  </ bean >
- < bean id =" cgshdservice " class =" org.itfuture.wuliu.serviceimpl.CgshdServiceImpl ">
  < property name =" cgshddao " ref =" cgshddaoimpl " />
  </ bean >
- < bean id =" gysservice " class =" org.itfuture.wuliu.serviceimpl.GysServiceImpl " scope =" prototype ">
  < property name =" gysdao " ref =" gysdaoimpl " />
  </ bean >
- < aop:config >
  < aop:advisor pointcut =" execution(* *..CgddDao.*(..)) " advice-ref =" txAdvice " />
  </ aop:config >
- < tx:advice id =" txAdvice ">
- < tx:attributes >
  < tx:method name =" save* " />
  < tx:method name =" update* " />
  < tx:method name =" delete* " />
  < tx:method name =" * " read-only =" true " />
  </ tx:attributes >
  </ tx:advice >
<!-- Action -->
  < bean id =" baseaction " class =" org.itfuture.wuliu.action.BaseAction " />
- < bean id =" cgddAction " class =" org.itfuture.wuliu.action.CgddAction ">
  < property name =" cgddservice " ref =" cgddservice " />
  </ bean >
- < bean id =" cgshdAction " class =" org.itfuture.wuliu.action.CgshdAction ">
  < property name =" cgshdservice " ref =" cgshdservice " />
  </ bean >
- < bean id =" gysAction " class =" org.itfuture.wuliu.action.GysAction ">
  < property name =" gysservice " ref =" gysservice " />
  </ bean >
  </ beans >

 

application.xml配置文件详解 application.xml配置文件详解 application.xml配置文件详解 application.xml配置文件详解 立即下载

相关推荐

FairyGUI编辑器自定义菜单扩展插件

本文涉及到的软件有:FairyGUI,VSCode代码环境涉及到了:LuaVSCode插件:EmmyLua在编写FairyGUI编辑器菜单前,了解一下FairyGUIEditor的API会有效的帮助我们解决很多问题。FairyGUI的扩展是通过编辑器自带的插件功能实现的,插件中我使用的是lua环境模板。导入编辑器的LuaAPI,文件可以在FairyGUI-Editor源码的插件目录中找到。接下来将通过功能来说明对应的API作用。

Aili_Xiao的博客 4496

spring的xml解析以及注解方式解析简述

xml中的信息大多都是被最终解析为bean定义注册到spring容器中 大体过程在spring容器,刷新beanFactory时【obtainFreshBeanFactory()方法】,会解析xml配置文件(beanDefinitionReader)和扫描(beanDefinitionScaner)指定包class来注册所有可加载beanDefinition beanDefinitionReader->命名空间解析器NamespaceHandlerResolver->通过xml头部的命.

沉默的夏虫 868

智慧楼宇解决方案-全套大合集

智慧楼宇解决方案,楼宇能耗-环境-设备统一管控解决方案。

byte58的博客 2590

无敌全的application.xml配置详解

<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:context="http://www

不如养猪! 1万+

富斯遥控器-ros机器人控制

富斯遥控器-ros机器人手柄控制

zkh7758的博客 1698

【CAPL实用开发】--- 使用VN1640A测试Busoff快慢恢复

使用VN1640A测试Busoff快慢恢复,包含具体的CAPL代码实现。

LabVIEW、CAPL、python、车载以太网等学习分享,文章正在写 2093

Spring中配置文件application.xml中各配置的含义

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www

z69183787的专栏 2万+

基于 Qt C++ 的战术通信终端

logMessage(QString("新客户端连接来自: %1:%2").arg(incomingTcpSocket->peerAddress().toString()).arg(incomingTcpSocket->peerPort()));logMessage(QString("服务器已启动,在 [%1]:%2 监听IPv6连接...").arg(ui->lineEditAddress->text()).arg(port));

寒寒豆豆软件公司的博客 77

Spring详解(三)

DI依赖注入 spring动态的向某个对象提供它所需要的其他对象。这一点是通过DI(Dependency Injection,依赖注入)来实现的。比如对象A需要操作数据库,以前我们总是要在A中自己编写代码来获得一个Connection对象,有了 spring我们就只需要告诉spring,A中需要一个Connection,至于这个Connection怎么构造,何时构造,A不需要知道。在系统运行时,spring会在适当的时候制造一个Connection,然后像打针一样,注射到A当中,这样就完成了对各个对象之间

m0_68006260的博客 710

VN1640 CH5 I/O通道终极指南:【从硬件原理—>工程实战—>自动化测试实战】

摘要:本文详细解析Vector VN1640 CH5 I/O通道的硬件原理与工程应用,涵盖模拟输入(AIN)、数字输入(DIN)和数字输出(DOUT)三大功能模块的配置指南。通过硬件隔离设计实现高精度信号采集与驱动控制,重点分析开漏输出特性及保护机制。提供PWM控制、ECU上电时序测试、传感器闭环控制等实战案例的CAPL脚本代码,并强调多设备同步采集的精准性(时间偏差<1µs)。适用于汽车电子HIL测试、ECU信号监测等场景,所有方案均通过实际项目验证。

汽车控制器系统开发、VIL测试、HIL测试、MIL测试、EMS电喷系统标定与开发、热管理系统标定 759

华为OD机试真题 新系统 2026-04-26 Python&JS 实现【项目模块依赖构建顺序规划】

某公司正在开发一个大型软件系统,系统包含 N 个模块,每个模块之间存在构建依赖关系。例如,模块 A 可能依赖于模块 B,这意味着必须先构建模块 B,才能构建模块 A。 请根据依赖关系,输出所有可能的模块构建顺序(按照构建顺序排列模块名称),要求:

MISAYAONE的博客 404

springBoot入门教程之application.xml

快捷键 Ctrl+/  xml配置文件注释 用application.properties代替application.yml  打印出来会乱码  

农码一生 1222

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

application/json 四种常见的 POST 提交数据方式

application/json 四种常见的 POST 提交数据方式 转载声明: 本文系转载自以下两篇文章: 四种常见的 POST 提交数据方式 作者: 沧海一滴 转载仅为方便学习查看,一切权利属于原作者,本人只是做了整理和排版,如果带来不便请联系我删除。 0x01 摘要 enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。 默认地,表单数据会编码为 “applicatio...

迷路剑客个人博客 17万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Spring Boot接收xml参数

最近工作又要做挡板,挡板的东西有点多😀,主要是因为下游是第三方收费的,提供的测试环境的数据不能随心所欲修改,只能通过挡板模拟。这次的第三方下游系统也是通过xml进行传输的,不过这次是通过http协议的post请求,请求体是xml协议。

qq_37759895的博客 3299

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

[转载] application/json 四种常见的 POST 提交数据方式

参考链接: 关于/联系我 application/json 四种常见的 POST 提交数据方式 转载声明: 本文系转载自以下两篇文章: 四种常见的 POST 提交数据方式 作者: 沧海一滴 转载仅为方便学习查看,一切权利属于原作者,本人只是做了整理和排版,如果带来不便请联系我删除。 0x01 摘要 enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。 默认地,表单数据会编码为 “application/x-www-form-urlencoded”。就是说,在发送到...

u013946150的博客 602

一文读懂 Spring Boot 配置文件 application

一般来说,我们在 application.properties 文件中主要存放系统配置,这种自定义配置不建议放在该文件中,可以自定义 properties 文件来存在自定义配置。Book 对象本身也要交给 Spring 容器去管理,如果 Book 没有交给 Spring 容器,那么 Book 中的属性也无法从 Spring 容器中获取到值。Spring Boot 引入了类型安全的属性注入,如果采用 Spring 中的配置方式,当配置的属性非常多的时候,工作量就很大了,而且容易出错。

2401_84048832的博客 431

改造springboot支持application/xml请求

改造springboot支持application/xml请求 需求说明: 由于对接,涉及到请求方使用xml做入参,特在前人的基础上进行整理,如下: 资料来源 1.导包 <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> <version>2

sinat_31707781的博客 2414

ajax请求中的contentType 4中常见的psot提交数据方式

application/json 四种常见的 POST 提交数据方式 转载声明: 本文系转载自以下两篇文章: 四种常见的 POST 提交数据方式 作者: 沧海一滴 转载仅为方便学习查看,一切权利属于原作者,本人只是做了整理和排版,如果带来不便请联系我删除。 0x01 摘要 enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。 默认地,表单数据会编码为 “applica...

逸轩的博客 851

Spring Boot项目中Jackson依赖的精准管理与实战配置指南

JSON序列化与反序列化是现代Web应用开发中的核心技术,它负责将内存中的对象转换为网络传输或存储的文本格式,反之亦然。其核心原理在于通过特定的数据绑定库,在Java对象与JSON数据结构之间建立映射关系。这项技术的价值在于实现了前后端数据格式的统一,是构建RESTful API和微服务架构的通信基础,直接影响着接口的兼容性、开发效率和系统性能。在Java生态中,Jackson凭借其高性能、高灵活性和与Spring Boot的深度集成,成为了处理JSON事实上的标准工具。在Spring Boot项目中,虽然

weixin_33907511的博客 572

【SpringBoot】idea创建第一个Spring Boot项目

文章摘要:本文详细介绍了如何在IDEA中创建第一个Spring Boot项目。首先说明了Maven环境的配置要求,然后分步骤讲解了Spring Initializr插件的安装方法(针对社区版IDEA),并演示了项目创建过程。文章详细解析了项目结构,指导如何编写第一个接口"HelloController",提供了三种运行项目的方式,并展示了接口测试方法。最后总结了常见的端口占用、依赖下载等问题及解决方案,帮助初学者快速搭建Spring Boot开发环境并实现基础功能。

xiaobai_ljjhaha的博客 1812

两种方式部署定时任务Spring整合Quartz、Spring整合Task(java后台)

####(Notice:以下所有经验也是我根据网上的经验整理的,如有侵权可以联系我删除,欢迎交流和沟通,Wx:IT_Ezra,QQ 654303408。 有问题讨论也可联系我。) ####(Tips:我是第一次开发,一个刚毕业的java工程师,我觉得我并非天赋异禀,我能学会,相信聪敏的你,一定可以) (PS:定时任务是一个非常常见的功能,在我们进行系统开发中,经常会用到,有点类似于OS中的批处理。...

IT_EZRA的博客 542

spring系列-http接口请求

简介 整理一份关于使用spring boot日常接口开发笔记。 HTTP请求方式 POST:用于新增数据 GET:用于请求数据 PUT:用于修改数据 DELETE:用于删除数据 PATCH:用于修改数据 HTTP请求数据格式(参数) GET方式请求数据都直接在URL后面拼接上去;POST方式请求多了一个body部分,可以把数据放在URL或者是放在body。 常见body数据类型 ...

迷途中的一片羽毛博客 4701

Spring源码阅读——笔记整理

Spring源码阅读,学习笔记记录。 更多内容,欢迎关注vx公众号:豆萌萌 网课大咖

xrq19950928的博客 413

idea搭建SpringBoot项目框架的两种方式

对于面试,一定要有良好的心态,这位小伙伴面试美团的时候没有被前面阿里的面试影响到,发挥也很正常,也就能顺利拿下美团的offer。小编还整理了大厂java程序员面试涉及到的绝大部分面试题及答案,希望能帮助到大家,也祝愿大家都能够升职加薪!《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取![外链图片转存中…(img-jfTFZLfc-1711973009475)]也祝愿大家都能够升职加薪!

m0_75279794的博客 1106
上一篇: spring配置文件application.xml中的事务总结
下一篇: struts数据源的使用配置
Kit_LO
博客等级 码龄19年 26粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值