
springboot
Adorable_Rocy
把热爱做到极致!
展开
-
SpringBoot 整合Flyway 常见问题【科普解决】
很多网上关于Flyway整合springboot的说明并不明确Flyway在6.0之前是有兼容的,在6.0之后是没有做兼容的,小编的版本是6.0+报错如下:Caused by: org.flywaydb.core.api.FlywayException: Validate failed: Detected failed migration to version 2.3.0.2020081801 (role rights) at org.flywaydb.core.Flyway.doValidate(原创 2022-04-15 10:36:03 · 1328 阅读 · 1 评论 -
SpringBoot 图片上传(详解篇)
前言:SpringBoot在服务器内上传文件,是临时文件,在重启时候会生成另外的目录,也就意味着原来上传的图片在重启后就访问不到了。1.图片上传@PostMapping("/upload") public CommonResult insertDbMsPhoto(@RequestPart("photos") MultipartFile[] photos, @RequestParam("mid") String mi原创 2021-07-31 15:21:24 · 14712 阅读 · 0 评论 -
SpringBoot debug模式启动超长延时卡顿
正常的启动,部署启动全都是正常并且没有问题的,但是通过debug启动就出现超长延时缓慢启动,甚至还启动失败!!!解决方案:把项目删除,然后重新从git上面拉下来,再重新跑即可原创 2021-07-22 17:18:35 · 303 阅读 · 2 评论 -
SpringBoot整合SVN上传代码错误
报错出现这种问题,一般是SVN版本没有进行更新就直接提交,更新再提交即可原创 2021-07-15 10:28:03 · 233 阅读 · 0 评论 -
SpringBoot整合Orcale For循环和查询数据库效率比较
前言:大家都知道Web端,每天访问量都巨大,如果直接查询数据库的话,用不了半天估计就已经刷爆了,所以引入的缓存的概念,借入缓存舒缓压力,让我们来对比一下for循环和查询数据库的效率比较使用For循环进行数据查询耗时0毫秒查询数据库方式耗时48毫秒很明显为了效率考虑而言,结合缓存使用是最效率的方式...原创 2021-07-09 10:15:03 · 1099 阅读 · 0 评论 -
SpringBoot整合Mybatis报错:Cause: java.lang.UnsupportedOperationException]
要细心一点哦,检查是否遗漏GET、SET方法以及构造器原创 2021-07-03 15:15:50 · 233 阅读 · 0 评论 -
SpringBoot报错:Content type ‘multipart/form-data;boundary=xxxx
这个问题就是同时接收对象和json数据,在接收的时候发生了异常解决办法删除@RequestBody即可原创 2021-07-03 10:20:23 · 1231 阅读 · 0 评论 -
SpringBoot整合Orcale
前言:直接引入orcale坐标是会报异常的,所以操作过程中会比较复杂1.下载orcale6的jar包2.进入maven bin目录下输入指令:mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=jar包存在的目录3.导入jar包坐标 <dependency> <groupId&g原创 2021-06-28 09:59:02 · 229 阅读 · 0 评论 -
Restful 接口数据校验(json schema)
前言:最近工作中需要对接口数据进行监控校验,在熟读官网文档之后,发现用起来是真的挺不错的JSON Schema是什么?JSON Schema其实也是一组特殊的json数据,它是用来标记和校验JSON数据的,目前该约定的草案已经到第七版了(draft-07)。JSON Schema语法格式也十分易读,可读性很强。如何获取JSON Schema呢?JSON Schema在各个语言下都有基本的实现,不同语言当然对约定草案支持的程度也不通,小编在这里使用的JAVA语言官网doc1.搭建识别工具原创 2021-06-25 09:37:06 · 689 阅读 · 2 评论 -
浅谈HTTP(简) 数据表单提交篇
前言:关于HTTP中,基本涉及到几个问题:我们是如何保存用户状态的呢?我们是如何控制用户状态的呢?我们又是如何保证数据安全传递的呢?我们是如何保证防止被篡改数据的呢?我们又是如何控制多端、异地登录的呢?基本流程图如下:1.拦截器@Configurationpublic class LoginConfigrable implements WebMvcConfigurer { @Autowired UserService userService; @Overr原创 2021-06-17 11:16:45 · 526 阅读 · 0 评论 -
SpringBoot 在拦截器中注入Bean
前言:我们都知道,直接在拦截器中注入Bean,返回值一定是null,所以我们需要通过构造器的方式去完成操作1.生成拦截器构造器,注入需要的组件2.配置类中式可以自动注入的,自动注入后再传入拦截器的构造方法中,实现传递赋值补充:debug查看注入情况通过构造器方式,完成组件注入,但是直接使用自动注入是无法注入的...原创 2021-06-10 09:33:52 · 1002 阅读 · 2 评论 -
Failed to configure a DataSource: ‘url‘ attribute is not specified and no embedd(究极踩坑完美解决)
前言:Failed to configure a DataSource: ‘url’ attribute is not specified and no embedd这个错误想必大家已经非常非常熟悉了,关于数据库配置的问题,但是这种错误还有一种坑,随我来看1.对于这个错误,一般是没有配置数据源导致spring: datasource: # 当前数据源操作类型 type: com.alibaba.druid.pool.DruidDataSource # mysql驱动类原创 2021-05-24 15:48:24 · 10124 阅读 · 8 评论 -
SpringBoot 学习笔记心得(九)自定义Starter启动器
前言:SpringBoot较为核心的地方就是XXXAutoConfiguration了,自动配置类是SpringBoot一种十分优秀并且很棒的核心部分,所以我们也来自己模拟启动器流程来跟随框架的思维去设计吧~1.创建starter和autoconfigure工程将autoconfigure模块导入到starter模块的pom文件中<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.or原创 2021-05-12 16:09:07 · 189 阅读 · 7 评论 -
SpringBoot 学习笔记心得(八)异常处理机制
前言:SpringBoot中,异常处理机制是十分完善的,我们在日常开发中遇到的异常问题,都可以进行拦截,并且给出友好界面进行交互。1.默认规则在SpringBoot中,在搭建完项目之后,访问localhost:8080会来到404空白页。因为找不到欢迎页,所以来到默认404规则。疑点:但是为什么在网页上显示的是html界面,在PostMan中显示的却是json数据呢?2.定制错误处理逻辑自定义错误界面,默认是从资源目录下的error/4xx.html 5xx.html 界面寻找,在都无原创 2021-05-12 11:46:48 · 478 阅读 · 1 评论 -
SpringBoot 学习笔记心得(七)单文件&多文件上传
前言:文件上传在开发中是比较常用的,SpringBoot为我们提供了封装好的类,我们只需要标明注解使用即可1.创建表单文件<!DOCTYPE html><html lang="en" xmlns:th="http://www.thymeleaf.org"><head> <meta charset="UTF-8"> <title>Title</title></head><body>原创 2021-05-11 17:19:15 · 324 阅读 · 8 评论 -
SpringBoot 学习笔记心得(六)请求参数处理
请求参数处理1.请求映射 1).rest使用原理2.普通参数与基本注解1.请求映射 1).rest使用原理格式:xxxMapping (Get Post Delete Put )Rest风格支持(使用HTTP请求方式动词来表示对资源的操作)以前的CRUD操作命名:/getUser 获取用户 /del原创 2021-05-11 15:17:31 · 814 阅读 · 1 评论 -
SpringBoot 报错 A bean with that name has already been defined in class 解决
很明显的重名错误,解决方式有两种:1.取别名;2.添加配置***************************APPLICATION FAILED TO START***************************Description:The bean 'hiddenHttpMethodFilter', defined in class path resource [org/springframework/boot/autoconfigure/web/servlet/WebMvcAut原创 2021-05-11 10:03:15 · 3062 阅读 · 1 评论 -
SpringBoot 学习笔记心得(五)拦截器配置使用
拦截器配置使用1.配置拦截器的使用2.配置类3.Controller类1.配置拦截器的使用1 实现HandlerInteceptor 接口 , 重写三个实现方法。public class LoginInteceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object h原创 2021-05-10 16:47:53 · 174 阅读 · 3 评论 -
SpringBoot 整合 Slf4j 记录日志
前言:工作中,日志是非常重要的一部分,现在我们开始搭建Slf4j和SpringBoot的全整合过程。我们仅需要添加依赖和注解即可。下面导入相关依赖。SpringBoot 整合 Slf4j 记录日志1.引入lombok坐标 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId&原创 2021-05-10 15:04:32 · 622 阅读 · 3 评论 -
SpringBoot 学习笔记心得(四)基础功能分析
SpringBoot基础功能分析1.静态资源访问路径2.欢迎页面展示3.自定义Favicon1.静态资源访问路径**1.1 **2.欢迎页面展示3.自定义Favicon原创 2021-04-20 14:26:57 · 152 阅读 · 1 评论 -
SpringBoot 学习笔记心得(三)容器功能
容器功能1.组件添加1. @Configuration2. 4大组件注解3. @Conditional2.引入原生配置文件3.配置绑定3.1 @ConfigurationProperties注解1.组件添加1. @Configuration在SpringBoot中,标志着这个注解,会认为这个类为配置类,可以定义自己想要的容器Full模式(proxyBeanMethods = true):保证每个@Bean组件返回都是单实例的,外部无论对配置类中的这个组件注册方法调用多少次获取的都是之前注册容器中的原创 2021-04-15 15:56:32 · 178 阅读 · 2 评论 -
SpringBoot 学习笔记心得(二)配置加载优先级
六、配置文件加载位置spring boot启动会扫描以下位置的application.properties或者application.ym|文件作为Spring boot的默认配置文件- fle:./config/一file:./- classpath:/config/- classpath:/-以上是按照优先级从高到低的顺序,所有位置的文件都会被加载,高优先级配置内容会覆盖低优先级配置内容。一我们也可以通过配置spring.config.location来改变默认配置...原创 2021-04-15 13:44:33 · 113 阅读 · 1 评论 -
spring-xxx-xxx-0.0.1-SNAPSHOT.jar中没有主清单属性完美解决
这种情况就是因为没有在SpringBoot中pom文件安装maven-plugin,导致出现没有主清单属性问题1.引入插件 <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plu原创 2021-04-15 13:39:01 · 6195 阅读 · 3 评论 -
SpringCloud多模块打包单模块运行(找不到主清单文件) -- 入坑解决
问题:SpringCloud多模块打包单模块运行(找不到主清单文件)1)、父文件pom插件坐标添加2)、子pom文件插件坐标添加1)、父文件pom插件坐标添加 <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId>原创 2020-07-23 11:12:02 · 762 阅读 · 1 评论 -
SpringBoot国际化配置(i8n配置)未生效(完美解决)
最近在整理springBoot国际化时,发现国际化没有生效,通过报错提示在 MessageTag -> doEndTag处打断点最后发现messageSource并不是ResourceBundleMessageSource,而是DelegatingMessageSource代理对象,其内部代理的对象为null,可知springboot自动配置的ResourceBundleMessageSource没有生效。springBoot启动时,会自动加载MessageSourceAutoConfigur.转载 2020-07-03 15:20:16 · 3718 阅读 · 1 评论 -
SpringBoot 启动抛异常Failed to configure a DataSource
很明显,Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasource could be configured.这里是没找到URL,说明根本没配置相关的属性解决:在Application.yml配置文件中添加对应的即可spring: datasource: # 当前数据源操作类型 type: com.alibaba.druid.pool.DruidDataSou原创 2020-06-15 16:56:27 · 278 阅读 · 1 评论 -
SpringBoot 学习笔记心得(二)配置文件&&外部配置加载优先级
配置文件&&外部配置1)、配置文件2)、外部配置文件加载优先级3)、互补配置1)、配置文件1.springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件,启动优先级如下–file:./config/ # 根路径下的config文件夹 –file:./ # 根路径下根目录–classpath:/config/ # 类路径下的config目录–classpath:/原创 2020-06-07 22:06:19 · 356 阅读 · 1 评论 -
SpringBoot 入坑(十)Docker 配置 NGINX 容器 + 配置文件使用(反向代理)
小编在学习nginx反向代理的时候,教学的环境是linux操作化境,所以在配置环境和操作配置文件的时候,有许多不一样的地方,nginx.conf文件中是没有server字段的。那么它们到哪里去了呢?环境:docker操作镜像1)、非docker镜像(windows目录下)2)、nginx容器3)、反向代理1)、非docker镜像(windows目录下)1.在nginx目录中,配置修改在nginx.conf中2.nginx.conf内置结构3.全部目录2)、nginx容器1.进入容器查看n原创 2020-06-06 10:56:58 · 801 阅读 · 1 评论 -
SpringBoot 入坑(九)Docker (容器路径挂载)resource busy 问题
这里小编想说明的是,当我们文件挂载之后,再对容器里面的文件进行CRUD操作时,会出现mv: cannot move ‘XXX’ to ‘XXX’: Device or resource busy,因为文件被挂载之后就不会被允许在容器中操作1.现象[root@localhost ROOT]# docker exec -it 7f696eb7e082 /bin/bashroot@7f696eb7e082:/usr/local/tomcat# lsBUILDING.txt LICENSE README原创 2020-06-05 15:17:45 · 2993 阅读 · 1 评论 -
SpringBoot 学习笔记心得(一)配置文件篇
对于SSM学习的结束,小编对于配置文件的印象也逐渐加深,对于SpringBoot来说,就是简化了SSM的配置,其中SpringBoot自带了XXXAutoConfiguration自动配置类,也就是为什么SpringBoot简化了配置文件的原因,下面小编将SpringBoot的学习笔记和心得以及一些踩过的坑都分享出来配置文件 --Aplication.xxx1)、前言1.配置文件命名规范2.properties使用规则:3.yaml使用规则:4)、PoJo类搭建:5)、配置文件值注入:1)、前言1.配原创 2020-06-04 14:17:42 · 397 阅读 · 1 评论 -
SpringBoot 入坑(八)Docker 暴露端口 && 容器数据卷 基本使用
Docker端口+数据卷1)、暴露端口2)、容器数据卷使用1)、暴露端口1.在不暴露端口的情况下启动tomcatdocker run -d --name mTM01 tomcat通过宿主机IP+localhost访问,访问会被拒绝,原因是没有向外暴露端口2.docker 在启动容器的时候可以添加 ‘-p’ 命令来指定暴露端口docker run -p xxxx:服务端端口(例如tomcat 8080) --name (自定义名称) 容器镜像:[TAG]通过访问暴露端口就可以访问到tomc原创 2020-06-03 22:01:54 · 1976 阅读 · 1 评论 -
SpringBoot 入坑(七)解决Docker容器vim命令无法使用问题
小编在学习nginx的时候需要修改配置文件,在docker容器中无法使用vim命令,是因为apt-get未更新同步,同步以下就好了APT库没更新,使用命令更新一下APT库1 root@2fd7a18017aa:/# apt-get update2 root@2fd7a18017aa:/# apt-get upgrade3 root@2fd7a18017aa:/# apt-get install vim //安装vim命令即可再次使用vim命令即可...原创 2020-06-02 18:16:22 · 718 阅读 · 2 评论 -
SpringBoot 入坑(六)Docker 整合 Tomcat 启动&&访问404异常解决
Docker启动tomcat404异常解决1.访问ip地址+映射端口号出现404异常2.分析原因3.整个实现过程代码1.访问ip地址+映射端口号出现404异常2.分析原因1. docker ps 查看当前容器运行对象ID2.docker exec -it ID /bin/bash 进入tomcat容器3.ls 查看当前文件目录4.进入webapps 查看里面的内容(发现里面的内容为0),那么问题已经找到了,我们在通过IP地址+映射端口访问的时候就是访问的这个目录,但是目录下没有东西,原创 2020-06-02 09:02:44 · 1374 阅读 · 2 评论 -
SpringBoot 入坑(五)Elasticsearch端口访问被拒绝 问题解决
起初:docker安装好elasticsearch,正常启动之后,发现通过端口访问被拒绝,但是小编也查看了docker正在运行的容器,发现elasticsearch镜像确实是在运行的配置+解决1.配置工作2.解决方案1.配置工作小编在这里补充一下,下载Elasticsearch镜像的时候不指定版本会超时,所以下载的时候建议指定版本docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 --name 自定义原创 2020-05-25 17:52:33 · 3242 阅读 · 4 评论 -
SpringBoot 入坑(四)2.x版本以上RedisCacheManger配置
有关SpringBoot 缓存修改默认jdk编码为jackson1.springBoot 1.x 版本的RedisCacheManger配置2.springBoot 2.x 版本的CacheManger配置3.在jackson读取缓存时出现异常解决1.springBoot 1.x 版本的RedisCacheManger配置 @Bean public RedisTemplate<Object,Object> redisTemplate( RedisConnec原创 2020-05-24 11:15:02 · 1180 阅读 · 8 评论 -
SpringBoot 入坑(三)使用thymeleaf模板引入资源(展示异常)问题
小编在使用thymeleaf引擎引入静态资源文件的时候,总是有时候可以完成展示,有时候不能完成展示,有时候导入可以正常展示,有时候不导入才能正常展示样式,所以这样弄的小编就很懵,于是小编稍作小小修改就保证了样式正常展示的效果了,下面一起来看看吧1.小编最开始使用的是这样引入CSS静态资源(自己额外写了一个引擎解析),小编将资源放到了static文件夹下<!-- Bootstrap core CSS --> <link href="asserts/css/bootstrap.min原创 2020-05-15 15:41:35 · 764 阅读 · 2 评论 -
SpringBoot 入坑(二)测试类注解异常以及无法启动异常(2.x版本)
1.直接创建SpringBoot项目(web项目)2.我们最开始进入,自动导入的是@org.junit.jupiter.api.Test注解包,我们先改成@org.junit.Test下的Test注解类3. 我们在添加注解之后发现,并没有可运行的方法按钮,这是因为类前面需要加上修饰符public才会出现运行按钮4. 加上public之后,运行方法的箭头便出现了5.注解@SpringBootTest(classes = Application.class),小编在测试获取yml文件数据的时候,原创 2020-05-11 21:26:09 · 2487 阅读 · 0 评论 -
SpringBoot 入坑(一)@SpringBootTest 问题解决(2.x版本)
小编是直接创建的Spring lnitalizr(IDER)2.2.7的版本,但是小编在完成相关依赖导入的时候发现@SpringBootTest划了红线,于是小编尝试了很多方式1.清理缓存2.导入junit4.0依赖坐标3.导入junit5.3依赖以上各种尝试都没用,后来小编搜索了各种资料,发现只需要添加如下依赖即可 <!-- 关于@Test注解无法使用解决方案--> <dependencies> <dependency>原创 2020-05-11 19:42:16 · 1294 阅读 · 0 评论