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 ...
随机推荐
- C# 3.0
序言 自动实现的属性 匿名类型 查询表达式 Lambda 表达式 从 C# 3 开始,lambda 表达式提供了一种更简洁和富有表现力的方式来创建匿名函数. 使用 => 运算符构造 lambda ...
- C语言 - strcmp和strncmp的编程实现及总结
一.strcmp和strncmp的编程实现及总结 1.strcmp函数的实现 要求: 原型: int strcmp(char *dest,char * src,int n); 头文件:# ...
- 51 Nod 1020 逆序排列
1020 逆序排列 基准时间限制:2 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么 ...
- python学习之路(13)
列表生成式 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 举个例子,要生成list [1, 2, 3, 4, 5, 6, 7, ...
- Redis数据结构常用命令
Redis数据结构--字符串
- C++入门经典-例5.15-回收动态内存的一般处理步骤
1:正确的步骤应该是如下代码所示: // 5.15.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostrea ...
- SpringMVC详解一、@RequestMapping注解与Controller接收参数
SpringMVC详解一.@RequestMapping注解与Controller接收参数 https://blog.csdn.net/mxcsdn/article/details/80719258 ...
- docker启动redis并使用java连接
一.先查找镜像 docker search redis 二.拉取镜像 docker pull redis三.等待拉取完毕 四.查看拉去的镜像 docker iamges 五.运行redis 连接1:h ...
- Singletom 单例
class Singletom { //最差写法.构造方法是public的,有可能会被new出多个,那就不是单例了. public Singletom(){ } public static Singl ...
- leetcode 102二叉树的层序遍历
5月20更新: 使用借助队列实现bfs,定义len记录队列的尺寸直接进行遍历层序 /** * Definition for a binary tree node. * struct TreeNode ...
