Spring相关介绍操作

mac2024-05-09  29

一、搭载spring环境

所需jar包: 配置上下文环境:(在我们的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" //基本标签都要引用 xmlns:util="http://www.springframework.org/schema/util" //使用util标签要使用 xmlns:context="http://www.springframework.org/schema/context"//使用context时要引入的标签 xmlns:p="http://www.springframework.org/schema/p"//使用p标签要引入 xsi:schemaLocation="http://www.springframework.org/schema/beans//基本标签都要引用 https://www.springframework.org/schema/beans/spring-beans.xsd //基本标签都要引用 http://www.springframework.org/schema/util //这个也是在使用xsd文件的时候引入的 https://www.springframework.org/schema/util/spring-util.xsd//使用xsd文件的时候要引入 http://www.springframework.org/schema/context //使用context文件要引用的 https://www.springframework.org/schema/context/spring-context.xsd"> 使用context文件要引用的 //上面的部分就是我们的环境配置内容 <!-- id:在当前IOC容器内 BEAN描述的唯一ID,不可以重复, class: 表示类全名: 报名 + 类名 --> <bean id="userDao" class="com.zzxtit.spring.ioc.di.UserDao"></bean> <bean id="userService" class="com.zzxtit.spring.ioc.di.UserService"> //下面是属性注入的相关操作 //在使用属性注入的时候我们要注意的几点事项 //1.我们的bean中要有setter方法,因为我们的属性注入就是 //要通过这些方法来为我们的属性进行相应的赋值的 <property name="userName" value="li"></property> <property name="udao" ref="userDao"></property> //这里的name就是我们在bean中的属性名称 //要注意的是我们在为基本数据类型进行赋值的时候我们要使用value //在为引用类型进行赋值的时候我们要使用的属性是ref </bean> </beans> <bean id="ConstructorDi" class="com.zzxtit.spring.ioc.di.ConstructorDi"> <constructor-arg type="com.zzxtit.spring.ioc.di.Apple" ref="apple"></constructor-arg> <constructor-arg type="String" value="李"></constructor-arg> <constructor-arg type="int" value="19"></constructor-arg> </bean> //上面是通过构造器来进行注入的,所以我们在我们的bean中要有相应的构造方法 //构造器注入有两种方法: //1.按照索引来进行匹配入参 //索引从零开始,依次向下进行赋值 //赋值的过程要严格的对应我们的构造方法中的参数 //按照我们的类型来进行匹配入参 //我们上面的示例就是按照类型进行匹配入参的 //同时我们要注意的是我们的基本类型可以将他们所属的包加上 //就像上面的String我们可以写成java、lang、String //但是对于我们的非基本数据类型,比如像我们自定义的类apple我们必须要将我们的全类名写全 //在数据数据进行注入的时候我么可以使用我们的property标签自带的name属性来进行注入 //我们也可以使用独立的value标签来进行注入 //如果有特殊的字符我们要使用<![CDATA[]]>把我们的字面值包裹起来 <bean id="ConstructorDi" class="com.zzxtit.spring.ioc.di.ConstructorDi" p:userName="未" p:score-ref="scoreMap"> <property name="apple"> <bean class="com.zzxtit.spring.ioc.di.Apple"></bean> </property> </bean> //在我们的bean中定义的bean是内部bean这种bean只能在我们当前bean的内部来进行使用 <bean id="collectionDi" class="com.zzxtit.spring.ioc.di.CollectionDI"> <property name="stuList"> <list> <value>22</value> <value>33</value> </list> //我们在list中注入值的话我们要使用list标签 </property> <property name="majorList"> <set> <value>数据结构</value> <value>离散数学</value> </set> //相应的我们在set标签中进行注入的话我们要使用我们的set标签 </property> <property name="score" ref="scoreMap"> //这里我们将map独立的出去,可以供多个bean使用 </property> <property name="pro"> <props> <prop key="mysql_url">${mysql_url}</prop> <prop key="mysql_driver">${mysql_driver}</prop> </props> //对于pros标签的使用有点像我们的map但是不一样的地方是 //我们的value是独立到我们的标签之间的 //map中的value要在我们的entry中以属性的形式来进行赋值 //另外我们这的value值可以采用el表达式的形式,但是要独立出来一个.properties文件,方便我们之后的修改 //这个文件我们要引进到我们的xml文件中 //也可以直接进行书写 </property> </bean> <util:map id="scoreMap"> <entry key="wei" value="70"></entry> </util:map> //上面一部分就是我们的独立出来的map <context:property-placeholder location="config/db.properties"/> //这是我们的引入文件操作

main函数的相关操作:

public static void main(String[] args) { ApplicationContext ioc=new ClassPathXmlApplicationContext("config/applicationContext_di.xml"); //从我们的根目录出发找到我们的xml文件 //根目录就是包含我们src的目录,但是如果我们的src是一个包命中的一部分直接从这整个包名的下面来进行书写 CollectionDI cons=ioc.getBean("collectionDi", CollectionDI.class); //这一步的第一个参数要使用我们在xml文件中设置的id值 System.out.println("===="+cons); //生成toString方法来进行验证我们的操作是否是正确的 }

p标签

使用p命名空间后,使我们的xml配置方式进一步得到简化,但是要在我们搭建环境的时候加上xmlns:p=“http://www.springframework.org/schema/p” 示例:

最新回复(0)