[toc]


spring

  • 一个开源框架(Spring Framework)

  • 轻量的控制反转IoC

  • 面向切面AOP的容器框架

  • 大小与开销两方面都是轻量的

  • Bean,它代表的就是由Spring管辖的对象

  • Spring MVC和Spring Boot都属于Spring,Spring MVC 是基于Spring的一个 MVC 框架,而Spring Boot 是基于Spring的一套快速开发整合包

  • dependengcy: 用 mvc 选 spring web ,用 webFlux 选spring reactive web

spring mvc

  • 是spring的一部分

  • 主要用于开发WEB应用和网络接口,它是Spring的一个模块

spring boot

web项目: Controller层:主要是对外提供接口 Service层:主要是处理业务逻辑 Dao层:主要是和数据库相关


层级结构 /src/main/java:项目Java源代码 /src/main/resources:放置项目静态资源和配置文件 /src/test/java:放置项目测试用例代码

Project是最顶级的结构单元,一个可以有多个Module 一般按功能划分module,模块之间彼此相互依赖,模块 src/main/java 下可以有多个包,一个包下可以有多个类 包(package):为了对类分目录管理

|- java
  |- com.hew.javaweb
    |_annotation:放置项目自定义注解
    |_aspect:放置切面代码
    |_config:放置配置类
    |_constant:放置常量、枚举等定义
      |__consist:存放常量定义
      |__enums:存放枚举定义
    |_controller:放置控制器代码
    |_filter:放置一些过滤、拦截相关的代码
    |_mapper:放置数据访问层代码接口
    |_model:放置数据模型代码
      |__entity:放置数据库实体对象定义
      |__dto:存放数据传输对象定义
      |__vo:存放显示层对象定义
    |_service:放置具体的业务逻辑代码(接口和实现分离)
      |__intf:存放业务逻辑接口定义
      |__impl:存放业务逻辑实际实现
    |_utils:放置工具类和辅助代码

创建独立的Spring应用程序,用于创建微服务;用于简化 Spring 应用从搭建到开发的过程;

  • 自动配置
  • 起步依赖

Artifact:可以当它为一个web项目


  • 构建工具 Maven Gradle

  • spring framework -> spring boot -> spring cloud

  • Netty和Tomcat最大的区别就在于通信协议,Tomcat是基于Http协议的,实质是一个基于http协议的web容器; Netty能通过编程自定义各种协议,因为netty能够通过codec自己来编码/解码字节流,完成类似redis访问的功能,这就是最大的不同

  • Servlet 是运行在Web服务器上的小程序,通过http协议和客户端进行交互

  • Optional 防止空指针提出的接口

  • 【spring-boot-starter-web】 在当下项目运行mvn spring-boot:run就可以直接启用一个嵌套了tomcat的web应用。如果没有提供任何服务的Cotroller,访问任何路径都会返回一个springBoot默认的错误页面 Whitelabel Error Page

https://img.shields.io/badge/h-h-brightgreen

第三方包

  • fastJson: 传入的对象要有 getter 方法

搭建工程

  1. 创建 Maven 项目
  2. 导入Spring Boot起步依赖
  3. 定义 Controller
  4. 编写引导类
  5. 启动测试

创建项目

下载 JDK https://www.oracle.com/java/technologies/downloads/#jdk18-windows

使用 Spring Initializr 创建

  1. 勾选相关设置

  2. 等待安装依赖包

  3. 进入 https://start.spring.io/ (说明 https://www.cainiaojc.com/springboot/springboot-initializr.html)

  4. 勾选

|- Project
  |- Maven Project
|- Language
  |- Java
|- Spring Boot
  |- 2.7.2  这里根据实际情况勾选
|- Project Metadata 修改默认名称等
  |- Group com.hew
  |- Artifact java-web
  |- Name java-web
  |- Package name com.hew.java-web
  |- Packaging
    |- Jar
  |- Java
    |- 18 这里根据下载的 JDK 选
|- Dependencies
  |- Spring Web  一般创建的是web项目
  1. 下载,将其移入放置项目的文件夹
  2. 在 IDEA 社区版直接打开 open 然后等待下载

IDEA 直接创建

  1. 选 Java Maven
  2. 选择JDK 选择java 版本
  3. 选 spring boot 版本
  4. 选 Spring Boot Dev tools + Spring Web + My Batis Framework + MySQL Driver

Spring boot 简单查询数据库步骤

  1. 建立实体类和数据库字段保持一致
  2. 建立 mapper 接口,定义操作数据库的动作
  3. 建立 mapper 的 xml 文件,写 sql 语句
  4. 建立 service 类 处理业务逻辑
  5. 在 controller中展示处理的结果
Last Updated:
Contributors: Warren