springboot开发论坛学习 -- 1.1

本文介绍了Spring Boot的基础知识,包括Spring Framework、Spring MVC和Thymeleaf。详细阐述了Spring的IOC和AOP概念,以及Spring全家桶的主要组件。同时,文章还探讨了SpringMVC的工作原理,如DispatcherServlet、HandlerMapping和ViewResolver的角色。最后,提到了MyBatis入门,包括其核心组件和与Spring Boot的整合。
摘要由CSDN通过智能技术生成

spring入门

spring全家桶

  1. spring Framework – 框架,spring的基石

    • spring code – spring 核心
      spring 就是牛在这里: IOC 和 AOP,这是用来管理对象的思想,有spring用来管理的对象叫做bean,ioc是基于对象来管理bean的思想,而aop是一种面向切面编程的思想,总之spring有了这两种思想就能管理一切bean。及将其他框架拿过来,就能对其进行整合。
      那么什么是springioc呢?
      答:spring ioc 就是控制反转+依赖注入+ioc容器的简写,其中控制反转是一种面向对象编程的设计思想(如我们不用ioc,来new两个对象A B,然后a.set传入b,这样A和B就有了联系,可以通过a去调用b。但是当需要去改a时要去改b,这样耦合性太高)、依赖注入是ioc思想的实现方式、ioc容器是实现依赖注入的关键,本质上是一个工厂。
    • spring data access — spring来访问数据库的功能
      transactions:用它来管理事物,spring mybatis:来整合mybatis
    • web servlet ---- web开发
      采用spring mvc
    • integration ---- 集成
      用来发送email、做定时任务(scheduling)、做消息队列(AMQP)、做安全控制(security)
  2. spring boot — 可以利用它构建项目,用于基本项目开发

  3. spring cloud — 微服务,如果项目比较大,需要将其进行拆分

  4. spring cloud data flow —

总结:

开发中一般我们的后台会创建 controller、dao、service几个模块,controller用来处理浏览器的请求,在处理浏览器的请求过程中会调用业务组件(service),让service去处理当前的业务,之后业务组件会去调用dao去访问数据库。他们之间彼此互相依赖,之间的依赖关系可以使用依赖注入的方式去实现

SpringMVC入门

HTTP协议

  • 超文本传输协议
  • 用于传输 HTML 等内容的应用层协议
  • 规定了浏览器和服务器之间如何通信,以及通信时的数据格式

SpringMVC

在这里插入图片描述

  1. 服务端的代码是一个三层架构:表现层,业务层,数据访问层

浏览器访问服务器,首先访问的是表现层,期待表现层给它返回一些数据,而表现层调用的是业务层,对浏览器请求的业务进行处理,在处理业务的过程中调用的是数据访问层,由数据访问层来访问数据库。业务层和数据层的调用和访问可能都是多次的。最终表现层得到业务层的反馈之后,经过一些调整反馈给浏览器

  1. MVC(主要解决的是表现层的事情) — 是一种设计模式,理念是将复杂的代码分为三个层次
  • Model:模型层(数据层)
  • View:视图层 :利用model数据,生成一个HTML,反馈给浏览器
  • Controller:控制层 : 用来处理浏览器的请求,根据请求调用业务层,然后根据反馈的数据封装到model中,然后把它传给视图层
  1. 核心组件
  • 前端控制器:DispatcherServlet
    无论是表现层中的Controller还是View都是通过这个前端控制器去调度的
    在这里插入图片描述
    1). 当DispatcherServlet接到请求时,他先回查找适当的处理程序来处理请求。DispatcherServlet通过一个或者多个处理程序映射,将每个请求映射到处理程序中。处理程序映射配置在web应用程序的上下文中,是实现了HandlerMapping接口的Bean。它负责为请求返回一个适当的处理程序(也就是Controller)。处理程序映射通常根据请求的URL将请求映射到处理程序(Controller)。

2). 一旦DispatcherServlet选择了适当的控制器,它就会调用这个控制器来处理请求。

3). 控制器处理完请求后,会将模型和视图名(有时候是视图对象)返回给DispatcherServlet。模型包含了控制器要传递给视图进行显示的属性。如果返回的是视图名称,它会被解析成视图对象再进行呈现。绑定模型和视图的基本类是ModelAndView

4). 当DispatcherServlet接收到模型和视图名称时,它会将逻辑视图名称解析成视图对象再进行呈现。DispatcherServlet从一个或者多个视图解析器中解析视图。视图解析器配置在Web应用程序上下文中,是实现了ViewResolver接口的Bean。它的任务是根据逻辑视图名称返回试图对象。

5). 一旦DispatcherServlet将视图名称解析称为试图对象,它就会呈现视图对象,并传递控制器返回的模型。视图的任务是将模型属性展示给用户。

Thymeleaf

  • 模板引擎:
    – 生成动态的HTML。
  • Thymeleaf
    – 倡导自然模板,即以 HTML 文件为模板
  • 常用语法
    – 标准表达式、判断与循环、模板的布局
    在这里插入图片描述

代码归属:

SpringMVC解决的是视图层的问题,而视图层第一个是写的Controrller,Controller会组织数据封装到model中,model这个类本来就有,不需要写。另外,模板引擎需要写模板,模板放在 resources --> templates 中

Mybatis入门 — 注:在这里存在对于数据库表的讲解

点我:学习视频为B站UP主“编程不止Coding”提供

安装MySQL服务器

安装MySQL可视化软件

MyBatis

  • 核心组件(在实际的开发中前三个可以不用去写代码,因为我们是在springboot的环境下去开发的,springboot会自动的去初始化Factory,自动的去创建SqlSession,自动的去整个XML配置文件)

    – SqlSessionFactory:用于创建SqlSession的工厂类。
    – SqlSession:MyBatis的核心组件,用于向数据库执行SQL。
    – 主配置文件:XML配置文件,可以对MyBatis的底层行为作出详细的配置。
    – Mapper接口:就是Dao接口,在MyBatis中习惯性的称为Mapper。
    – Mapper 映射器:用于编写SQL,并将SQL和实体类映射的组件,采用XML、注解均可实现。
    注:(映射器)当我们使用MyBatis去访问数据库我们只需要去写出接口,不需要去写出实现类,他们的底层会自动帮我们去实现接口,前提是要把每一个CRUD的方法告诉它,不然它也不知道要去干啥。

  • 示例
    – 使用MyBatis对用户表进行CRUD操作

mybatis中文:http://mybatis.org/spring/zh/index.html
mybatis-plus:https://mp.baomidou.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值