SpringBoot入门学习基础

一、SpringBoot简介

创建新模块,选择Spring初始化,并配置模块相关基础信息
创建springBoot步骤
如果网速慢得朋友可以在2那个步骤下面打勾
输入 https://start.aliyun.com/网站创建
选择当前模块需要使用的技术集
在这里插入图片描述
需要啥就选择啥就行
然后开发控制器类

package com.aotain.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author zengFanLiang
 * @version 1.1
 * 
 */
@SuppressWarnings("all")
@RestController
@RequestMapping("/Customal")
public class BookController {
@GetMapping("/{id}")
    public String getBiId(@PathVariable Integer id){
        System.out.println("id===>"+id);
        return "hello spring boot!";
    }
}

然后就是配置类了
自定义对象封装指定数据【常用】
在这里插入图片描述
如图所示
然后定义一个封装类
在这里插入图片描述
prefix里面得属性要和配置上得一致
导入了lombak依赖就可以不必到setergeter方法
直接打上 @Data
尝试运行试一下,如下图:
在这里插入图片描述
封装是ok的,只是飘红是idea显示问题,可以去除掉
,其实spring内置了一个封装类:封装全部数据到Environment对象
在这里插入图片描述

多环境开发配置

在这里插入图片描述
在这里插入图片描述

  • properties文件多环境启动
#主启动配置文件 application.properties
spring.profiles.active=pro
#环境分类配置文件 application-pro.properties
server.port=80
#环境分类配置文件 application-dev.properties
server.port=81
#环境分类配置文件application-test.properties
server.port=82
3.2 多环境启动命令格式
  • 带参数启动SpringBoot
    • 带参数启动SpringBoot
java –jar springboot.jar --spring.profiles.active=test
java –jar springboot.jar --server.port=88
java –jar springboot.jar --server.port=88 --spring.profiles.active=test
3.3 多环境开发控制

Maven与SpringBoot多环境兼容(步骤)

①:Maven中设置多环境属性

<profiles>
    <profile>
        <id>dev_env</id>
        <properties>
            <profile.active>dev</profile.active>
        </properties>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
    <profile>
        <id>pro_env</id>
        <properties>
            <profile.active>pro</profile.active>
        </properties>
    </profile>
    <profile>
        <id>test_env</id>
        <properties>
            <profile.active>test</profile.active>
        </properties>
    </profile>
</profiles>

4 通用异常

4.1 什么是通用异常

目前的代码中如果发生系统异常,则直接会给用户抛出不友好的异常信息。

为了提高前后台用户的体验,并且系统本身很多的地方都会有一些业务相关的异常,需要统一进行捕获并进行返回给前端。springmvc为我们提供了几个注解 实现统一异常的捕获功能,根据不同的异常的类型进行不同的处理。

总结:

1.需要处理系统异常相关 未知的错误
2.需要处理自定义业务异常相关  已知的业务的错误。例如 商品获取不到,查询不到数据等。

全局异常处理

@RestControllerAdvice
@Slf4j(topic = "SYSTEM_ERROR")
public class GlobalExceptionHandler {

    /**
     * 处理未知异常
     * @param e
     * @return
     */
    @ExceptionHandler(value = Throwable.class)
    public ResultVo handleException(Throwable e){
        log.error("系统异常",e);
        return ResultVo.error();
    }

    /**
     * 处理业务异常
     * @param e
     * @return
     */
    @ExceptionHandler(value = LeadNewsException.class)
    public ResultVo handleLeadNewsException(LeadNewsException e){
        return ResultVo.bizError(e.getMessage());
    }

    /**
     * 处理请求参数校验失败,返回友好提示
     * @param e
     * @return
     */
    @ExceptionHandler(value = MethodArgumentNotValidException.class)
    public ResultVo handleMethodArgumentNotValidException(MethodArgumentNotValidException e){
        List<ObjectError> allErrors = e.getBindingResult().getAllErrors();
        StringJoiner sj = new StringJoiner(";");
        for (ObjectError error : allErrors) {
            sj.add(error.getDefaultMessage());
        }
        return ResultVo.bizError(sj.toString());
    }

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值