Spring(4)IOC的创建方式
4.IOC创建对象的方式
1.使用无参构造创建对象,默认!
当我们使用无参构造的时候,它是默认创建的!并且在配置文件加载的时候,容器中管理的对象就已经开始初始化了!
这里我们定义一个User类,并且创建它的无参构造
public class User {
private String name;
public User() {
System.out.println("User的无参构造");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void userShow(){
System.out.println("name:"+name);
}
}
之后创建bean的配置文件
<?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-3.0.xsd">
<bean id="user" class="com.luo.pojo.User"></bean>
</beans>
接下来我们进行测试
得出结论:在配置文件加载的时候,容器中管理的对象就已经开始初始化了!
2.假设我们要使用有参构造创建对象。
当我们创建一个有参构造的时候,并且没有显示定义无参构造,就会在beans.xml文件中看到错误
假设我们要使用有参构造创建对象。spring中有三个方法,这里我选取两个,因为一个不推荐使用
第一种:通过下标赋值
<bean id="user" class="com.luo.pojo.User">
<constructor-arg index="0" value="十三"></constructor-arg>
</bean>
第二种:参数名
<bean id="user" class="com.luo.pojo.User">
<constructor-arg name="name" value="十三"></constructor-arg>
</bean>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY