JavaEE Spring IOC注入方式

描述

运用 Spring IOC 注入方式中的 Set 方法注入,给对象赋值。

题目

搭建 Spring 的开发环境,运用 Spring IOC 注入方式中的 Set 方法注入,给对象赋值。

题目解决思路

  1. 创建 Maven 项目
  2. pom.xml 文件中,导入 Spring 核心容器的依赖。
  3. 编写 Spring 核心配置文件。
  4. 创建 Person 实体类。

项目结构

07_JavaEE Spring.png

具体实现

pom.xml 文件:

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>net.haicoder</groupId> <artifactId>SpringDemo04</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <dependencies> <!--添加Spring核心容器支持包--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.1.7.RELEASE</version> </dependency> </dependencies> </project>

核心配置文件:

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" 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"> <!--属性详解: name:实体类中set方法,去除set,首字母变小写,如:setId -> id value:直接赋值,值是基本类型 ref:引用类型赋值 --> <bean id="person" class="net.haicoder.entity.Person"> <property name="id" value="1002"></property> <property name="name" ref="nameStr"></property> </bean> <!-- 定义一个String的bean对象 --> <bean id="nameStr" class="java.lang.String"> <constructor-arg index="0" value="HaiCoder"/> </bean> </beans>

实体类:

public class Person { private Integer id; private String name; public Person() { } public Person(Integer id, String name) { this.id = id; this.name = name; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "Person{" + "id=" + id + ", name='" + name + '\'' + '}'; } }

测试类:

public class Test { public static void main(String[] args) { System.out.println("嗨客网(www.haicoder.net)\n"); // 通过配置文件获取Spring的IOC容器 ApplicationContext act = new ClassPathXmlApplicationContext("applicationContext.xml"); // 从IOC容器中获取对象 Person person = (Person) act.getBean("person"); System.out.println(person); } }

运行结果,如下图:

08_JavaEE Spring.png

总结

以上案例运用 Spring IOC 注入方式中的 Set 方法注入,给对象赋值。