4、Spring:IOC创建对象方式

tech2023-06-23  114

文章目录

3.1 通过无参构造方法来创建(默认)3.2 通过有参构造方法来创建

3.1 通过无参构造方法来创建(默认)

1、User.java

public class User { private String name; public User() { System.out.println("user无参构造方法"); } public void setName(String name) { this.name = name; } public void show(){ System.out.println("name="+ name ); } }

2、beans.xml

<?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"> <bean id="user" class="com.jl.pojo.User"> <property name="name" value="哈哈"/> </bean> </beans>

3、测试类

@Test public void MyTest(){ ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml"); //在执行getBean的时候, user已经创建好了 , 通过无参构造 User user = (User) context.getBean("user"); //调用对象的方法 . user.show(); }

3.2 通过有参构造方法来创建

1、User实体类

package com.jl.pojo; public class User { private String name; public User(String name) { this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } public void show(){ System.out.println("name=" + name); } }

2、 beans.xml (三种方式编写)

第一种方式(下标赋值):

<bean id="user" class="com.jl.pojo.User"> <constructor-arg index="0" value="哈哈哈哈哈哈"/> </bean>

第二种方式(类型):不推荐使用

<bean id="user" class="com.jl.pojo.User"> <!--type 参数类型 使用全限定名--> <constructor-arg type="java.lang.String" value="略略略"/> </bean>

第三种方式(参数名):

<!--直接通过参数名来设置--> <bean id="user" class="com.jl.pojo.User"> <constructor-arg name="name" value="来来来"/> </bean>

总结:

在配置文件加载的时候。其中管理的对象都已经初始化了!

视频链接:https://www.bilibili.com/video/BV1WE411d7Dv?p=6

最新回复(0)