*******通过IOC容器创建id对象并为属性赋值********
整体结构:
![]()
①创建一个java工程
②导包
③创建log4j.properties日记配置文件
# Global logging configuration
log4j.rootLogger=INFO, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
④创建spring配置文件
<?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">
***********此处是手写代码************
</beans>
⑤创建javaBean对象
package cn.aynu.pojo;
public class Person {
private int id;
private String name;
private String phone;
private int age;
public Person() {
super();
}
public Person(int id, String name, String phone, int age) {
super();
this.id = id;
this.name = name;
this.phone = phone;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Person [id=" + id + ", name=" + name + ", phone=" + phone + ", age=" + age + "]";
}
}
⑥在application.xml中配置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.xsd">
<!--id值(p1)不可重复,如果重复会报错,编译不通过 -->
<bean id="p1" class="cn.aynu.pojo.Person">
<property name="id" value="1001"/>
<property name="name" value="琥珀"/>
<property name="phone" value="18337280000"/>
<property name="age" value="18"/>
</bean>
</beans>
⑦写测试类(从容器中获取bean对象)
public class PersonTest {
@Test
public void Test01() {
//获取spring容器对象(classpath:可略)
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:application.xml");
//根据id获取bean对象
Person person = (Person) applicationContext.getBean("p1");
System.out.println(person);
}
}
补充:①如果有多个对象同时获取P1,只有一次输出(单例模式)
②优先调用无参构造器中的内容
![]()