博客
关于我
spring application.xml在项目中的几种解析方式
阅读量:709 次
发布时间:2019-03-17

本文共 1629 字,大约阅读时间需要 5 分钟。

在Java项目中,Spring的applicationContext.xml文件有多种解析方式。下面从不同角度解析这些方法,并结合常见场景提供实用技巧。

一、基于类路径的applicationContext.xml解析

最常见的方式是通过ClassPathXmlApplicationContext来加载applicationContext.xml。

ApplicationContext cxt = new ClassPathXmlApplicationContext("applicationContext.xml");Object bean = cxt.getBean("beanId");

这种方法适用于标准开发环境中的普通应用。

二、基于文件系统的applicationContext.xml解析

当项目部署路径明确时,可以使用FileSystemXmlApplicationContext。

ApplicationContext cxt = new FileSystemXmlApplicationContext("C:/path/to/applicationContext.xml");Object bean = cxt.getBean("beanId");

这种方式适合需要严格控制配置文件路径的情况。

三、基于资源的低级解析方式

通过Resource和XmlBeanFactory来实现基本的xml解析。

Resource res = new ClasspathResource("applicationContext.xml");XmlBeanFactory factory = new XmlBeanFactory(res);Object bean = factory.getBean("beanId");

这种方式适合对Spring容器进行操作时的底层实现。

四、jsp 页面中的applicationContext.xml解析

在Struts等框架中,通过自定义Bean类来灵活调用Spring-managed bean。

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();        return ctx.getBean(beanName);    }}

这种方式适合前端直接调用后台Spring bean的场景。

在实际开发中,可以根据项目需求灵活选择适合的方式。例如,在本地开发环境中使用第一种方法,在特定部署环境中使用第二种方法,或者在web应用中结合第四种方法实现特定功能。

转载地址:http://wjcez.baihongyu.com/

你可能感兴趣的文章
Nacos 单机集群搭建及常用生产环境配置 | Spring Cloud 3
查看>>
Nacos 启动报错[db-load-error]load jdbc.properties error
查看>>
Nacos 报Statement cancelled due to timeout or client request
查看>>
Nacos 注册服务源码分析
查看>>
Nacos 融合 Spring Cloud,成为注册配置中心
查看>>
Nacos-注册中心
查看>>
Nacos-配置中心
查看>>
Nacos2.X 源码分析:为订阅方推送、服务健康检查、集群数据同步、grpc客户端服务端初始化
查看>>
Nacos2.X 配置中心源码分析:客户端如何拉取配置、服务端配置发布客户端监听机制
查看>>
Nacos2.X源码分析:服务注册、服务发现流程
查看>>
NacosClient客户端搭建,微服务注册进nacos
查看>>
Nacos中使用ribbon
查看>>
Nacos使用OpenFeign
查看>>
Nacos使用Ribbon
查看>>
Nacos做注册中心使用
查看>>
Nacos做配置中心使用
查看>>
Nacos入门过程的坑--获取不到配置的值
查看>>
Nacos原理
查看>>
Nacos发布0.5.0版本,轻松玩转动态 DNS 服务
查看>>
Nacos启动异常
查看>>