SpringBoot
文章平均质量分 62
SpringBoot相关文章
CHQIUU
当你发现自己的才华撑不起野心时,就请安静下来学习吧
展开
-
SpringBoot项目打包成jar后读取包内文件报错问题解决方法
文章目录问题描述解决办法问题描述Springboot项目在开发环境中,使用 ResourceUtils.getFile(“classpath:files/test.xlsx”) 能读取到文件,结果打包成jar后,读取报错了java.io.FileNotFoundException: class path resource [files/test.xlsx] cannot be resolved to absolute file path because it does not reside in t原创 2022-05-01 08:15:00 · 10527 阅读 · 1 评论 -
SpringBoot更新到2.6.0启动报错 Failed to start bean ‘documentationPluginsBootstrapper‘ 问题处理
SpringBoot项目中集成了knife4j,在将SpringBoot更新到2.6.0后启动项目报错 Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException,导致系统不能正常启动。原创 2021-12-23 17:31:23 · 16643 阅读 · 28 评论 -
Springboot 项目中随机生成程序运行端口(项目端口自定义)
文章目录前言前言最近在开发一个客户端运行的服务程序,考虑到不需要用户知道程序使用的哪个端口,也不需要用户去配置运行的端口,索性就有程序自动随机的使用一个端口。如果是这样还得考虑到所使用的端口是否有被占用而导致这个服务程序无法正常启动的情况。这里使用Spring Boot 2.0 中,可通过 WebServerFactoryCustomizer 接口定制功能,对运行程序的端口进行自定义分配。代码如下:package com.chqiuu.test;import lombok.extern.sl原创 2021-11-22 11:13:44 · 10425 阅读 · 0 评论 -
Spring Security 中基于ApplicationListener记录用户登录日志(含登录成功和登录失败)
文章目录一、AuthenticationFailureListener(认证失败事件发布监听器)二、AuthencationSuccessListener(认证失败事件发布监听器)三、数据库脚本SpringBoot项目集成Spring Security后,想要记录用户登录操作日志。其实在Spring Security中 org.springframework.security.authentication.event包下定义了发生认证时的所有事件类型,其中AbstractAuthenticationEv原创 2021-09-27 10:32:46 · 11304 阅读 · 1 评论 -
Spring Security 登录失败时获得用户输入账号和密码
文章目录前言一、代码实现前言在记录用户登录操作日志,是想要记录用户登录失败的操作日志信息,记录当次用户登录的IP、登录名及输入的密码信息。当然你还可以用来控制用户多次登录失败后锁定用户登录等。一、代码实现可以考虑使用import cn.hutool.extra.servlet.ServletUtil;import lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Autowired;原创 2021-09-26 16:19:52 · 10450 阅读 · 0 评论 -
Windows系统中使用bat批处理文件启动Springboot项目jar说明,让部署跟简便
文章目录前言一、准备项目程序及配置文件二、编写启动bat文件三、执行批处理前言在项目开发和部署中,根据业务需要,我的项目程序不一定都是运行在Linux系统环境中,也有运行在Window Server中的,那么我们样才能更加便捷的部署和更新程序呢。下面介绍一种通过编写bat批处理文件方式,启动Springboot项目的方法供大家参考。一、准备项目程序及配置文件以code-generator-plus项目为例,打包好的jar包和config文件拷贝到部署目录,如下图所示二、编写启动bat文件原创 2021-08-13 17:48:08 · 10856 阅读 · 4 评论 -
手把手教你编写bat文件重启Springboot项目生成的jar包
在项目运维中,会遇到要更新线上项目的jar情况。有些项目根据客户要求可能会运行在Windows Server中,当我们更新发布新的jar文件时候都要执行多条命令才能更新完成。这里为大家提供一条新的思路进行参考,那就是建立一个批处理文件,完成jar项目重新启动功能。原创 2021-07-16 14:58:50 · 10246 阅读 · 18 评论 -
为大家提供一个基于Springboot开发的SSM代码自动生成工具(附源码地址)
code-generator-plus是基于Springboot开发的SSM代码生成器,使用 Apache FreeMarker 作为代码文件的模板,用户可以一键将数据库中的表生成entity、xml、dao、service、html、js、sql代码文件,并集成表的基础操作接口及前端功能实现(数据表的增加、删除、修改、根据ID获取信息以及分页查询功能),减少60%以上的开发任务;该工具支持所有实现JDBC规范的数据库;默认集成了MySQL数据库脚本;该工具提供了两种数据库表导入方式,连接数据库或直接导原创 2021-07-02 14:10:45 · 10426 阅读 · 113 评论 -
自己开发邮编查询,根据地址查邮编代码实现(JAVA)
文章目录前言一、数据准备二、代码实现1. 格式化地址对象2. mapper数据库查询代码3. 查询代码实现三、运行效果前言通过地址查询邮编处理步骤:1. 首先要对地址进行格式处理,去掉多余部分,某某路后面的部分不要,因为地址库中可能没有会查不到;2. 对省市县进行处理,去掉省市县(民族)后缀;3. 若提供的详细地址在库中查不到,则从地址尾部去掉一个字再查询,直到查询到数据为止;4. 使用Mysql全文检索(5.7以后的版本),提供查询精度;一、数据准备首先准备全国邮编数据库,这里我整理了原创 2021-06-30 11:11:36 · 11469 阅读 · 3 评论 -
SpringBoot性能调优笔记
分析起一个单纯的spring boot的web项目,容器为undertow自动GC后使用的内存约为28M,随着运行产生一些运行对象,最高达到约300M起一个只有一个接口的spring cloud euraka项目,容器为undertow自动GC后使用的内存约为49M,最高达到约344M,每隔约17分钟执行一次垃圾回收hap-user-service服务,不添加JVM参数自动GC后使用的内存约为115M,最高达到约1.4G,每隔约50分钟执行一次垃圾回收。本机内存为16G,JVM自动原创 2021-06-24 11:00:34 · 10737 阅读 · 4 评论 -
SpringBoot项目中Controller层代码编写规范整理
SpringBoot项目中Controller层代码编写规范整理Controller层代码规范SpringMVC接口定义要注意以下常见的几种问题1. 返回格式不统一2. 没有考虑失败情况3. 出现和业务无关的输入参数Controller层代码规范主要的内容是就是接口定义里面的内容,你只要遵循里面的规范,controller就问题不大,除了这些,还有另外的几点:所有函数返回统一的ResultBean/PageResultBean格式;没有统一格式,AOP无法玩.ResultBean/PageRes原创 2021-06-24 10:49:18 · 10592 阅读 · 2 评论 -
Springboot项目中对返回前端的JSON数据进行格式化配置
文章目录前言对返回前端的JSON数据进行格式化代码前言在WEB项目开发中,通常都是前后端分离,由后端提供接口前端进行访问,返回的数据一般是JSON格式,在配置项目时候会对返回JSON进行格式化。下面是我在多个项目开发过程中总结出来的一个通用的JSON数据格式化的通用配置,希望能够帮助到大家。对返回前端的JSON数据进行格式化代码代码如下(示例): /** * 对返回前端的JSON数据进行格式化 * * @return 进行格式化ObjectMapper原创 2021-06-21 16:15:11 · 10419 阅读 · 0 评论 -
介绍Spring Boot 启动时,自动执行指定方法的 7 种方法
目录前言实现方式1.实现ServletContextListener接口contextInitialized方法2.静态代码块方式3.@PostConstruct注解方式4. 实现ServletContextAware接口setServletContext 方法5. @EventListener方式6. 实现ApplicationRunner接口run 方法7.实现CommandLineRunner接口run 方法以上几种方式的执行顺序总结前言在实际项目开发过程中,我们有时候需要让项目在启动时执行特定原创 2021-06-21 15:45:17 · 15820 阅读 · 0 评论 -
Spring 5中WebClient支持SSL配置
问题描述:最近在学习WebClient做爬虫,尝试使之能够支持SSL。在网上找了很久的资料,发现这方面的资料很少,而且多数都不准确。故记录一下。解决方案:代码如下: public static WebClient createWebClient() throws SSLException { SslContext context = SslContextBuilder.forClient().trustManager(InsecureTrustManagerFactory.INST原创 2021-05-28 11:27:22 · 11033 阅读 · 1 评论 -
MyBatis-Plus自定义DefaultSqlInjector,添加自定义通用方法(replace、insertIgnore、insertIgnoreBatch)
文章目录前言一、代码结构二、使用步骤1.创建通用方法的实现类(InsertIgnore、InsertIgnoreBatch、Replace)2.MybatisPlus自定义SQL方法枚举3.创建自定义SQL注入器CustomerSqlInjector3.自定义基础CustomerMapper继承BaseMapper4.自定义基础Service继承IService及实现类5.增加或MybatisPlus配置类,加载自定义sql注入器总结前言虽然MyBats-Plus的BaseMapper提供了非常好用,原创 2021-05-25 10:36:02 · 14857 阅读 · 14 评论 -
介绍一个基于Spring Redis Lua的无侵入应用级网关限流框架
介绍一个基于Spring Redis Lua的无侵入应用级网关限流框架项目介绍为什么选择spring-redis-current-limitQuick Start1. 引入spring-redis-current-limit2. 注册spring-redis-current-limit1.SpringBoot或SpringCloud项目2.Spring项目3. 配置您的redis连接1.SpringBoot或SpringCloud项目2. Spring应用4. 使用spring-redis-curre原创 2021-01-22 09:13:14 · 10223 阅读 · 29 评论 -
Spring Boot项目中集成Swagger knife4j并自定义访问路径
我们在项目开发中,往往期望做到前后端分离,也就是后端开发人员需要输出大量的服务接口,在没有Swagger之前需要我们话费大量的精力去编写接口文档。包含如接口的地址、需要传递参数情况、返回值的JSON数据格式以及每一个字段说明、当然还要考虑HTTP请求头、请求内容等信息。而随着项目的开发进度和后期进行迭代,后端输出的接口往往会面临修改、修复等问题,那也意味着接口文档又要进行相应的调整。接口文档的维护度以及可读性就大大下降。既然接口文档需要花费精力去维护,还要适当的进行面对面交流沟通。Swagger为我们解原创 2020-11-20 17:08:36 · 20731 阅读 · 9 评论 -
SpringBoot项目增加统计接口耗时监控拦截器
话不多说直接上代码:import cn.hutool.core.util.StrUtil;import cn.hutool.extra.servlet.ServletUtil;import lombok.extern.slf4j.Slf4j;import org.springframework.lang.Nullable;import org.springframework.web.bind.annotation.RequestMethod;import org.springframewo原创 2020-10-14 10:28:43 · 11157 阅读 · 3 评论 -
Spring Boot Validator校验注解配置说明
Spring Boot Validator校验注解配置说明验证注解验证的数据类型说明空检查@Null任意类型验证注解的元素值是null@NotNull任意类型验证注解的元素不是null@NotBlankCharSequence子类型(CharBuffer、String、StringBuffer、StringBuilder)验证注解的元素值不为空(不为null、去除首尾空格后长度不为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比原创 2020-09-24 16:27:10 · 10330 阅读 · 1 评论 -
SpringBoot项目基于@RestControllerAdvice注解进行全局异常统一处理
当我们在使用SpringBoot开发项目时,通常会对异常进行全局统一处理。在SpringBoot项目中,要进行全局异常处理通常有3种方式:通过@RestControllerAdvice或@ControllerAdvice注解方式;通过AOP切面方式;通过继承ErrorController方式;通过权衡,这里我们还是采用注解方式,减少代码耦合度,项目开上去也比较清爽。创建GlobalExceptionHandler类并添加注解@RestControllerAdvice,具体代码如下所示。当然你也原创 2020-09-01 09:13:38 · 10549 阅读 · 4 评论 -
基于Maven的Springboot项目源码部署到Docker解决方案
在实训项目部署过程中需使用Maven对项目进行构建,这样用户只需要提交项目源代码,由Maven对项目进行构建。一、开发环境准备本次实战需要提前准备好以下内容:Docker服务所在环境:CentOS Linux release 7.6.1810 Docker:19.03.12二、实现步骤1. 项目源码准备首先,需要将Springboot项目源代码拷贝到Docker服务所在服务器上,需包含src文件夹和pom.xml文件。如下图所示:2. 添加Dockerfile文件..原创 2020-07-17 17:08:17 · 10127 阅读 · 0 评论 -
使用Docker插件实现Springboot项目远程部署
IntelliJ IDEA的Docker插件能帮助我们将当前工程制作成Docker镜像、运行在指定的远程机器上,是学习和开发阶段的好帮手。一、开发环境准备本次实战需要提前准备好以下内容:开发环境操作系统:win10 IntelliJ IDEA: 2018.2.4 (Ultimate Edition) JDK:1.8.0_181 Maven:3.5.0 Docker服务所在环境:CentOS Linux release 7.6.1810 Docker:1.13.1, build b2f7原创 2020-07-17 17:00:55 · 10156 阅读 · 0 评论