创建对象
1、首先导入spring依赖(使用maven工具导入)
<!--spring依赖-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>5.3.27</version>
</dependency>
<!--junit依赖-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
2、随便编写一个类
public class User {
public User() {
System.out.println("执行user构造方法");
}
public void test(){
System.out.println("测试成功");
}
}
3、按照spring格式要求创建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">
<!-- id:类的唯一标识,class:类的位置 -->
<bean id="user" class="com.cjx.bean.User"></bean>
</beans>
4、测试
import com.cjx.bean.User;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.lang.reflect.InvocationTargetException;
public class springTest {
@Test
public void testSpring() throws ClassNotFoundException, NoSuchMethodException, InvocationTargetException, InstantiationException, IllegalAccessException {
//加载spring配置文件 加载时会调用配置文件中对应类的无参构造方法
ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");
//获取创建的对象,通过类的唯一标识
User user = (User) context.getBean("user");
//测试
user.test();
}
}
对象赋值
方式一 Setter注入:
<bean id="setterUser" class="com.cjx.bean.User">
<property name="name" value="setName"></property>
</bean>
方式二 构造器注入: bean 标签中若有 constructor-arg 标签那么初始化时就会默认初始化有参构造 反之亦然
<bean id="constructorUser" class="com.cjx.bean.User">
<constructor-arg name="name" value="constructorName"></constructor-arg>
</bean>