![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
springboot
文章平均质量分 89
辰 羽
这个作者很懒,什么都没留下…
展开
-
SpringBoot中的拦截器和过滤器
Filter:过滤器,JavaWeb 的三大组件之一。属于JavaEE 的规范,是javax.servlet.Filter接口。过滤器的主要作用是:拦截请求、过滤响应。常见的应用场景为:权限检查、日记操作、处理不合法数据,统一进行编码设置…等。SpringBoot是利用@WebFilter配置Filter@WebFilter常用属性属性类型是否必需说明boolean否指定Filter是否支持异步模式否指定Filter对哪种方式的请求进行过滤。原创 2023-03-25 12:07:55 · 509 阅读 · 0 评论 -
SpringBoot 中配置日志
所以SpringBoot能自动适配所有的日志,而且底层使用slf4j+logback的方式记录日志,引入其他框架的时候,只需要把这个框架依赖的日志框架排除掉即可。在项目开发中,日志十分的重要,通过日志分析能解决很多问题,也能获取很多信息,Spring Boot 选用 SLF4J + Logback 的组合来搭建日志系统,并用INFO级别输出到控制台。将一些信息打印到控制台,现在可以使用 日志打印信息,这样速度更快。级别的日志输出到控制台,当然也可以根据其级别和输出的格式,在yml文件中配置。原创 2023-03-23 12:01:26 · 272 阅读 · 0 评论 -
SpringBoot中关于时间显示格式的处理
当然不想每个实体类都添加注解的话,也可以配置全局生效。(@JsonFormat的优先级更高,配置了@JsonFormat后,全局的不生效)我们从数据库获取的时间,在显示中可能是这样的。所以我们需要在实体类中使用注解。,来修改时间的格式(原创 2023-03-23 11:54:05 · 766 阅读 · 0 评论 -
SpringBoot集成Redis
相对于Jedis来说可以方便地更换Redis的Java客户端,比Jedis多了自动管理连接池的特性,方便与其他Spring框架进行搭配使用,是spring大家族的一部分,提供了在srping应用中通过简单的配置访问redis服务,对reids底层开发包(Jedis, JRedis, and RJC)进行了高度封装。Jedis的依赖:Jedis是Redis官方推出的一款面向Java的客户端,提供了很多接口供Java语言调用。创建redis的config类,设置RedisTemplate的序列化配置。原创 2023-03-23 11:52:32 · 314 阅读 · 0 评论 -
SpringBoot开启任务(异步任务、定时任务、邮件任务)
使用 @Scheduled(cron=“秒分时日月周几”)注解 来设置什么时候执行。可以让程序新开一个线程去执行该任务,而使用户在使用时界面不会因为程序而卡顿。在springboot的启动类中添加开启异步任务的注解。在controller方法中添加异步的注解。定时任务中需要用到cron 表达式。在yml文件中配置发送邮箱的信息。开启支持定时任务的注解。原创 2023-03-23 11:34:32 · 354 阅读 · 0 评论 -
SpringBoot集成Swagger
现在的编程从后端时代向逐渐编程后端分离的时代,前后端通过API接口进行交互,前后端相对独立,于是Swagger就产生了,它是一个简单但功能强大的API表达工具,号称最流行的API框架。使用Swagger生成API,我们可以得到交互式文档,自动生成代码的SDK以及API的发现特性等。Swagger官网Vue+Springboot 是现今主流的前后端分离的方案。原创 2023-03-23 11:29:56 · 226 阅读 · 0 评论 -
SpringBoot使用RestFul风格路径
RestFul风格是一种当前比较流行的互联网软件架构模式,它利用HTTP 协议的特性,规定了一套资源获取的方式,,它可以使软件更简洁,更有层次,易于实现缓存等机制。访问路径都为http://localhost:8080/user,但根据不同的访问方式实现了增删改查四种操作。SpringBoot因为本身就继承了SpringMVC,所以使用RestFul和SpringMVC一样。传统的资源操作是通过不同的参数来实现的。使用MockMvc对其进行测试。原创 2023-03-23 10:51:46 · 201 阅读 · 0 评论 -
SpringBoot集成Lombok
我们在编写实体类时,通常都是将属性设置成 private ,然后编写get 和set 方法对象属性信息获取和修改,而Lombok就是一个通过注解的方式减少get、set方法、构造方法等等的编写。使用在实体类中,不需要写set、get等方法,添加上 @Data 注解后会自动生成这些方法。idea安装lombok的插件。导入lombok依赖。原创 2023-03-23 10:51:57 · 130 阅读 · 0 评论 -
SpringBoot中四种异常处理的方式
SpringBoot 默认的异常处理机制:一旦程序中出现了异常 SpringBoot 就会请求 /error 的 url。在 SpringBoot 中提供了一个叫 BasicExceptionController 来处理 /error 请求,它会跳转到默认显示异常的页面来展示异常信息。不过我们可以在 resources/templates/ 内添加 error 页面来自定义异常页面,名字和路径不能更改,因为BasicExceptionController 默认跳转到这此路径。原创 2023-03-23 10:50:02 · 1555 阅读 · 0 评论 -
SpringBoot测试(Junit单元测试、MockMvc测试Http请求 )
使用测试 可以对项目中的方法进行测试,看它的执行是否能达到我们的预期效果,对相应的类创建对应的测试类,在方法上添加注解 @Test,就能使测试方法如同 main方法一样可以直接运行,这样就能观察到该方法最终执行的效果。MockMvc是由spring-test包提供,MockMvc实现了对Http请求的模拟,能够直接使用网络的形式,转换到Controller的调用,使请求的验证变得更加方便。需要去掉@Test注解。选择需要测试的方法,并生成测试的类(⽣成了单元测试的框架类,具体的业务代码要⾃⼰填充)原创 2023-03-23 10:48:12 · 1791 阅读 · 0 评论 -
SpringBoot开启事务
不同的是Spring中我们要配置事务管理器,而Spring Boot 为我们提供了默认的事务管理器,当我们使用了 spring-boot-starter-jdbc 的启动器时,框架会自动注入 DataSourceTransactionManager 管理器。@Transactional默认回滚的是RuntimeException的异常,如果抛出的不是RuntimeException的异常,数据库是不会回滚的。在serviceImpl的方法上加注解:@Transactional。导入jdbc的启动器。原创 2023-03-23 10:45:52 · 1073 阅读 · 0 评论 -
SpringBoot整合MyBatis 和 MyBatis-Plus
MyBatis-Plus 是基于Mybatis的一个工具,它是对MyBatis的增强,在其基础上只进行增强,不进行改变,是为了简化MyBatis开发,提高效率而研发的。yml文件中配置Mybatis属性 (可以导入mybatis的XML配置文件)整合MyBatis-Plus 需要将MyBatis 的相关依赖移除。导入MyBatis-Plus的启动器(移除原来mybatis的)yml文件中配置mybatis-plus。导入MyBatis的启动器。启动类添加包的扫描(不变)添加log4j的日志。原创 2023-03-22 14:53:41 · 312 阅读 · 3 评论 -
SpringBoot配置数据源(HikariCP、Druid)
Druid 是阿里推出的,支持所有 JDBC(Oracle、MySQL、SQL Server 和 H2等 )兼容的数据库连接池。Druid 结合了 C3P0、DBCP 和 PROXOOL 等数据源产品的优点,同时还加入了强大的监控功能。通过 Druid 的监控功能,可以实时观察数据库连接池和 SQL 的运行情况,帮助用户及时排查出系统中存在的问题。Spring Boot 提供了一个名为 JdbcTemplate 的轻量级数据访问工具,它是对 JDBC 的封装。导入Druid 的依赖。导入JDBC的启动器。原创 2023-03-22 14:52:19 · 1102 阅读 · 0 评论 -
SpringBoot配置国际化
Spring Boot 从容器中获取 MessageSourceProperties 组件,并从中读取国际化资源文件的 basename(文件基本名)、encoding(编码)等信息,将它们封装到 ResourceBundleMessageSource 中;resource包内创建i18n包,在内部创建国际化资源文件(文件格式为:基本名_ 语言代码 _国家或地区代码),idea会自动识别,进行合并。可视化页面添加完毕后,会在配置文件中以 键=值的形式自动生成。在配置文件中设定国际化文件的位置。原创 2023-03-22 14:48:54 · 874 阅读 · 0 评论 -
SpringBoot整合模板引擎(Thymeleaf、Freemarker、JSP)
前后端分离可以说是当今最主流的思想(前端写前端的代码,后端写后端的代码,之间互不影响)。在传统的 Java Web 开发中,通常都是使用 JSP 来进行前台页面的开发。但 JSP 页面是HTML+Java一起写的,显然不符合“前后端分离”的思想。因此在现在的 Java Web 开发中,JSP的使用已经逐渐变小。其中 Thymeleaf 就是其中较为优秀的代替JSP使用的技术之一。Thymeleaf 它是一种模板引擎,用来渲染 XML、XHTML、HTML5、JavaScript、CSS 甚至纯文本。原创 2023-03-22 14:43:30 · 2717 阅读 · 0 评论 -
搭建SpringBoot项目的基础配置(依赖、配置文件、多环境陪配置、静态资源问题)
通过导入webjars的依赖:它可以将 Web 前端资源(JS,CSS 等)打成一个个的 Jar 包,然后将这些 Jar 包部署到 Maven 中央仓库中进行统一管理,当 Spring Boot 项目中需要引入 Web 前端资源时,只需要访问。不同环境的配置也不尽相同,例如开发环境使用的是开发数据库,测试环境使用的是测试数据库,而生产环境使用的是线上的正式数据库。SpringBoot项目中的依赖会根据项目创建时选择的依赖自动添加,springboot管理的可以通过启动器添加,其余的正常添加。原创 2023-03-22 14:44:01 · 1797 阅读 · 0 评论 -
springboot的启动方法
在启动时,首先实例化SpringApplication类,构造器加载初始化器和监听器,然后调用run方法,run方法启动监听器,加载配置文件,装配环境参数,打印banner的图案,获取处理上下文区域,加载并生产bean,处理完成后发布上下文,执行Runner运行器,并返回。SpringBoot的启动是通过启动类的main方法来启动的。发布应用执行Runner运行器,返回上下文。创建处理上下文,加载并创建bean对象,加载配置文件,装配配置参数。打印banner图案。原创 2023-03-22 14:38:32 · 387 阅读 · 0 评论 -
SpringBoot中的异常处理组件
若找不到,则依次从静态资源文件夹中查找 error/status.html,若在静态文件夹中找到了该错误页面,则返回并结束整个解析流,如果还是没有找到,则处理默认的 “/error ”请求,使用 Spring Boot 默认的错误页面(Whitelabel Error Page)。ErrorMvcAutoConfiguration 向容器中注入了一个组件默认错误属性处理工具 DefaultErrorAttributes,可以从请求中获取异常或错误信息,并将其封装为一个 Map 对象返回。原创 2023-03-22 14:39:23 · 248 阅读 · 0 评论 -
SpringBoot中关于 MVC的自动配置
SpringBoot中关于 MVC的自动配置原创 2023-03-22 14:34:36 · 172 阅读 · 0 评论 -
SpringBoot中关于数据源的相关配置
注解引入内部的限制条件类,检测容器中是否已经存在池化数据源(PooledDataSource),若不存在,通过@Import 注解引入 EmbeddedDataSourceConfiguration 类来向容器中添加一个内嵌的数据源(DataSource),若存在,则 EmbeddedDatabaseConfiguration 不能被实例化。用来检测容器中是否已经存在池化数据源的,若存在,可以向容器中添加池化数据源。PooledDataSourceConfiguration:池化数据源配置。原创 2023-03-22 14:38:04 · 447 阅读 · 0 评论 -
SpringBoot中的配置文件
YAML 全称 YAML Ain’t Markup Language,它是一种以数据为中心的标记语言(以 .yml 或 .yaml 结尾),Spring Boot 中的 spring-boot-starter-web 或 spring-boot-starter 都对 SnakeYAML 库做了集成, 只要项目中引用了这两个 Starter 中的任何一个,Spring Boot 会自动添加 SnakeYAML 库到 classpath 下。“张三\n 李四”:输出;会转义特殊字符,‘张三\n 李四’:输出;原创 2023-03-22 14:32:30 · 201 阅读 · 0 评论 -
SpringBoot中自动配置的原理(启动类注解)
它内部的注解还是挺多的,但是其中有三个核心的注解:@SpringBootConfiguration、@ComponentScan 、@EnableAutoConfiguration,一个底层是spring的核心的配置类,第二个用来扫描包,最后一个是 SpringBoot 可以自动配置的原因所在。SSM在使用时需要进行一系列的配置,比如配置 DispatcherServlet、配置视图解析器、配置事务管理器等等、配置各个包的扫描,它的很多组件需要自己配置后才可以使用。原创 2023-03-20 09:53:57 · 488 阅读 · 0 评论 -
springboot简介和项目搭建、启动器形式的依赖
随着功能的不断增多,Spring的搭建也越来越复杂,而Spring Boot 是 Pivotal 团队在 Spring 的基础上提供的一套全新的开源框架,其目的是为了简化 Spring 应用的搭建和开发过程。Spring Boot 去除了大量的 XML 配置文件,简化了复杂的依赖管理,它集成了大量常用的第三方库配置,大部分的 Spring Boot 应用都只需要非常少量的配置代码(基于 Java 的配置),开发者能够更加专注于业务逻辑。SpringBoot就是为了简化开发,核心思想是约定大于配置。原创 2023-03-20 09:49:48 · 574 阅读 · 0 评论