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简介的更多相关文章

  1. Spring 系列: Spring 框架简介 -7个部分

    Spring 系列: Spring 框架简介 Spring AOP 和 IOC 容器入门 在这由三部分组成的介绍 Spring 框架的系列文章的第一期中,将开始学习如何用 Spring 技术构建轻量级 ...

  2. Spring Web Flow 简介

    Spring Web Flow 简介 博客分类: 转载 SSH 最近在TSS上看到了一片介绍Spring Web Flow的文章,顺便就翻译了下来,SWF的正式版估计要到6月份才能看到了,目前的例子都 ...

  3. Spring 系列: Spring 框架简介(转载)

    Spring 系列: Spring 框架简介 http://www.ibm.com/developerworks/cn/java/wa-spring1/ Spring AOP 和 IOC 容器入门 在 ...

  4. Spring中AOP简介与切面编程的使用

    Spring中AOP简介与使用 什么是AOP? Aspect Oriented Programming(AOP),多译作 "面向切面编程",也就是说,对一段程序,从侧面插入,进行操 ...

  5. Unit03: Spring Web MVC简介 、 基于XML配置的MVC应用 、 基于注解配置的MVC应用

    Unit03: Spring Web MVC简介 . 基于XML配置的MVC应用 . 基于注解配置的MVC应用 springmvc (1)springmvc是什么? 是一个mvc框架,用来简化基于mv ...

  6. spring 拦截器简介

    spring 拦截器简介 常见应用场景 1.日志记录:记录请求信息的日志,以便进行信息监控.信息统计.计算PV(Page View)等.2.权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直 ...

  7. Spring HTTP invoker简介

    Spring HTTP invoker简介 Spring HTTP invoker是spring框架中的一个远程调用模型,执行基于HTTP的远程调用(意味着可以通过防火墙),并使用java的序列化机制 ...

  8. Spring Boot 之Spring data JPA简介

    文章目录 添加依赖 添加entity bean 创建 Dao Spring Data Configuration 测试 Spring Boot 之Spring data JPA简介 JPA的全称是Ja ...

  9. spring cloud要点简介及常用组件

    spring cloud基于spring boot spring cloud是通过包装其他技术框架实现的,例如OSS组件,实现了一套通过基于注解.java配置和基于模板开发的微服务框架. spring ...

  10. Spring Framework体系结构简介

    说明:以下转自Spring官方文档,用的版本为4.3.11版本. 一.引用官方文档 2.2.1核心集装箱 所述核心容器由以下部分组成spring-core, spring-beans,spring-c ...

随机推荐

  1. ORACLE获取BOM清单

    BOM 结构如图 -- 1DH142-022 (DRIVE) -- 100729421  (PCBA) -- 100764148  (HDA) -- 100687050 (VCM) -- 100701 ...

  2. Java类路径的问题

    下面是eclipse中的文件组织形式. 下面是硬盘中文件的组织形式: src:中就是自己编写的没有编译的代码. target中是编译的Java中的class文件和一些不用编译的文件.这样也就明白了为什 ...

  3. Flash大文件断点续传功能

    一.概述 所谓断点续传,其实只是指下载,也就是要从文件已经下载的地方开始继续下载.在以前版本的HTTP协议是不支持断点的,HTTP/1.1开始就支持了.一般断点下载时才用到Range和Content- ...

  4. Word:表格前添加新行 + 删除表格后的空行

    本文适用于Word 2007 + Windows 7,造冰箱的大熊猫@cnblogs 2018/8/3 近日新学(百度到)两条新Word操作,记录下来以备查询 1.在表格前添加新行 场景:有没有遇到过 ...

  5. no matches for kind "ReplicaSet" in version "extensions/v1beta1"

    原来的yaml的资源清单为 apiVersion: extensions/v1beta1 kind: ReplicaSet metadata: name: frontend spec: replica ...

  6. Link-Cut Tree(LCT) 教程

    目录 前置知识 介绍 Access FindRoot MakeRoot Split Link Cut 关于Splay中操作的一点说明: 模板 前置知识 请先对树链剖分和Splay有所了解.LCT基于树 ...

  7. 二级索引-phoenix-单机部署

    下载 从下载地址下下载以下对应hbase版本的版本: phoenix-4.7.0-HBase-1.0/bin/phoenix-4.7.0-HBase-1.0-bin.tar.gz 安装部署 解压 ta ...

  8. C++入门经典-例5.14-丢失的内存,关于内存泄漏

    1:代码如下: // 5.14.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> usin ...

  9. C++入门经典-例3.9-使用嵌套表达式判断一个数是否是3和5的整数倍

    1:代码如下: // 3.9.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> using ...

  10. DS博客作业08—课程总结

    1.当初你是如何做出选择计算机专业的决定的? 开始时我选择的专业就是网络/物联网,计算机专业是一个充满创造性的专业 2.对比开篇博客,哪些方面还存在哪些不足? 这个人就像戏台上的老将军,全身插满fla ...