• 上手Spring


    设置Maven镜像为阿里云

    1. 找到Maven的目录所在位置
    2. 找到conf目录
    3. 找到settings.xml文件

    找到Maven的目录所在位置:去idea 的设置中 直接搜索Maven

    image-20230908084430261

    找到conf目录

    image-20230908084524200

    修改Maven本地仓库的地址 地址自定义

    image-20230908084604543

    修改Maven的镜像为阿里云镜像

    <mirror>
    		<id>nexus-aliyunid>
    		<mirrorOf>*mirrorOf>
    		<name>Nexus aliyunname>
    		<url>http://maven.aliyun.com/nexus/content/groups/publicurl>
    	mirror>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    image-20230908084802529

    引入Web模块

           <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-webartifactId>
            dependency>
    
    • 1
    • 2
    • 3
    • 4

    引入的时候可能会爆红

    1. 使用阿里云镜像配置Maven
    2. 在此依赖中添加版本的标签(version) 版本必须和当前使用的springboot的版本保持一致

    image-20230908103407224

    每次操作了pom文件 不要忘记 点击 右上角的刷新

    实现第一个控制层接口

    1. 创建一个controller的包
    2. 在该包下使用SSM中的技术来写一个接口
    package top.yxqz.number1.controller;
    
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    /**
     * @author: 余小小
     * @date: 2023/9/8
     * @description:Hello 控制层
     * 回顾SSM中的一些知识
     * 1.表示该类是一个控制层 必须要有controller注解 ---- MVC中的
     * 2.要想返回视图(页面)需要使用视图处理器(前端控制器)——————MVC中的
     * 3.要想返回数据 需要使用ResponseBody注解
     * 4.如果当前控制层都是返回数据 那么推荐使用RestController注解----推荐
     * 路由相关
     * 1.RequestMapping————万能
     * 2.GetMapping————get请求---刚开始学习的时候建议都用get
     * 3.PostMapping--post请求
     * 要想返回数据 我们必须创建有返回值的方法 返回的值  就会按照响应体 进行返回给客户端浏览器
     */
    @RestController
    public class Hello {
    
        /**
         * 返回一个文本信息---String
         */
        @GetMapping("/hello")
        public String method() {
            return "www.yxqz.top";
        }
    }
    
    
    • 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

    需要注意的细节

    1. 启动类的位置 一定注意 需要和使用了注解的类 保持一个兄弟关系或者 同一个父级关系
    2. springboot项目|模块 需要从启动类启动

    启动类的位置 一定注意 需要和使用了注解的类 保持一个兄弟关系或者 同一个父级关系

    image-20230908104704509

    访问路由:localhost:8080/hello

    image-20230908104738206

    浅浅的认识下配置

    通过springboot的脚手架快速构建项目 可以自动给我们生成一个配置文件 在resources目录下 并且是叫做application.properties

    • 修改tomcat的启动端口号

    操作resources目录下的application.properties

    # 修改tomcat的端口号
    server.port=8888
    
    • 1
    • 2

    image-20230908112231105

    在springboot项目中 在spirng-boot-starter-web启动器中

    1. 内置了tomcat
    2. 内置了关于spring和SpringMVC中需要的依赖
    3. 内置了一些其他的依赖

    image-20230908112424861

    使用其他应用服务器

    常见的应用服务器

    1. tomcat—性能高-轻量级
    2. jetty–轻量级————性能不如tomcat
    3. Apache—非轻量级

    因为在Springboot中 内置了tomcat 所以我们要想用自己的版本的服务器 或者使用其他的服务器 需要先将web启动器中的tomct进行过滤

            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-webartifactId>
                <version>2.7.15version>
    
                <exclusions>
                    <exclusion>
                        <groupId>org.springframework.bootgroupId>
                        <artifactId>spring-boot-starter-tomcatartifactId>
                    exclusion>
                exclusions>
            dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    添加jetty服务器

       
            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-jettyartifactId>
            dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5

    image-20230908113108888

    自定义banner

    参考网站:Ascii艺术字实现个性化Spring Boot启动banner图案,轻松修改更换banner.txt文件内容,收集了丰富的banner艺术字和图,并且支持中文banner下载,让你的banner好玩儿更有意思。-bootschool.net

    在resources目录下新建一个banner.txt的文件 在该文件中复制网站中生成的艺术字 即可

    
    //                          _ooOoo_                               //
    //                         o8888888o                              //
    //                         88" . "88                              //
    //                         (| ^_^ |)                              //
    //                         O\  =  /O                              //
    //                      ____/`---'\____                           //
    //                    .'  \\|     |//  `.                         //
    //                   /  \\|||  :  |||//  \                        //
    //                  /  _||||| -:- |||||-  \                       //
    //                  |   | \\\  -  /// |   |                       //
    //                  | \_|  ''\---/''  |   |                       //
    //                  \  .-\__  `-`  ___/-. /                       //
    //                ___`. .'  /--.--\  `. . ___                     //
    //              ."" '<  `.___\_<|>_/___.'  >'"".                  //
    //            | | :  `- \`.;`\ _ /`;.`/ - ` : | |                 //
    //            \  \ `-.   \_ __\ /__ _/   .-` /  /                 //
    //      ========`-.____`-.___\_____/___.-`____.-'========         //
    //                           `=---='                              //
    //      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^        //
    //            佛祖保佑       永不宕机     永无BUG                    //
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    image-20230908140849104

    Yml配置文件

    当properties和yml文件同时存在 的时候 properties的权限更高

    • 设置properties的配置值 :使用打点的方式进行行级别设置
    • 设置yml的配置值(推荐):使用空格来表示层级

    在springboot项目中 的配置文件名称必须叫做application

    使用yml的方式来设置tomcat的端口号:

    server:
      port: 88
    
    • 1
    • 2

    获取配置文件的信息值

    使用Spring中的@Value注解 配和Spring中的el表达式使用

        @Value("${server.port}")
        private String port;//获取Value值
    
        /**
         * 返回一个文本信息---String
         */
        @GetMapping("/hello")
        public String method() {
            return "www.yxqz.top 当前的服务器的端口号:" + port;
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
  • 相关阅读:
    AtCoder Beginner Contest 278 G.Generalized Subtraction Game(思维题/博弈 multi-sg)
    csdn最新最全pytest系列——pluggy插件源码解读(一)HookspecMarker类和HookimplMarker类分析
    JAVA中一段有趣的代码-关于类、多态、变量的执行分析
    go 1.18新特性(泛性 模糊测试 WorkSpace)
    [gRPC via C#] gRPC本质的探究与实践
    【Axios学习 二】一文通透Axios跨域和封装
    【Python Web】Flask框架(五)Bootstrap登录和后台管理案例
    LQR 控制器
    JDK、JRE和JVM
    C++多线程编程(第三章 案例3:把案例1改装成案例2的条件变量多线程方式)
  • 原文地址:https://blog.csdn.net/qq_40609008/article/details/132764992