用idea 创建一个spring小demo,基于xml文件配置

时间:2021-12-29 21:12:10

1、首先,File->new->project ,进入新增项目页面

用idea 创建一个spring小demo,基于xml文件配置

或者在

用idea 创建一个spring小demo,基于xml文件配置

2、勾选spring,然后点击下一步

用idea 创建一个spring小demo,基于xml文件配置

3、修改项目名称和项目位置

用idea 创建一个spring小demo,基于xml文件配置

进入页面后

用idea 创建一个spring小demo,基于xml文件配置

5、创建一个spring配置文件

用idea 创建一个spring小demo,基于xml文件配置

用idea 创建一个spring小demo,基于xml文件配置

6、创建Person类

  用idea 创建一个spring小demo,基于xml文件配置

7、配置bean, <bean></bean>,name对应属性,value赋值

用idea 创建一个spring小demo,基于xml文件配置

8、测试类,配置文件名和id不能错。

用idea 创建一个spring小demo,基于xml文件配置

补充:

1、还有一种用构造器来配置的用法,这里会默认与实体类person中的构造方法一致,另外要注意使用构造器配置,实体类中需要有构造方法,否则配置文件报错

用idea 创建一个spring小demo,基于xml文件配置

如果实体类中含有混淆的构造方法,这里需要再添加属性type。

用idea 创建一个spring小demo,基于xml文件配置

2、关于bean之间的引用,新建一个House类,例如Person类引用了House类,Person类每次新增属性,都需要重写一次toString()方法和相应的getter和setter方法。

用idea 创建一个spring小demo,基于xml文件配置

用idea 创建一个spring小demo,基于xml文件配置

用idea 创建一个spring小demo,基于xml文件配置

这时候配置有两种方式:

1建两个bean

用idea 创建一个spring小demo,基于xml文件配置

2.在bean的内部建一个bean

用idea 创建一个spring小demo,基于xml文件配置

关于value的赋值还可以这样写

用idea 创建一个spring小demo,基于xml文件配置

如果String类型的值需要一些特殊符号如:<,这样就会报错,这时候需要< ! [CDATA[ 值 ] ]来进行处理

用idea 创建一个spring小demo,基于xml文件配置

用idea 创建一个spring小demo,基于xml文件配置

3、在配置文件里,配置list,set,array,map等,例如一个人有很多车,先建一个Car类,生成setter,getter,toString()方法,在Person类中引用。

用idea 创建一个spring小demo,基于xml文件配置

用idea 创建一个spring小demo,基于xml文件配置

然后配置文件里先写连个关于car的bean,再通过<list></list>进行引用,如果属性是Array或set型,换成相应的标签即可。

用idea 创建一个spring小demo,基于xml文件配置

还有一种map类型的配置,同理还是一个人有很多车,创建属性,生成setter和getter方法,重写toString()方法

用idea 创建一个spring小demo,基于xml文件配置

配置文件:这里使用entry标签,key对应着Map<Integer, Car>这里的类型,value_ref可以引用bean类

用idea 创建一个spring小demo,基于xml文件配置

用idea 创建一个spring小demo,基于xml文件配置

4、配置单例的集合,也就是公用的bean,这里首先需要引入命名空间,输入<util:list 然后 alt+enter,将命名空间导入进来,也就是这个xsi会导入后面util这两个,这时候就可以在bean中引用了,要想换成set\map型,换成相应的类型即可。

xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">

用idea 创建一个spring小demo,基于xml文件配置

5、关于bean的作用域,有两种singleton(单例)和prototype(原型,也称为多例)

singleton:默认值,在容器初始化时生成bean实例

prototype:原型,容器初始化时不生成bean实例,在获取bea时生成

写一个无参构造方法验证一下:

用idea 创建一个spring小demo,基于xml文件配置

配置文件:

用idea 创建一个spring小demo,基于xml文件配置

输出结果:说明值创建了一个对象

用idea 创建一个spring小demo,基于xml文件配置

把获取bean给注释掉,再输出结果,可以看到bean是在容器初始化时创建

用idea 创建一个spring小demo,基于xml文件配置

再来看看prototype,

配置文件:scope属性,可以选择单例和原型

用idea 创建一个spring小demo,基于xml文件配置

输出结果:

用idea 创建一个spring小demo,基于xml文件配置