关于Spring的理解和相关笔记

java不死的原因就是:就是因为他有一个核心非常强大的技术框架支持。
Spring
IOC: Inverse Of Control 控制反转 IFly fly;
AOP: Aspect Oriented Programming 面向切面编程
OOP: Object Oriented Programming 面向对象编程 四大核心:抽象 封装 继承 多态
OOD: Object Oriented Design 面向对象设计 工程师 架构师 30k---60k
OOA: Object Oriented Analysis 面向对象分析 分析师

对象之间的关系(面向对象分析OOA、面向对象设计OOD、面向对象编程OOP)
分析-------------设计---------------编程
是 泛化 extends
能 实现 接口 implements
有 关联 成员变量
用 依赖 方法中局部变量

Spring 入门案例

1.Spring 入门案例
01.找依赖
spring-beans:4.2.0.jar 附带了core核心 和 commons logging:1.2.jar
spring-context:4.2.0.jar 附带了spring-expression aopalliance:1.0 spring-aop

02.HappyService类型

03.applicationContext.xml
beans根节点下有N个bean节点
<bean id="service" class="类型的全名称:cn.happy.day01.HappyService"><bean>

04.容器
Application ctx=new ClassPathXmlApplicationContext("ApplicationContext.xml");
HappyService service=(HappyService)ctx.getBean("service");

2.容器:能存放多个物品的一个物体,能提供各种功能,宝盒里有各种需求。
Spring 容器:相当于一个大水桶:各种bean就是水,水脱离了水桶,就没有任何意义了。


3.IOC 和 DI
3w1h教学法
What:什么是控制反转
理解一:将组建对象的控制权,从代码本身转移到外部容器(Spring容器)。
理解二:就是在xml中配置bean节点。
Why:为什么IOC?
When:什么时候使用IOC?
How:怎么用?

DI:Dependency Injection 依赖 注入 给对象注入属性值

关系:他们都是spring核心思想的不同方面的描述。站在不同维度对同一个概念或事物的解释(重点)。

4.打印机:
三种打印机:
针式打印机:Epson 590k
喷墨打印机:简历
墨盒:黑白
彩色
纸张:A4
B5
激光打印机


项目名称:教学管理系统

项目需求:经理想实时统计到每天每位老师所在的机房

数据字典

该项目需要用到的技术: mybatis+jsp+servlet+ajax+json+easyUI

------------------------------------------------------------------------
2018年6月13日
1.Spring做各种bean的管理
2.Spring的两大核心 IOC(Inverse Of Control) 控制反转
DI(Dependency Injection) 依赖注入

-----------------------------------------------------------
2018年6月13日
1.Spring做各种bean的管理
2.Spring的两大核心(Inverse Of Control)控制反转
DI(依赖注入 Dependency Injection)
IOC和DI联系:IOC侧重思想层面 DI侧重于实现
IOC对象的创建 DI属性值的注入
3.AOP
4.第一个案例
1.引入依赖
2.容器去管理bean

5.使用DI

6.AOP Aspect Oriented Programming(面向切面编程) 编程思想 解决什么问题

问题:交叉业务单独处理的问题

7.切点表达式:
* *..UserServiceImpl.*(..)
void 全名称 cn.cn.cn.cn.cn.UserServiceImpl.*(..)
String
int

符号 意义
* 0至多个任意字符
.. 用在方法参数中,表示任意多个参数; 用在包名后,便是当前包及子包路径

+ 用在类名后,表示当前类及其子类; 用在接口后,表示当前接口及其实现类


8.关于增强
前置 MethodBeforeAdvice 接口
before(){}

后置增强 AfterReturningAdvice 接口
afterReturning(){}


9.默认spring容器生成的bean都是单例的,容器一旦创建,那么bean就被实例化了。所以它是单例的。

Spring整合SpringMVC 不用scope,SpringMVC,单例的,Controller类中N个方法。线程
Spring整合Struts2 Action多例的

------------------------------------------------------------------------
前面的知识的总结
1.IOC 和 DI
2.AOP的概念

AOP相关术语:
joinPoint(连接点)。所谓连接点是指那些被拦截到的点。在spring中,这些点指的是方法,
因为spring只支持方法类型的连接点。

pointcut(切入点)。所谓切入点是指我们要对哪些joinPoint进行拦截的定义。

Advice(通知/增强)。所谓通知是指连接到joinPoint之后所要做的事情就是通知。
通知分为前置通知,后置通知,异常通知,最终通知,环绕通知,advice是面向方法的。

Introduce(引介/引入)。Introduce是一种特殊的Advice,是面向类的,可以在运行期间为
类动态的添加一些方法和字段。

Target(目标对象)。代理的目标对象。

Weaving(织入)。将Advice(增强)应用给Target(目标对象),创建Proxy的过程
Proxy(代理对象)。将Advice织入target,生成代理对象。

Aspect(切面),是切入点和通知(增强)的总和。


连接点:?
切入点:?
通知:?
切面:?
目标对象:?
代理对象:?
织入:?

3.默认Spring创建的各种bean都是单例的,我们可以控制

4.基于xmlDI 依赖注入方式:3种
set方法注入
构造注入
p命名空间注入







猜你喜欢

转载自www.cnblogs.com/bdqnjs/p/9188643.html