Spring的搭建:
1,导包(jar包)
- <dependency>
- <groupId>org.springframeworkgroupId>
- <artifactId>spring-contextartifactId>
- <version>5.2.2.RELEASEversion>
- dependency>
2,创建一个类
3,创建Spring配置文件,bean中配置的就是让Spring管理的类
- "1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">
-
-
- <context:component-scan base-package="com.ffyc.spring">context:component-scan>
- <import resource="DB">import>
- beans>
4,启动测试
bean(bean中配置的就是让需要让Spring管理的类):
- <bean id="User" class="com.ffyc.spring.model.User" scope="prototype">
- <property name="id" value="1001" >property>
- bean>
id:唯一标识符
name:对象名
class:全类名(地址名)
scope:用来定义对象作用域(singleton(单例的,在容器启动时创建一个对象)/prototype(多例的,每次获取对象是就创建一个对象,每次对象都不一样))
xml bean管理
Spring已经完成对对象的创建,还需要在创建对象的同时对对象属性进行赋值------依赖注入。
依赖注入(Dependency Injection)DI:在Spring框架创建对象的同时,为对象属性进行相关依赖注入。
方式:
1,属性的set方法注入;
2,构造方法的注入。
- <bean id="User" class="com.ffyc.spring.model.User" scope="prototype">
- <property name="id" value="1001" >property>
- <property name="name" value="adele" >property>
- <constructor-arg name="id" value="1001">constructor-arg>
- <constructor-arg name="name" value="adele" >constructor-arg>
- bean>
注解:
①添加配置,扫描指定包下的类
Spring会扫描此包下的类,对类上的注解进行解析
②各层类使用不同注解标签和名字
自动注入:
@Autowired Spring框架中提供的注解标签,可以提供两种方式进行属性注入:
1,通过bean标签注入
2,通过属性类型注入,如果没有指定名称,那么就用属性类型去容器查找对应类型对象
@Qualifier(value="") 使用注解方式为属性进行值的注入
@Resourse 默认通过类型寻找
@Resourse(name="")是jdk提供的注解标签,给指定name,通过name去寻找。