三阶段CGB2104 Day-01

1. 环境版本说明

1.1 IDEA版本

三阶段CGB2104 Day-01

1.2 Mysql版本

可以使用最新版本的mariadb, 课堂使用5.5 版本 最好不要使用Mysql8.0版本
三阶段CGB2104 Day-01

2. IDEA环境配置

2.1 IDEA环境说明

工作空间: 理论上可以存储多个项目.
程序员操守: 路径中不要有中文,空格,特殊字符.
三阶段CGB2104 Day-01

2.2 IDEA环境搭建参见PPT

2.3 IDEA 关于插件说明

2.3.1 社区版本

说明: 社区版本 没有Spring/JS/HTML的支持. 需要针对于SpringBoot 需要安装特定的插件.
提前安装Spring Assistant 该版本正式版本中 没有该插件.
三阶段CGB2104 Day-01

2.3.2 正式版本

说明: 正式版本中 自带了SpringBoot的插件.所以无需下载
三阶段CGB2104 Day-01

2.3.3 Lombok安装

说明: 当创建一个实体对象时,必须写get/set/toString/构造/equals/hash等方法 该方法必须有.
为了优化上述的操作,则引入lombok插件(主流用法)
提前安装:
三阶段CGB2104 Day-01

2.4 SpringBoot项目入门

2.4.1 框架的作用

  1. SpringMVC 作用: 接收用户提交的数据,返回服务器数据.(交互)
  2. Spring 作用: 整合其他的第三方框架,可以让程序调用以一种统一的方式进行调用 (整合)
  3. Mybatis 作用: 整合JDBC 方便用户与数据库进行交互(持久化)
  4. SpringBoot 作用: 简化Spring等框架的操作(简化)
    理解: SpringBoot就是一个框架的高级API

2.4.2 框架之间的关系

三阶段CGB2104 Day-01

2.5 创建SpringBoot项目

2.5.1 创建项目

三阶段CGB2104 Day-01

2.5.2 选择依赖

三阶段CGB2104 Day-01

2.5.3 SpringBoot报错(一)

三阶段CGB2104 Day-01

2.5.3 SpringBoot报错(二)

三阶段CGB2104 Day-01

3 创建SpringBoot高级用法

3.1 关于maven坐标说明

3.1.0 Maven常见命令

三阶段CGB2104 Day-01

3.1.1 Maven常见命令说明

  1. install 项目打包命令
    三阶段CGB2104 Day-01
  2. clean 清空target文件目录的.

注意事项: clean 只会清空target文件目录的内容,本地仓库中的文件不会清理.
所以每次项目打包都要重新install.

3.1.2 坐标

    <!--坐标的说明:  只要是一个Maven工程必然会有坐标-->
    <!--groupId 组ID: 公司域名倒写-->
    <groupId>com.jt</groupId>
    <!--项目名称 名称唯一-->
    <artifactId>springboot_demo1</artifactId>
    <!--版本: 可以自己指定-->
    <version>0.0.1-SNAPSHOT</version>

  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

3.1.3 作用

  1. 可以唯一标识项目的路径
  2. 坐标是将来项目打包的位置
  3. 改jar包文件可以被其他项目依赖

3.2 关于POM.xml文件说明

3.2.1 知识铺垫

说明: 作为大型项目开发,里边必然会引入很多的jar包文件(公共第三方,自己公司的jar包). 由于jar包文件众多.则可能引发jar包文件冲突的问题!!!
问: 如何解决?

3.2.2 parent标签说明

2015年SpringBoot框架进入人们的视野,其中最为主要的是Parent标签的定义.parent标签,是Spring官网负责维护, 在其中定义了几乎所有的框架与SpringBoot兼容的版本信息.
作用: 集中定义版本号

 <!--集中定义版本号-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.1</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

3.3.3 dependencies作用

三阶段CGB2104 Day-01

3.3.4 build 作用

三阶段CGB2104 Day-01

3.3 关于SpringBoot配置文件说明

3.3.1 properties文件说明

三阶段CGB2104 Day-01

3.3.2 YML文件说明

三阶段CGB2104 Day-01

3.4 入门案例

3.4.1 案例要求

1.编辑HelloController
2.请求路径 http://localhost:8090/hello
3.获取结果 获取 "欢迎使用SpringBoot"的字样

3.4.2 包的位置

注意事项!!!: 以后写代码,必须在主启动类的同包及子包中编辑.
三阶段CGB2104 Day-01

3.4.3 入门案例

//历史: 后端进行页面跳转时一般使用Controller注解
//当下: 前后端分离, 页面不归后端管理,RestController
//     RestController = Controller + @ResponseBody
//面试题: @Controller 和 @RestController
//@Controller
//@ResponseBody
@RestController
public class HelloController {
<span class="token comment">/*该注解与方法绑定 */</span>
<span class="token annotation punctuation">@RequestMapping</span><span class="token punctuation">(</span><span class="token string">"/hello"</span><span class="token punctuation">)</span>
<span class="token keyword">public</span> <span class="token class-name">String</span> <span class="token function">hello</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">{<!-- --></span>

    <span class="token keyword">return</span> <span class="token string">"您好SpringBoot"</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

3.4 为属性赋值

3.4.1 业务需求

说明: 如果将数据写死在java文件中,如果数据发生变化,则需要手动的修改.java文件. 如果以后有大量的需求,则扩展不方便
解决方案: 动态为属性赋值.
三阶段CGB2104 Day-01

3.4.2 YML方式为属性赋值

3.4.2.1 定义属性

三阶段CGB2104 Day-01

3.4.2.2 定义属性

package com.jt.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
//历史: 后端进行页面跳转时一般使用Controller注解
//当下: 前后端分离, 页面不归后端管理,RestController
// RestController = Controller + @ResponseBody
//面试题: @Controller 和 @RestController
//@Controller
//@ResponseBody
@RestController
public class HelloController {

<span class="token comment">//private String name = "李四";</span>
<span class="token comment">/**
 * 表达式: springel表达式 简称为spel表达式
 * 语法:  ${表达式内容}
 * 工作原理:
 *      容器: 在内存中一个存储大量数据的Map集合
 *      1.当SpringBoot程序启动时,首先加载application.yml的配置文件
 *      2.当程序加载key-value结构时,将数据保存到Map集合中(容器内部)
 *      3.利用Spel表达式,通过key,获取value,之后为属性赋值.
 */</span>
<span class="token annotation punctuation">@Value</span><span class="token punctuation">(</span><span class="token string">"${userinfo.name}"</span><span class="token punctuation">)</span>
<span class="token keyword">private</span> <span class="token class-name">String</span> name<span class="token punctuation">;</span>

<span class="token comment">/*该注解与方法绑定 */</span>
<span class="token annotation punctuation">@RequestMapping</span><span class="token punctuation">(</span><span class="token string">"/hello"</span><span class="token punctuation">)</span>
<span class="token keyword">public</span> <span class="token class-name">String</span> <span class="token function">hello</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">{<!-- --></span>

    <span class="token keyword">return</span> <span class="token string">"您好SpringBoot:"</span><span class="token operator">+</span>name<span class="token punctuation">;</span>
<span class="token punctuation">}</span>

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37

3.5 pro属性赋值

3.5.1 YML文件相关说明

YML文件的主要作用: 编辑SpringBoot与第三方框架的整合.
如果将大量的业务数据都写到YML文件中,则会造成业务与框架的耦合.不方便管理.
想法: 能否优化业务数据.让代码整洁.
实现策略: 通过properties的配置文件实现业务的解耦.

3.5.2 编辑pro配置文件

三阶段CGB2104 Day-01

3.5.3 实现数据注入

  1. 类中的注解
    三阶段CGB2104 Day-01

  2. 为属性赋值
    三阶段CGB2104 Day-01

B站地址:
三阶段CGB2104 Day-01

上一篇:【错误记录】springboot项目中,能读取数据 但不能返回至网页端


下一篇:maven的下载安装配置教程(详细图文)