- 接口及面向接口编程
接口对外提供功能,但外部无法访问内部的具体实习。
对应java接口及声明,声明了哪些方法是对外公开提供的。
结构化设计中,分清各个层次及调用关系,每层只向外(或上层)提供一组功能化接口,而不是具体的实现,这样在修改某个类的时候就不需要修改他们之间的调用关系。这一点在提供公共服务中显得尤为重要
"面向接口编程"中的”接口“用于隐藏具体的实现和实现多态性的组件
- 什么事IOC
IOC:控制反转/依赖注入,控制权的转移,应用程序本身不负责依赖对象的创建和维护,而是由外部容器负责创建和维护
(Spring提供的相应的容器) 活的依赖对象的过程背反转了。
简单的理解:
可以类比我们的找房子
租房子分为三步:
1、找中介
2、中介给我们找房子
3、租房、入住
IOC:
1、找到相应的容器
· 2、容器返回 对象
3、我们使用对象
- Spring 的Bean配置
在IOC容器中他把所有的对象都成为bean
Spring对于bean的使用由两种方式:一种是在XML文件中配置,第二种是通过注解的方式
通过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:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">
<bean id="testIocInterface" class="com.ssm.ioc.testIocInterfaceImpl"></bean>
//id就是对于bean的唯一标识(相当于接口名)
//class中写入的是该bean所对应的接口的 具体的实现类
- Bean初始化
1、基础:两个包
—— org.springframework.beans
—— org.springframework.context
——BeanFactory提供了配置结构和基本的功能,加载并初始化Bean
——ApplicationContext保存了Bean对象并在spring中被广泛使用
2、初始化applicationContext的方式
——本地文件
——Classpath :相对路径,相对于项目中的路径
——Web应用中依赖servlet或listener
初始化实例:
- Spring常用注入方式
1、spring注入是指在启动spring容器加载bean配置的时候,完成对变量的赋值行为
比如在A类中有引用B类的方法,所以在加载A类的时候自动对B类进行赋值。
2、常用的赋值方式
——设值注入
——构造注入