三阶段学习内容记录

本文档详细介绍了创建和管理SpringBoot工程的过程,包括IDEA环境配置、Maven的设置、Lombok插件的检查、SpringBoot基本用法如创建项目、添加依赖以及配置文件的使用。此外,还讲解了属性动态赋值的方法,降低了代码与属性间的耦合度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1.1创建工程目录

 说明: 创建一个目录,在其中编辑整个第三阶段的代码.
操守: 路径中不要出现中文/空格/特殊字符!!!
要求: 目录不要与

1.1.2 IDEA管理工作目录

1.项目环境说明

在这里插入图片描述

2. IDEA管理新的工作空间

使用File-Open 打开新的目录
 

 在这里插入图片描述

1.2 IDEA环境配置

1.2.1 滚轮缩放

在这里插入图片描述

1.2.2 设定自动提示

说明: 配置该项之后.自动不区分大小写.

在这里插入图片描述

1.2.3 设置参数提示

说明: 设定之后方法中有参数提示.

在这里插入图片描述

1.2.4 设定字符集编码格式

在这里插入图片描述

1.2.5 IDEA自动编译

在这里插入图片描述

1.2.6 IDEA配置Maven

文件: settings文件 本地仓库路径/私服镜像地址

  1. 本地仓库路径: 路径注意操守

在这里插入图片描述

2.私服镜像服务器地址

<!--阿里云镜像-->
        <mirror>
            <id>nexus-aliyun</id>
            <mirrorOf>*</mirrorOf>
            <name>Nexus aliyun</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public</url>
         </mirror>
 

3.配置Maven

在这里插入图片描述

1.2.7 LomBok插件

自行检查是否安装lombok插件

在这里插入图片描述

2 SpringBoot 基本用法

2.1 创建SpringBoot项目

2.1.1 根据插件新建项目

在这里插入图片描述

2.1.2 添加依赖

说明: 只勾选web即可.

在这里插入图片描述

2.1 关于POM.xml文件报错说明

2.1.1 parent文件报错

在这里插入图片描述

2.1.2 依赖插件报错

在这里插入图片描述

2.2 关于POM.xml文件说明

2.2.1 mave坐标说明

<!--项目maven的基本信息

  坐标:groupId:组ID 公司域名的倒写

             artifactId:项目名称 :注意名称不能重复  不能以数字开头

              version: 项目版本号:

这段代码是一个坐标,其意义是:

                     1.主要是用来管理和区分项目的

                     2.项目完成后的打包路径就是坐标的位置-->

1<groupId>com.jt</groupId>
2<artifactId>springboot_demo1</artifactId>
3<version>0.0.1-SNAPSHOT</version>
<name>springboot_demo1</name>
<description>Demo project for Spring Boot</description>

2.2.2 mave 命令

常规用法:
1. 配置maven环境变量
2. 通过dos命令窗口 执行命令. 几乎不用

                        在这里插入图片描述

 clean:清空项目中编译之后的class文件(这些文件位于Target目录中)

install:将项目中Target中编译好的class文件进行打包xxx.jar包

             install时会将测试类一起打包,所以需要注意代码的正确性

可以跳过测试类进行打包,需要在pom.xml中添加一行代码

 <properties>
        <java.version>1.8</java.version>
        <!--跳过测试类打包-->
        <skipTests>true</skipTests>
    </properties>

2.2.3 maven打包没有生成target目录的说明

如果遇到上述的错误,则去本地仓库中根据项目路径 查找jar包.

在这里插入图片描述上图为示例,需对应自己的路径名进行查找

2.2.4 parent标签作用

定位:SpringBoot主要的作用就时整合SSM框架,使得框架的结构更加的简化

 原则:"开箱即用"

parent的主要作用:

                      1.SpringBoot在内部兼容了当下几乎所有的第三方框架

                      2.SpringBoot将所有兼容的版本进行了定义

                        (几乎解决了版本冲突问题)以后几乎不写版本号

 parent标签中管理者其他项目的版本信息,否是跟随着parent标签进行变化

               

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.2</version>
        <relativePath/>
    </parent>

2.2.5 dependency说明

<!--原则: 按需导入  -->
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <!--springboot启动项(器)在包的内部SpringBoot
            已经完成了项目的"整合"(配置) 用户拿来就用
            web导入SpringMVC
            -->
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

SpringBoot整合了近乎所有的框架,用户可以拿来就用,但需要导入jar包

2.2.6 插件说明

  <!--SpringBoot项目与Maven整合的一个插件
        可以通过插件 执行项目打包/测试/文档生成等操作
        注意事项: 该插件不能省略
        项目发布时: java -jar xxxx.jar  报错:没有主清单信息!!!!
    -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.5.2</version>
            </plugin>
        </plugins>
    </build>

3 SpringBoot 高级用法

3.1 关于配置文件语法说明

3.1.1 properties 语法说明

1.数据结构:key-value

2.数据类型:String类型/Number类型

3.语法:

            1.key和value之间用 = 号连接

            2.不需要添加多余的  ”“ 号

            3.properties文件在IDEA中的编码格式时utf-8(可以手动修改的)

               pro文件在被程序读取时默认采用的 ISO-8859-1格式,中文必定乱码

            4.key=value不要出现多余的空格

server.port:8090

3.1.2 YML 语法说明

1.数据结构:key-value

2.数据类型:String类型/Number类型

3.语法:

           1.key:(中间是个空格)value

           2.key与key之间是层级关系,要记得缩进

           3.字符编码采用的是utf-8

            4.可读性较pro文件,更加明确

User:
  look: 2迷糊

3.2 属性赋值

3.2.1 业务需求

说明: 如果将数据直接写死到.java文件中,如果需要修改,则重新编译打包.不方便.如何优化??
优化: 通过配置文件动态为属性赋值!!!

在这里插入图片描述

springmvc响应给用户的是JSON串,String类型返回的是字符串,所以String类型可以直接返回

3.2.2 YML为属性赋值

3.2.2.1 编辑YML配置文件

说明: Spring负责管理YML文件中的数据.

在这里插入图片描述

3.2.2.2 Controller为属性赋值

/**
 * 1.接收用户发起的请求
 * 2.响应用户JSON串数据
 *   1.@ResponseBody 可以将对象转化为JSON串
 *   2.如果返回值为String类型,则返回本身
 *   纠正: A.JSON串
 */
@RestController
public class HelloController {

    //private String day="1天";
    /**
     * 规则:从Spring容器根据key获取数据,之后为属性赋值
     * 语法: spel表达式    ${key}
     */
    @Value("${user.day}")
    private String day;

    @RequestMapping("/getMsg")
    public String getMsg(){

        return "这个雨下几天:"+day;
    }
}

3.2.3 Pro为属性赋值

3.2.3.1 需求说明

YML是SpringBoot的核心配置文件, 一般用来整合其他第三方框架,如果将大量的业务数据放到YML中不符合编码规范. 所以将业务数据写到Pro配置文件中.

在这里插入图片描述

3.2.3.3 编辑pro配置文件

package com.jt.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * 1.接收用户发起的请求
 * 2.响应用户JSON串数据
 *   1.@ResponseBody 可以将对象转化为JSON串
 *   2.如果返回值为String类型,则返回本身
 *   纠正: A.JSON串
 */
@RestController
//spring容器启动时,动态添加配置文件 一般需要修改字符集
//关于注解赋值:  1.必须满足key-value结构
//             2.如果属性只有一个并且是value属性,则可以省略不写
//             3.如果还是乱码则检查IDEA pro字符集编码格式
@PropertySource(value="classpath:/person.properties",encoding="UTF-8")
public class HelloController {

    //private String day="1天";
    /**
     * 规则:从Spring容器根据key获取数据,之后为属性赋值
     * 语法: spel表达式    ${key}
     */
    @Value("${user.day}")
    private String day;
    @Value("${person.name}")
    private String name;

    @RequestMapping("/getMsg")
    public String getMsg(){

        return "这个雨下几天:"+day+name;
    }
}

3.2.4 为属性赋值意义

  1. 实现了.java文件与属性赋值的解耦
  2. 为了实现特定的业务的赋值.
  3. SpringBoot整合第三方框架时,如果需要额外的配置文件时,常常采用上述的操作实现. 方便扩展
    Redis为属性赋值操作

配置文件有两种,yml和property 

YML是SpringBoot的核心配置文件, 一般用来整合其他第三方框架,如果将大量的业务数据放到YML中不符合编码规范. 所以将业务数据写到Pro配置文件中.

在配置文件中为属性赋值,可以降低java文件与属性之间的耦合度,实现解耦

yml实现为属性赋值通过@value(${""})实现

perperty需要在类上添加路径文件@PropertySource添加路径,然后通过@value为属性赋值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值