maven中的配置
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.8.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.2.8.RELEASE</version>
</dependency>
spring的核心是IoC,spring容器在初始化时先读取配置文件,根据配置文件或元数据创建于组织对象存入容器中,程序使用时再从容器取出需要的对象。
- 控制反转的一种实现方式是依赖注入(DI)
- 采用XML方式配置Bean时,Bean的定义信息是和实现分离,而采用注解的方式可以把两者合为一体,Bean的定义信息直接以注解的形式定义在实现类中
- 控制反转是一种通过描述(xml或注解)并通过第三方去生产或获取特定对象的方式。在Spring中实现控制反转的是IoC容器,其实现方式是依赖注入
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">
<!-- 使用Spring来创建对象,在Spring这些都成为Bean-->
<bean id="hello" class="com.pojo.Hello">
<property name="string" value="Spring"/>
</bean>
</beans>
IoC创建
1.无参数赋值(默认)
2.下标赋值
下标赋值
<bean id="user" class="com.pojo.User">
<constructor-arg index="0" value="Spring框架学习"/>
</bean>
spring配置
<!--起别名-->
<alias name="user" alias="user2"/>
<bean id="user" class="com.pojo.User" name="user3 user4 user5">
<constructor-arg name="name" value="Spring是什么"/>
</bean>
<!-- id: name 的唯一标识符,即对象名-->
<!-- class: bean对象所对应的全限定名:包名+类型-->
<!-- name: 别名,而且name可以取多个别名,可以用, ; 空格 将不同别名分开-->
import一般用于团队开发,可以将多个配置文件合并为一个。
<import resource="bean1.xml"/>
<import resource="bean2.xml"/>
<import resource="bean3.xml"/>