Spring(一)--Spring简介
Spring简介
1. Spring的特点
Spring (春天,绿色) 容器
01.Java EE开发者的春天,大大简化了代码量
02.使用IOC来降低主业务之间的耦合度
03.使用AOP来降低主业务和系统级业务之间的耦合度
04.非侵入式框架
001.如果我们要实现某些功能,但是必须实现或者继承某个接口或类!
这种方式就是 侵入式!
002.如果我们要实现某些功能,不需要显式的实现或者继承某个接口或类!
我们感觉不到在使用框架的某个功能!框架自身会自动映射!
05.一站式开发框架
001.先去A饭店吃饭
002.再去B娱乐中心唱歌
003.再去C会所按摩
现在直接去D商务会所 ==》完成 吃饭 唱歌 按摩 三个功能!
Struts2 Spring mvc
Spring Spring
Hibernate Spring JDBC
2. Spring的核心
1.IOC
1.IOC (Inversion Of Control,控制反转)
在service层创建出来了dao层的实例对象! 控制权在service! 安全吗?耦合不?不好!!!
现在创建dao层对象的任务 交给Spring容器管理!控制权在Spring容器!
控制权由我们程序本身交给spring容器的这个行为====》控制反转!
Spring容器是咩???
01.负责创建项目中所有的对象(bean)
02.管理对象之间的各种关系
03.spring的核心配置文件
DI(Dependency Injection,依赖注入)
service层的new StudentDaoImpl()被删除,dao的对象是Spring容器来创建的!
Spring容器把创建的dao层对象 通过setDao()注入到对象中!这个过程就是依赖注入!
DI是IOC的一种具体实现!
2.AOP
2.AOP(Aspect Oriented Programing,面向切面编程) 底层是动态代理设计模式
01.切面 (Aspect):系统级业务,对主业务进行增强的方法!
02.切入点 (PointCut): 把系统级业务织入到主业务上,主业务方法就叫切入点
03.连接点 (JoinPoint):所有的主业务方法
04.织入 (Weaving):把系统级业务放到主业务上的过程
05.目标对象 (Target): 调用主业务的对象
StudentDao dao=new StudentDaoImpl();
dao就是目标对象
dao.eat();
06.通知 (Advice):是切面的一种实现,定义了织入的时间!
07.顾问 (Advisor):是切面的一种实现,定义了织入的时间,位置!
通知是顾问一个属性! 顾问包含通知!
3.Spring体系图
欲知后事如何,请看下集
Spring(一)--Spring简介的更多相关文章
- Spring 系列: Spring 框架简介 -7个部分
Spring 系列: Spring 框架简介 Spring AOP 和 IOC 容器入门 在这由三部分组成的介绍 Spring 框架的系列文章的第一期中,将开始学习如何用 Spring 技术构建轻量级 ...
- Spring Web Flow 简介
Spring Web Flow 简介 博客分类: 转载 SSH 最近在TSS上看到了一片介绍Spring Web Flow的文章,顺便就翻译了下来,SWF的正式版估计要到6月份才能看到了,目前的例子都 ...
- Spring 系列: Spring 框架简介(转载)
Spring 系列: Spring 框架简介 http://www.ibm.com/developerworks/cn/java/wa-spring1/ Spring AOP 和 IOC 容器入门 在 ...
- Spring中AOP简介与切面编程的使用
Spring中AOP简介与使用 什么是AOP? Aspect Oriented Programming(AOP),多译作 "面向切面编程",也就是说,对一段程序,从侧面插入,进行操 ...
- Unit03: Spring Web MVC简介 、 基于XML配置的MVC应用 、 基于注解配置的MVC应用
Unit03: Spring Web MVC简介 . 基于XML配置的MVC应用 . 基于注解配置的MVC应用 springmvc (1)springmvc是什么? 是一个mvc框架,用来简化基于mv ...
- spring 拦截器简介
spring 拦截器简介 常见应用场景 1.日志记录:记录请求信息的日志,以便进行信息监控.信息统计.计算PV(Page View)等.2.权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直 ...
- Spring HTTP invoker简介
Spring HTTP invoker简介 Spring HTTP invoker是spring框架中的一个远程调用模型,执行基于HTTP的远程调用(意味着可以通过防火墙),并使用java的序列化机制 ...
- Spring Boot 之Spring data JPA简介
文章目录 添加依赖 添加entity bean 创建 Dao Spring Data Configuration 测试 Spring Boot 之Spring data JPA简介 JPA的全称是Ja ...
- spring cloud要点简介及常用组件
spring cloud基于spring boot spring cloud是通过包装其他技术框架实现的,例如OSS组件,实现了一套通过基于注解.java配置和基于模板开发的微服务框架. spring ...
- Spring Framework体系结构简介
说明:以下转自Spring官方文档,用的版本为4.3.11版本. 一.引用官方文档 2.2.1核心集装箱 所述核心容器由以下部分组成spring-core, spring-beans,spring-c ...
随机推荐
- Here is a test page for my new blog in cnblogs
Tell me if I can use Fomula like LaTeX $$\sum\limits_{i = 1}^{n}a_i$$
- ES使用中的总结整理
最近项目中使用了ES搜索,开始时自己搭建了ES环境做测试,后面申请了公司的云平台应用, 对接ES的过程中颇具波折,遇到了很多问题,在这里统一整理记录下: 1,ES的9200 及 9300端口说明 92 ...
- three months timestamp
1.有效期三个月 package com.hengqin.life.idps; import java.text.SimpleDateFormat; import java.util.Calendar ...
- Linux系统下使用 mail 发送邮件
邮件常常是Linux下监控报警手段之一.Linux下的mail命令可以方便,快速的完成发送邮件.下面以CentOS为例 1.安装: [app@127-0-0-1 ~]# mail -bash: mai ...
- BZOJ 4154: [Ipsc2015]Generating Synergy KDtree+dfs序
多组数据真tm恶心~ 把 $dfs$序和深度分别看作横纵坐标,然后用 $KDtree$ 数点就可以了~ #include <cstdio> #include <cstring> ...
- BZOJ 4668: 冷战 并查集启发式合并/LCT
挺好想的,最简单的方法是并查集启发式合并,加暴力跳父亲. 然而,这个代码量比较小,比较好写,所以我写了 LCT,更具挑战性. #include <cstdio> #include < ...
- poj 3623(贪心)
Best Cow Line, Gold Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 6038 Accepted: 20 ...
- linux监控系统性能命令
Linux系统性能10条命令监控 https://www.cnblogs.com/qmfsun/p/5729442.html 概述 通过执行以下命令,可以在1分钟内对系统资源使用情况有个大致的了解. ...
- 【Spark机器学习速成宝典】模型篇05决策树【Decision Tree】(Python版)
目录 决策树原理 决策树代码(Spark Python) 决策树原理 详见博文:http://www.cnblogs.com/itmorn/p/7918797.html 返回目录 决策树代码(Spar ...
- OpenCV学习笔记(9)——形态学转换
不同的形态学操作,例如腐蚀,膨胀,开运算,闭运算等 形态学操作是根据图像形状进行的简单操作.一般情况下对二值化图像进行操作.需要的参数有两个,一个是原始图像,第二个被称为结构化元素或核,它是用来决定操 ...
