SpringBoot杂记二

本节内容是对JavaEE专栏Day30—Day32的总结,以一个大案例的方式演示SpringBoot的转发、重定向,还有拦截器、文件上传、错误处理、整合数据库、整合myBatis、指标监控等等知识

一、Web页面

1.搭建项目

在这里插入图片描述

在这里插入图片描述

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

2.完成登录

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

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

重定向为什么可以防止重复提交?

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

3.登录信息展示

信息展示在这里插入图片描述
在这里插入图片描述

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

4.Table项的展示

1.table页的展示

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

2.dynamic_table展示用户数据

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

二、拦截器

第一步:先自定义一个拦截器

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

第二步:将自定义的拦截器放到容器中

1.你先考虑要拦截哪些东西,不拦截哪些东西

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

2.把你自定义的拦截器放到容器中

在这里插入图片描述

3.静态资源放行的第二种方式

在这里插入图片描述

第三步:修改Controller

在这里插入图片描述

运行结果:

在这里插入图片描述

三、文件上传

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

四、错误处理

在这里插入图片描述

1.几种异常处理的方法(超重点)

第一种:前端去处理

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

第二种:@ControllerAdvice+@ExceptionHandler处理全局异常(超级重点)

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

第三种:@ResponseStatus+自定义异常(重点)

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

第四种:自定义实现 HandlerExceptionResolver 处理异常;

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

关于设置优先级

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

五、整合数据库

1.使用默认的HikariDataSource

1.导入依赖

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

2.配置application.yml

在这里插入图片描述

3.直接写sql语句
你的jdbcTemplate这些都已经帮你配置好了,直接用就行

在这里插入图片描述
也可以在这里插入图片描述

2.自定义整合Druid数据源

Druid是第三方的,所以不会像上面那么简单

1.导入数据源依赖

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.17</version>
        </dependency>

2.编写配置类

在这里插入图片描述

3.编写sql语句

在这里插入图片描述
也可以在这里插入图片描述

3.使用starter来整合Druid数据源

1.引入Druid的starter

在这里插入图片描述

2.配置application.yml

在这里插入图片描述

3.编写sql语句

在这里插入图片描述
也可以在这里插入图片描述

六、整合myBatis

用了整合MyBatis后 整合数据库 基本上就用不上了

1.使用配置文件版

1.引入starter

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

2.完整流程

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

3.改进

在这里插入图片描述

4.说明
使用配置文件版并不会被使用注解版取代,在开发中混合使用配置文件+注解才是经常的,所以不要想着它就不重要



2.使用注解版

1.引入starter

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

2.完整流程

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

3.关于application.yml

在这里插入图片描述



3.混合版(开发中常用)

1.引入starter

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

2.完整流程

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

3.问题及改进

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

4.问题及改进

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

七、整合MyBatisPlus

参考文档:MyBatisPlus官网

1.整合与测试

1.引入starter

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.1</version>
        </dependency>

2.对一些功能的小解释

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

3.完整流程

下面只不过是小测试,所以没有Service层(不要怀疑我缺失了截图)在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.将MyBatisPlus整合到后台管理系统中

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

3.完成分页功能

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

4.完成删除用户的功能

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

八、整合Redis

1.Redis的入门

1.导入redis的starter

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>

2.redis环境(略)
1、购买阿里云按量付费redis。经典网络
2、申请redis的公网连接地址
3、修改白名单 允许0.0.0.0/0 访问

3.redis小测试

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

3.redis更改连接工厂

你得先导入jedis相关的依赖
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
        </dependency>

在这里插入图片描述

2.使用Redis做监控统计

让拦截器操作redis记录访问某个网址多少次

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

九、指标监控

1.添加依赖

 		<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

2.配置application.yml
如果不在application.yaml中配置下面的信息,则只能访问 /health 和 /info

在这里插入图片描述

配置了上述信息就可以web访问所有端点,但是不安全

在这里插入图片描述

3.对某个端点的具体配置

没必要开启所有端点,不安全;而是建议开启经常使用的具体的端点
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

十、Profile环境切换

1.关于配置文件激活

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

2.命令行可以修改配置文件的任意值

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

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

3.关于@Profile()

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

4.profile分组

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

十一、配置优先级

在这里插入图片描述

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你的甲乙丙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值