完整教程:熟悉并使用Spring框架 - XML篇

完整教程:熟悉并使用Spring框架 - XML篇

文章目录前言什么是Spring的XML配置基本环境搭建XML配置文件的基本结构Bean的定义与注入简单Bean定义构造器注入Bean之间的依赖注入Bean的作用域集合类型的注入实际使用示例小结

前言Spring框架作为Java开发中最流行的框架之一,为我们提供了多种配置方式。虽然现在注解和Java配置越来越流行,但XML配置作为Spring的经典配置方式,对于初学者和对底层源码感兴趣的同学,学习XML配置仍然是非常重要的一环。

什么是Spring的XML配置Spring的XML配置是通过XML文件来定义Bean以及它们之间关系的一种方式。这种配置方式直观明了,所有的配置信息都集中在XML文件中,便于管理和维护。

基本环境搭建首先我们需要在项目中引入Spring的相关依赖。

org.springframework

spring-context

5.3.21

XML配置文件的基本结构一个典型的Spring XML配置文件结构如下:

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

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

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

Bean的定义与注入简单Bean定义

public class User

{

private String name;

public User() {

System.out.println("UserService被创建了");

}

public void setName(String name) {

this.name = name;

}

public void sayHello() {

System.out.println("Hello, " + name);

}

}

在XML中定义这个Bean:

构造器注入如果我们的类有带参数的构造器:

public class Order

{

private String orderName;

public Order(String orderName) {

this.orderName = orderName;

}

public void processOrder() {

System.out.println("处理订单:" + orderName);

}

}

XML配置如下:

Bean之间的依赖注入当一个Bean需要依赖另一个Bean时:

public class UserController

{

private UserService userService;

public void setUserService(UserService userService) {

this.userService = userService;

}

public void handleRequest() {

userService.sayHello();

}

}

XML配置:

Bean的作用域Spring支持多种Bean作用域,最常用的是:

集合类型的注入有时候我们需要注入集合类型的数据:

public class ConfigService

{

private List<

String> list;

private Map<

String, String> map;

}

XML配置:

aaa

bbb

ccc

实际使用示例让我们看一个完整的例子。首先创建测试类:

public class Application

{

public static void main(String[] args) {

// 加载XML配置文件

ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");

// 获取Bean

UserController controller = context.getBean("userController", UserController.class)

;

controller.handleRequest();

// 关闭容器

((ClassPathXmlApplicationContext) context).close();

}

}

完整的XML配置文件:

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

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

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

小结XML配置虽然看起来比较繁琐,但它提供了很好的灵活性和可配置性。对于一些配置较为复杂或者需要运行时修改配置的场景,XML配置仍然是一个不错的选择。当然,现在更多的项目是SpringBoot项目会选择注解配置,但是我认为我们还是需要了解XML配置,有助于我们更好地理解Spring的工作原理,也能帮助我们维护一些老项目。

相关推荐

全民奇迹开天灼技巧需要注意哪些pvp技巧
365取消提款

全民奇迹开天灼技巧需要注意哪些pvp技巧

📅 10-11 👁️ 2675
4钱是多少克?
365bet备用在线

4钱是多少克?

📅 01-04 👁️ 3976
NVIDIA Broadcast App - 以 AI 助力语音和视频
365bet备用在线

NVIDIA Broadcast App - 以 AI 助力语音和视频

📅 09-17 👁️ 8268
滚滚的近义词
365bet备用在线

滚滚的近义词

📅 02-07 👁️ 3143
为什么烤箱的灯不亮了
365bet备用在线

为什么烤箱的灯不亮了

📅 08-19 👁️ 4419
上海中华药业有限公司
约彩365手机下载安装

上海中华药业有限公司

📅 01-04 👁️ 4140
青橙实业
约彩365手机下载安装

青橙实业

📅 01-25 👁️ 725
华为鸿蒙电脑如何安装/卸载自定义字体
365bet备用在线

华为鸿蒙电脑如何安装/卸载自定义字体

📅 01-08 👁️ 6772