思考

  1. 对象创建能否写死?
  2. 对象创建细节
    • 对象数量

      • action       多个    [需要维护成员变量]
      • service      一个    [不需要维护成员变量]
      • dao           一个    [不需要维护成员变量]
    • 创建时间
      • action        访问的时候创建
      • service       启动的时候创建
      • dao            启动的时候创建
  3. 对象的依赖关系
    • action依赖service
    • service依赖dao

总结

  • spring就是解决以上问题的!
  • 简单来说,spring就是处理对象的创建的,以及对象的依赖关系的框架!

专有名词解释

  • 组件/框架设计

    • 侵入式设计:引入了框架,对象现有的类有影响,即需要实现或继承特定的类,如:Struts框架
    • 非侵入式设计:引入了框架,对象现有的类没有影响,如:hibernate框架/spring框架
  • 控制反转
    • Inversion on Control,控制反转
    • 对象的创建交个外部容器完成,
  • 依赖注入
    • Dependency injection
    • 处理对象的依赖关系
  • 区别
    • 控制反转解决对象的创建问题,即所依赖的对象的创建交个第三方
    • 在创建完对象后,对象的依赖关系的处理就是依赖注入,如通过set方法注入
  • AOP
    • 面向切面编程
    • 切面,简单来说可以理解为一个类,由很多重复代码形成的类
    • 应用举例:事务、日志、权限

Spring框架

  • Spring提供了一站式的解决方案

    • Spring-Core   spring的核心功能:IOC容器,解决对象的创建及依赖关系
    • Spring-Web    spring对Web模块的支持

      • 可以与Struts整合,让Struts的action创建交给spring
      • springMVC模式
    • Spring-DAO    spring对jdbc操作的支持,jdbcTemplate模板工具类
    • Spring-ORM    spring对orm的支持
      • 可以与hibernate整合,
      • 可以使用spring对hibernate操作的封装
    • Spring-AOP     切面编程
    • Spring-EE        spring对javeEE其他模块的支持

spring来了-01-概述的更多相关文章

  1. Spring源码 01 概述

    参考源 https://www.bilibili.com/video/BV1tR4y1F75R?spm_id_from=333.337.search-card.all.click https://ww ...

  2. 黑马_13 Spring Boot:01.spring boot 介绍&&02.spring boot 入门

    13 Spring Boot: 01.spring boot 介绍&&02.spring boot 入门 04.spring boot 配置文件 SpringBoot基础 1.1 原有 ...

  3. 4-2 Spring MVC框架-01

    Spring MVC框架-01 Ⅰ.接收客户端请求 1. 关于Spring MVC框架 Spring MVC是基于Spring框架基础之上的 作用: 接收请求,响应结果,处理异常 主要解决了后端服务器 ...

  4. Spring 01 概述

    简介 Spring 是开源的轻量级 J2EE 框架 我们常说的 Spring 实际上是指 Spring Framework,它是 Spring 家族中的一个重要分支. 官方文档 https://doc ...

  5. Spring IOC之Bean 概述

    1.Bean概述 一个Spring IOC容器管理一个或者多个bean.这些bean是根据你提供给容器的配置数据信息创建的,例如XML形式的的定义. 在容器内部,这些bean的定义表示为BeanDef ...

  6. [02] Spring主要功能模块概述

    1.Spring主要功能模块   1.1 Core Container Spring的核心容器模块,其中包括: Beans Core Context SpEL Beans和Core模块,是框架的基础部 ...

  7. Spring (一 ) 概述与介绍

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 目录 1.Spring概述 2.Spring的模块介绍 Spring框架分为四大模块: 3.Eclips ...

  8. Spring(一)——概述

    一.概述 1.介绍 struts 是 web 框架 (jsp/action/actionfrom).hibernate是orm (Object Relational Mapping) 框架,处于持久层 ...

  9. Spring 事务管理 01 ——

    目录: 参考: 1.Spring 事务管理高级应用难点剖析: 第 1 部分

  10. Spring 复习笔记01

    Spring 框架 1. core:整个Spring框架构建在Core核心模块上,它是整个框架的的基础. 2. AOP:AOP模块提供了一个轻便但功能强大强大的AOP框架,让我们可以以AOP的形式增强 ...

随机推荐

  1. HDU 2289 CUP 二分

    Cup Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

  2. 如何提高android串口kernel log等级

    在 /device/qcom/common/rootdir/etc/init.qcom.rc write /proc/sys/kernel/printk  "6 6 1 7" 第一 ...

  3. 分别向Set集合以及List集合中添加"A"、"a"、"c"、"C"、"a",观察重复值"a"能否添加成功

    package lianxi; import java.util.*; public class JhSet { public static void main(String[] args) { Se ...

  4. BZOJ 2668 交换棋子(费用流)

    题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2668 题意:有一个n行m列的黑白棋盘,你每次可以交换两个相邻格子中的棋子,最终达到目标状 ...

  5. jdk安装环境变量设置

    设置JAVA_HOME,点击新建,变量名:JAVA_HOME,变量值:D:\java\jdk1.7.0,即刚才jdk安装的路径.   设置CLASSPATH属性,变量名:CLASSPATH,变量值:. ...

  6. 8.mybatis动态SQL模糊查询 (多参数查询,使用parameterType)

    多参数查询,使用parameterType.实例: 用户User[id, name, age] 1.mysql建表并插入数据 2.Java实体类 public class User { public ...

  7. JMS【四】--Spring和ActiveMQ整合的完整实例

    第一篇博文JMS[一]--JMS基本概念,我们介绍了JMS的两种消息模型:点对点和发布订阅模型,以及消息被消费的两个方式:同步和异步,JMS编程模型的对象,最后说了JMS的优点. 第二篇博文JMS[二 ...

  8. iOS - OC Copy 拷贝

    前言 copy:需要先实现 NSCopying 协议,创建的是不可变副本. mutableCopy:需要实现 NSMutableCopying 协议,创建的是可变副本. 浅拷贝:指针拷贝,源对象和副本 ...

  9. [转载] google mock CheatSheet

    原文: https://code.google.com/p/googlemock/wiki/CheatSheet Defining a Mock Class Mocking a Normal Clas ...

  10. mysql与mysqld

    mysql是客户机/服务器的结构. mysql是客户端行工具,连接mysqld服务,执行sql命令,可认为客户端sdk mysqld 启动mysql数据库服务. 脚本启动mysql服务的命令是 net ...