文档章节

【少走弯路】 之 使用Spring过程中报错总结与处理方式

徐闹闹的大宝贝
 徐闹闹的大宝贝
发布于 10/18 11:34
字数 1070
阅读 23
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

Spring框架是一款很不错的开源框架,有很多企业以及初学者都在使用与学习,但是在此过程中难免因为一些细节出错,排查起来很烦人很无厘头,今天本人来分享一些自己在学习与使用spring中出现的错误

  • NoSuchBeanDefinitionException:无意义定义例外 解决: ①类未实现接口 ②注册名小驼峰命名 ③扫描包作用:注册组件并注入 ④Maven环境创建项目时包名必须与代码中包名一致

  • IllegalStateException 非法状态例外

  • ConflictingBeanDefinitionException 冲突bean定义exception 解决: 期待找到一个,但找到多个spring不知道注入哪个 问题: @Resource(name=”类名小驼峰式”) [@Resource](https://my.oschina.net/u/929718) 前提:该组件只能找到一个对象

  • FileNotFoundException 文件未找到异常 问题: 把配置文件中的数据(String) 注入到某个成员变量过程中,配置文件未找到 解决: 观察并修改配置文件路径

  • BeanNotOfRequiredTypeException 注入类型与实际类型不相符 解决:观察注入位置,确定注入无误

  • No runnable methods 没有可运行的方法 解决: ①@Test注解

  • NoUniqueBeanDefinitionException 类型注入引发的异常 问题:类型注入引发的异常:Demo5Dao类型没有找到唯一的Bean,找到多个符合要求的Bean 解决: ①使用名称注入 ②修改Demo5Dao类型,保证按类型注入只能有一个符合要求的Bean ③修改注入变量的变量名,使其等于Demo5Dao类型中某个符合要求Bean的注册名

  • nested exception is org.apache.ibatis.builder.BuilderException 问题:嵌套异常为org.apache.ibatis.builder.builderException

  • ConflictingBeanDefinitionException 冲突bean定义exception 问题:因为按类型注入,注入时先把变量名作为组件名进行名称注入 解决:修改变量名,或修改为按名称注入 (观察变量名)

  • java.net.BindException: Address already in use: JVM_Bind 问题:地址已在使用中:jvm_bind(多个Tomcat同时运行导致) 解决:关闭maven自带的tomcat运行环境,使用spring的Tomcat就可以了

  • EL表达式未解析BUG说明 问题:EL表达式在SpringMVC中未解析 解决:把web.xml版本替换成3X以上 web.xml 3.1版本 `<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">

</web-app>`

  • Required Boolean parameter 'flag' is not present 问题:使用@RequestParam 获取某个参数时,若没有参数,则抛出异常 解决1:可以设置默认值。 @RequestParam(name=”参数名”,defaultValue=”默认值”) 解决2:可以设置不必须。 (若无参数值,默认为 null)@RequestParam(name=”参数名”,required=false)

  • BeanInstantiationException Bean实例化异常 问题:加载bean对象过程中由于(对象类型...等原因导致)

  • HTTP Status 405 - Request method 'GET' not supported 问题:请求方式GET不支持的 解决:默认情况下,不会限定请求方式,get/post或其他方式均可访问

  • IllegalArgumentException 非法数据异常 问题:pojo字段类型与name属性字段类型不匹配,导致无法封装数据 解决:修改其中一个字段类型,使得其匹配(修改数据库或者bean都可以,目的是二者匹配)

  • NoClassDefFoundError Classes导包错误 描述:com.sun.tools.internal.jxc.gen.config.Classes;未正确导包,而是Java中的自带包 解决:pojo(bean)中的Classes类导包错误

  • ExpressionSyntaxException 表达式yntaxException

  • ParseException 分析异常 问题:动态SQL语句拼接异常 解决:检查xml(接口)文件中的动态Sql语句,分析格式

请多支持

以上错误都是本人在实际编码过程中遇到的,并总结整理后分享给大家,如果有帮助请给我点赞关注一下 如果你也在学习和使用spring,建议收藏,以便迅速查阅, 如果你有不同的错误私信我,相互分享

© 著作权归作者所有

徐闹闹的大宝贝
粉丝 8
博文 14
码字总数 10583
作品 0
宿迁
私信 提问
加载中

评论(1)

庭前云落
庭前云落
郭总厉害
spring boot框架学习学前掌握之重要注解(4)-通过注解方式读取外部资源配置文件2

本节主要内容: 1:思考问题:怎么读取多个配置文件,如果文件不存在怎么办 2:配置数据库连接池 声明: 本文是《凯哥陪你学系列-框架学习之spring boot框架学习》中spring boot框架学习学前掌...

中凯_凯哥java
2017/10/24
52
0
Spring Boot 2.0干货系列:(一)Spring Boot1.5X升级到2.0指南

前言 Spring Boot已经发布2.0有4个月多,多了很多新特性,一些坑也慢慢被填上,最近有空,就把本博客中Spring Boot干货系列对应的源码从1.5X升级到Spring Boot 2.0,顺便整理下升级的时候遇到...

嘟爷MD
2018/07/24
0
0
spring ioc解决注入冲突方案,你有解决方法?

spring中,如何处理一个接口有两个实现类? 一个用户服务接口 有老师和学生的两个具体服务 老鸟:如果只定义如上代码,启动spring服务,是否会报错? 菜鸟:不会,那为什么? 老鸟:默认spr...

rabbitgg
2018/07/04
911
9
Spring boot 2.0 之优雅停机

spring boot 框架在生产环境使用的有一段时间了,它“约定大于配置”的特性,体现了优雅流畅的开发过程,它的部署启动方式()也很优雅。但是我使用的停止应用的方式是 ,即使写了脚本,还是...

rabbitGYK
2018/05/20
0
0
分析总结Spring管理Hibernate中Dao层访问数据库常用方式(附SSH的jar包)

上篇博客中已经讲解Spring配置数据源的常用的几种方式。接下来本篇博客继续讲解。配置完数据源,那Dao层是如何访问数据库呢? 基于最近的项目使用SSH2框架完成,分析总结Spring与Hibernate集...

晨曦之光
2012/08/22
611
0

没有更多内容

加载失败,请刷新页面

加载更多

thinkphp6 视图变量输出

thinkphp6 视图变量输出 视图默认把变量输出为字符串类型,有些时候需要保证原来的类型,比如html字符串 raw参数,禁止转换 {$content.content|raw} 支持多个参数,比如解码php内置的htmlspe...

DrChenXX
17分钟前
3
0
【搞定Jvm面试】 Java 内存区域揭秘附常见面试题解析

本文已经收录自笔者开源的 JavaGuide: https://github.com/Snailclimb (【Java学习+面试指南】 一份涵盖大部分Java程序员所需要掌握的核心知识)如果觉得不错的还,不妨去点个Star,鼓励一下!...

SnailClimb
27分钟前
3
0
jQuery如何根据数据属性值查找元素?

我有以下场景: var el = 'li'; 页面上有5个<li> ,每个都有一个data-slide=number属性(数字分别为1,2,3,4,5) 。 我现在需要找到当前活动的幻灯片编号,该编号映射到var current = $('ul...

javail
38分钟前
3
0
LaTeX自定义宏包、类文件的默认搜索路径设置方法

  对于自定义的LaTeX宏包与类,在调用时可以通过在命令\documentclass{}与\usepackage{}命令中指定完整路径或者相对路径,这样确实可以调用,但是编译时总是有烦人的警告信息,让人不爽。还...

陆巍_
41分钟前
3
0
计算机电子书 2018 BiliDrive 备份

下载方式 根据你的操作系统下载不同的 BiliDrive 二进制。 执行: bilidrive download <link> 链接 <!--more--> 文档 链接 Webpack 中文指南.epub (409.01 KB) bdrive://ce58b7b58292296a61......

ApacheCN_飞龙
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部