
springboot
文章平均质量分 61
springboot相关知识
Pisces_224
当你想成功的时候,你就一个理由;当你想放弃的时候,你有千万个理由。
展开
-
Spring的控制反转、依赖注入、循环依赖
调用者无需主动获取被依赖对象,调用者只需要被动接受Spring容器为调用者的成员变量赋值即可(只要配置一个<property.../>子元素,Spring就会执行对应的setter方法为调用者的成员变量赋值)。反转资源获取的方向。应用程序原本是老大,要获取什么资源都是主动出击,但是在IoC/DI思想中,应用程序就变成被动的了,被动的等待IoC容器来创建并注入它所需要的资源了。Spring容器管理容器中的Bean之间的依赖关系,Spring使用一种被称为“依赖注入”的方式来管理Bean之间的依赖关系。转载 2023-09-18 21:41:10 · 200 阅读 · 0 评论 -
springboot配置http连接超时时间主动断开避免产生大量close_wait
与客户端联调接口,通信方式使用http连接,客户端设置了发起请求后10s就断开连接,然后果不其然,我在服务端这边收到了大量的close_wait状态,最终导致接口不可用。close_wait产生的原因就是客户端断开了连接但是没有发FIN给到服务端,所以服务端不知道还一直在跟客户端通信。原创 2023-05-19 20:04:00 · 8150 阅读 · 1 评论 -
转载:Web请求与响应(SpringBoot)
springboot 的web请求与响应转载 2023-05-12 14:08:01 · 767 阅读 · 0 评论 -
关于springboot读取配置类,使用@Autowired自动注入为null的问题
springboot普通类调用配置类 自动注入为null的问题原创 2023-02-15 16:49:31 · 2107 阅读 · 0 评论 -
SpringMVC controller方法获取请求数据与前端传参类型匹配
controller方法接收参数使用注解解析原创 2022-08-19 15:39:51 · 1080 阅读 · 0 评论 -
mybatis使用resulttype连表查询结果集允许从表字段为空
文章目录回顾前篇新的问题解决在xxxMapper.xml中对应的SQL语句如下:回顾前篇写这一篇的原因是我之前有写过关于使用resultType的连表查询的文章:这里当时是为了解决三张表查询结果集主表字段均存在,但是两个从表字段为null的问题。那篇文章中xml的sql语句已经解决这个问题。新的问题后面有用到类似多表联合查询的业务,我兴冲冲地用之前的逻辑,但是发现有问题:① 列表罗列出来的全是主表、从表字段都存在的结果集合;也就是说,集合里不存在 主表元素都有、从表字段为null的结果。②原创 2022-03-21 15:08:23 · 1066 阅读 · 0 评论 -
Ambiguous mapping found. Cannot map ‘xxxController’ bean method
如题原因是,在报错的controller类中,@GetMapping(path=“xxx”),相同的url路径访问两个不同的方法,造成歧义。ambiguous: 模棱两可; 含糊的,不明确的; 引起歧义的; 有两种或多种意思的;解决: 找到报错地方,修改url方法路径,或者注释掉其中一个方法。...原创 2022-03-11 17:16:06 · 986 阅读 · 0 评论 -
转载:idea 注入mapper报错报红的几种解决方案
相信大家在使用idea的时候一定会遇到这样的问题,就是在service里注入mapper的时候,明明代码没有问题,也可以运行,但是idea它就是给你报个错,有个红色的波浪线在下面,这让人感觉很不舒服。怎么办呢? 先来大概说一下,产生这种现象的原因。idea其实是非常智能的,它可以理解Spring的上下文,然鹅 XxxxMapper 这种接口是Mybatis的,IDEA它理解不了。再加上 @Autowired 这个注解呢,它默认情况下要求依赖对象(也就是 XxxxMapper )必须存在,而IDE转载 2022-02-10 14:57:29 · 3365 阅读 · 0 评论 -
关于springboot中@RequestMapping注解的consumes和produce解释
声明:本文部分转载于—— 这里因为项目中遇到:@PostMapping(path = "/checkToXXX", consumes = "application/json;charset=utf-8")虽知道大致用途,但没有仔细关注过,今天趁此机会记录一下,加深记忆。我们首先知道它是用来指定信息传递的格式(发送和接收),这里就涉及到了 Content-Type 这个东东。1. Content-TypeMediaType,即是Internet Media Type,互联网媒体类型;也叫转载 2022-01-19 20:07:26 · 9549 阅读 · 0 评论 -
application.yml配置开启slf4j日志输出到控制台及指定日志文件中去
1. 输出到控制台2. 输出到指定本地文件中原创 2022-01-13 19:25:45 · 3978 阅读 · 0 评论 -
Error in render: “TypeError: Cannot read properties of undefined (reading ‘length‘)“
报错如下在vue获取后台系统的菜单menu时,报此错,length未定义,经排查,是vue访问后台获取menu list数组的长度时引发的。那么问题来了:后台menu菜单的length必然是>0的,但是这里未获取到就离谱。因为项目在上一个版本还是正常的。所以在跟之前版本的对比之下发现原因如下:原因后台新版本增加了jackson的配置类自定义。本来这个配置类是为了允许出现特殊字符/转义字符而设置的。其他没用,只好注释掉它了。objectMapper.setSerializationInc原创 2022-01-07 14:15:28 · 26157 阅读 · 2 评论 -
利用EasyExcel完整的springboot +vue前后端导出并下载excel表格
文章目录写在前面正文1. springboot后端引入easyexcel及使用1.1 引入依赖1.2 接口serviceImpl方法1.3 提供一个对list集合去重的方法(根据相同key,去除重复,合并value值)1.4 BizMergeStrategy合并策略类1.5 自定义ExcelUtil工具类2. vue前端调用后台下载excel接口实现点击按钮完成下载2.1 上图对应vue代码2.2 export_excel() 方法3. vue多种方式实现调用后台接口下载excel (本小节借鉴他人原创 2021-12-31 19:58:49 · 9401 阅读 · 0 评论 -
解决No converter for XXX with preset Content-Type ‘application/octet-stream;charset=UTF-8‘
如题我在后台封装下载excel的接口逻辑时,文件流关闭后响应返回success,但是后台报错原因就是我系统整体封装的响应逻辑,所以我在下载文件后也返回了成功和失败的逻辑。但是并不支持。try { List<ExportExcelData> excelDataList = getData(wo_id); // 获取表体数据 WriteCellStyle headWriteCellStyle = new WriteCellStyle(); //设置头居中 headWriteCell原创 2021-12-31 14:54:10 · 17127 阅读 · 7 评论 -
报错:Unable to find main class
今天SpringBoot项目打包时,遇到这个问题。原因是因为多模块的项目打包,自己之前想在某个模块加免编译的pom.xml配置,结果和父工程配置文件中的maven插件重复或者说冲突了。解决:去掉该模块里的maven插件配置...原创 2021-12-27 09:52:48 · 629 阅读 · 0 评论 -
记录项目springboot + vue部署到linux下的tomcat,一系列问题
部署过程1. 打开idea下的后台项目,点击右侧maven:① 清除以前的打包残留;② 打包③ 将本项目依赖安装到本地仓库,以供其他项目使用(对打包而言可忽略执行它)打包成功后,多模块的项目会有多个jar包,每个jar包之间的依赖关系通过pom.xml控制。然后,将所有jar包复制好,准备上传到linux服务器。1.1 使用FileZilla上传文件,SecureCRT执行命令FileZilla————>sftp账户密码连接,或者密钥文件连接。进入到存放项目的目录下,将本地jar包原创 2021-12-20 17:00:25 · 1812 阅读 · 0 评论 -
springboot项目配置logback-spring.xml文件控制台输出日志及写入到日志文件
一个可用的xml文件<?xml version="1.0" encoding="UTF-8"?><!--scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒当scan为true时,此属性生效。默认的时间间隔为1分钟。debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。--原创 2021-12-11 17:05:46 · 1954 阅读 · 0 评论 -
Required String paramter ‘username‘ is not present
原因Spring Boot的注解@RequestParam不支持接受请求体内的json数据。以下为转载他人部分:https://blog.youkuaiyun.com/qq_39506912/article/details/90107756重点为对三个注解的比较错误分析 使用Post向接口发送json数据时显示如下错误: WARN 13392 --- [nio-8080-exec-1] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved excepti原创 2021-12-09 14:54:35 · 3370 阅读 · 0 评论 -
关于http请求url传参数特殊字符解析出错的问题
Http请求方法有四种:Get、Post、Put、Delete;我们一般用到的就两种:Get和Post。 Get请求:参数通过Url进行传递,不安全。如果参数有特殊字符(&、?)时,可能会把一个参数分解为多个参数进行传递。 如:http://www.iyiqiba.com?url=www.baidu.com?type=1&name=zhaPost请求:参数一般是通过请求体传递的(可以通过参数传递),基本可以避免参数特殊字符引起的参数解析错误问题。 为了更好的描述问题,我...转载 2021-12-08 21:38:03 · 6351 阅读 · 0 评论 -
通用mapper的查询,selectByPrimaryKey、select、selectByExample等
最近有在用到mybatis的通用mapper的查询,既然接触了索性记录总结一下,以便帮到后来人。一. 首先,放上mybatis 通用mapper的接口代码Mapper.class:package tk.mybatis.mapper.common;import tk.mybatis.mapper.annotation.RegisterMapper;@RegisterMapperpublic interface Mapper<T> extends BaseMapper<T>原创 2021-11-20 16:44:04 · 10535 阅读 · 0 评论 -
mybatis的通用Mapper函数库以及Example条件函数总结记录
一. 通用Mapper接口方法1. 查方法功能User selectByPrimaryKey(Integer id) throws SQLException按主键查询List selectByExample(UserExample example) throws SQLException按条件查询,返回类型为ListList selectByExampleWithBLOGs(UserExample example) throws SQLException按条件查询(原创 2021-11-20 16:41:55 · 1481 阅读 · 0 评论 -
一个多模块的Spring Boot项目打成多个jar包在服务器上运行
最近有个项目,分成了多个模块,如api、system、business、common等。每个模块都打包成jar包,那么如何将他们扔到linux服务器上成功运行呢?重点在于搞清楚多模块之间的依赖关系,在相应的pom.xml中配置好依赖模块是哪个。打完jar包后,利用fileZilla或者其他工具如WinSCP等将所有jar包放在服务器上同一目录下,执行命令启动项目。这里不需要依次启动所有jar包,只需要运行api对应的jar包就可以,它会自动调用其他以来的jar包运行。启动jar命令nohup java原创 2021-11-16 14:05:27 · 5353 阅读 · 0 评论 -
吐血解决MyBatis连表查询(3张表)从表字段为null问题(使用VO)
背景最近刚换了新工作,面试题周末再慢慢整理放上来。先说这次问题,刚进入新公司,领导直接让我参与他在做的一个项目,Spring Boot+MyBatis+ Shiro +Vue,反正就这些技术栈,不是重点。重点是领导做了个多表关联查询,前台获取结果列表显示总是显示主表的所有字段,要显示的从表的两个字段均为空。让我看看怎么回事。这问题困扰了我两天,也是自己菜,刚工作一年,里面很多代码,设计逻辑都特么硬学。好在终于解决这个问题了,攻克难关的感觉太美好了(菜鸡轻喷)。先上总结记录一下网上查找时这类问题解决办法原创 2021-11-05 14:07:18 · 3672 阅读 · 0 评论 -
Spring Boot依赖quartz定时任务之Cron表达式
一段简单的定时任务配置类:import org.springframework.context.annotation.Configuration;import org.springframework.scheduling.annotation.EnableScheduling;import org.springframework.scheduling.annotation.Scheduled;import java.time.LocalDateTime;@Configuration转载 2021-09-22 21:10:29 · 465 阅读 · 0 评论 -
注解@Component和@Bean
摘自网上搜到的一篇某乎的理解:1、@Component注解表明一个类会作为组件类,并告知Spring要为这个类创建bean。2、@Bean注解告诉Spring这个方法将会返回一个对象,这个对象要注册为Spring应用上下文中的bean。通常方法体中包含了最终产生bean实例的逻辑。两者的目的是一样的,都是注册bean到Spring容器中。区别:@Component(@Controller、@Service、@Repository)通常是通过类路径扫描来自动侦测以及自动装配到Spring容器中。原创 2021-09-13 16:56:08 · 685 阅读 · 0 评论 -
解决Springboot项目启动报错:Exception in thread “main“ java.lang.NoClassDefFoundError
Exception in thread “main” java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplication原因pom.xml中父项目的版本和spring boot的版本依赖存在冲突解决办法直接二者设置成同样的版本即可。<parent> <groupId>org.springframework.boot</groupId> <version>原创 2021-09-06 20:20:59 · 19078 阅读 · 2 评论 -
springboot引入依赖lombok但是@Data(lombok的一个注解)仍然爆红
解决办法首先,确认lombok插件已安装;其次,开启了注解。(重启IDEA)原创 2021-08-28 21:20:11 · 1922 阅读 · 0 评论 -
springboot 资源resource文件加载优先级
文章目录 1.问题2.springboot的资源目录优先级3.相关源码3. webjars 1.问题 在通过spring项目官网生成的springboot project项目中,通常我们知道,resource目录是存放项目的静态资源的目录,如在很久以前,项目开发没有采用前后端分离的时候,那么大量的js文件和h...转载 2021-08-28 15:41:25 · 1536 阅读 · 0 评论