当前位置: 首页 > news >正文

Spring IOC/DI和MVC及若依对应介绍

文章目录

  • 一、Spring IOC、DI注解
    • 1.介绍
    • 2.使用
  • 二、Spring MVC注解
    • 1.介绍
    • 2.使用


一、Spring IOC、DI注解

1.介绍

  • 什么是Spring IOC/DI?
    IOC(Inversion of Control:控制反转)是面向对象编程中的一种设计原则。其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency Lookup)。通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实体将其所依赖的对象的引用传递给它。也可以说,依赖被注入到对象中。
    • 控制 :指的是对象创建(实例化、管理)的权力
    • 反转 :控制权交给外部环境(Spring框架、IOC容器)
  • 技术描述
    Class A中用到了Class B的对象b,一般情况下,需要在A的代码中显式的new一个B的对象。
    采用依赖注入技术之后,A的代码只需要定义一个私有的B对象,不需要直接new来获得这个对象,而是通过相关的容器控制程序来将B对象在外部new出来并注入到A类里的引用中。而具体获取的方法、对象被获取时的状态由配置文件[或配置类](如XML)来指定。
  • 接口驱动
    Interface Driven Design接口驱动有很多好处,可以提供不同灵活的子类实现,增加代码稳定和健壮性等等,但是接口一定是需要实现的,也就是如下语句迟早要执行:AInterface a = new AInterfaceImp(); 这样一来,耦合关系就产生了。
  • IOC中最基本的Java技术就是“反射”编程
    通俗的说,反射就是根据给出的类名(字符串)来生成对象。这种编程方式可以让应用在运行时才动态决定生成哪一种对象。反射的应用是很广泛的,像Hibernate、Spring中都是用“反射”做为最基本的技术手段。

2.使用

  • 若依框架springboot启动类注解在这里插入图片描述
  • IOC/DI的使用
    • 方式一:@Component与@Autowired注解的配合使用
      在这里插入图片描述 在这里插入图片描述

    • 方式二:(@Configuration+@Bean)+@Resource
      在这里插入图片描述在这里插入图片描述在这里插入图片描述

二、Spring MVC注解

1.介绍

  • 什么是MVC?
    M 代表 模型(Model)
    模型就是数据,就是 dao,bean
    V 代表 视图(View)
    视图是什么呢? 就是网页用来展示模型中的数据
    C 代表 控制器(controller)
    控制器是什么? 控制器的作用就是把不同的数据(Model),显示在不同的视图(View)上,Servlet 扮演的就是这样的角色。

2.使用

  • 若依框架springboot启动类注解在这里插入图片描述
  • Spring MVC注解的使用
    当http请求URI的前缀为/system/user,SpringMVC框架都会映射相关请求到该类来匹配在这里插入图片描述
    例如(下面的方法在上面的类中):当http请求URI完整的为/system/user/list时,SpringMVC框架会匹配映射到该处理方法中
    在这里插入图片描述
http://www.lryc.cn/news/239984.html

相关文章:

  • python的多层嵌套循环时,break可以退出多层循环吗?
  • 链表OJ--上
  • 内衣洗衣机哪些品牌质量好实惠?小型洗衣机全自动
  • 推荐一款适合做智慧旅游的前端模板
  • VL06O报表添加增强字段
  • SpringBoot Admin
  • Java基础-----正则表达式
  • 基于 Eureka 的 Ribbon 负载均衡实现原理【SpringCloud 源码分析】
  • 如何用CHAT解释文章含义?
  • 创作4周年
  • 《opencv实用探索·一》QT+opencv实现图片拼接和Mat转QImage
  • Apahce虚拟主机配置演示
  • 加班做报表被嘲低效!快用大数据分析工具
  • 详解——菱形继承及菱形虚拟继承
  • 路由的控制与转发原理
  • ios qt开发要点
  • 免费小程序商城搭建之b2b2c o2o 多商家入驻商城 直播带货商城 电子商务b2b2c o2o 多商家入驻商城 直播带货商城 电子商务
  • ChatGPT最强?文心一言与ChatGPT对比
  • 算法通关村第十二关|青铜|字符串转换整数
  • CSS实现空心的“尖角”
  • 算法 全排列的应用
  • 环境配置|GitHub——如何在github上搭建自己写的网站
  • Windows系统中curl和wget命令下载说明
  • 山西电力市场日前价格预测【2023-11-24】
  • 说说你对 shell 的理解以及常见的命令?
  • 数据结构之双向带头循环链表函数功能实现与详细解析
  • SpringBoot_websocket实战
  • 香港科技大学广州|机器人与自主系统学域博士招生宣讲会—同济大学专场!!!(暨全额奖学金政策)
  • python基于GCN(图卷积神经网络模型)和LSTM(长短期记忆神经网络模型)开发构建污染物时间序列预测模型
  • SpringMVC问题