zoukankan      html  css  js  c++  java
  • Spring -ch01

    Spring

    认识spring

    spring框架减轻了对项目模块间,类与类之间的管理难度,帮助开发人员创建对象,管理对象间的关系,实现模块间,类之间的解耦合

    依赖:若classA使用了classB的属性和方法,叫做类A依赖B)

    官网:https://spring.io/projects/spring-framework

    image-20210120144055382

    体系结构:

    image-20210120152024017

    前言:

    学习框架,首先要知道:所谓框架,其实就是一个别人写好的软件,我们要做的是

    1. 知道框架能做什么,例如mybatis -- 访问数据库,对表中数据进行增删改查

    2. 学习框架语法,知道框架通过哪些步骤完成一个功能

    3. 有了以上运用基础后再去认识框架的内部实现原理,进而实现一个框架

    现在正式开始进入Spring的学习:

    Ioc控制反转(Inversion of Control)

    概念

    Ioc是一种思想,描述的是:把对象的创建,赋值,管理工作交给代码外的容器实现,也就是对象的创建是由其他外部资源完成

    控制是指:创建对象,对象的属性赋值,对象间的关系管理

    解释反转之前,先介绍其相反概念:开发人员在代码中使用new构造方法创建对象,开发人员主动管理对象,这种方式可以理解为正转,那么就不难理解所谓

    反转即是:将原来的开发人员管理创建对象的权限交给代码之外的容器实现,由容器代替开发人员管理对象,创建对象,给属性赋值等工作。

    这里的容器,就是一个服务器软件,一个框架(spring)

    为什么要使用ioc?:目的就是减少对代码的改动,也能实现不同的功能,实现解耦合。

    现在想一下 Java中创建对象有哪些方式?

    1. 构造方法new

    2. 反射

    3. 序列化

    4. 克隆

    5. 动态代理

    6. ioc:容器创建对象

    ioc的体现

    以servlet为例 :

    1. 创建类继承HttpServlet

    2. 在web.xml 注册servlet使用

      myservlet

      com.andy.controller.MyServlet

    3. 注意上面代码中并没有创建Servlet对象的语句:MyServlet myservlet = new MyServlet()

    4. 其实这里的Servlet就是由Tomcat服务器帮我们创建的,Tomcat就是一个容器,里面存放着Servlet对象,Listener,Filter等

    IoC的技术实现:DI

    DI(Dependency Injeciton)依赖注入,只需要在程序中提供要使用的对象名称即可,至于对象如何在容器中创建,赋值,查找都有容器内部实现

    Spring使用DI实现了Ioc的功能,底层创建对象使用的是反射机制

    例子:在idea中使用spring创建对象

    配置beans文件

    image-20210123160957362

    测试

    image-20210123161039050
    image-20210125143933828

    详细源码见https://github.com/GigoGigo-CH/Learn_Spring/tree/master/ch01-hello-spring

  • 相关阅读:
    【刷题】LeetCode刷刷刷 — 2021-05-31(2)
    【刷题】LeetCode刷刷刷 — 2021-05-31(1)
    【刷题】LeetCode刷刷刷 — 2021-05-30(2)
    适配器模式
    跨端开发框架各方评价【整合】+思索
    uni-app运行到小程序报错onStreamRead
    序列化
    tkinter---GUI
    tkinter--抽奖
    6位数(字母和数字)验证码
  • 原文地址:https://www.cnblogs.com/potofsalt/p/14317957.html
Copyright © 2011-2022 走看看