IOC创建对象的两种方式
1. 无参构造方式
- sprirng使用无参构造的方式新建对象,然后使用set方法注入属性,表现为在bean.xml的property来对属性进行赋值。
- 如果实体类中没有set方法,property来对属性进行赋值。
<?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
https://www.springframework.org/schema/beans/spring-beans.xsd">
<!--bean就是java对象 , 由Spring创建和管理-->
<bean id="hello" class="com.lyj.bean.Hello">
<property name="name" value="Spring"/>
</bean>
</beans>
2 有参构造方式
-
在实体类增加有参构造方法,(无参构造是默认含有的。)
public Hello(String name){ this.name = name; }
-
修改bean.xml方法
<bean id="hello" class="com.lyj.bean.Hello"> <constructor-arg name="name" value="spring11"/> </bean>
回顾一下java的知识,在创建java对象时,无参构造函数是默认含有的,但是有参构造函数写了之后,默认的无参构造就会失效,这个时候要使用无参构造需要手动写一个无参构造函数。