学习编程过程中–>遇到的错误

  • Post author:
  • Post category:其他


文章目录



学习编程过程中–>遇到的错误(吕招焕)



1、java.sql.SQLException: Parameter index out of range (2 > number of parameters, which is 1).

(翻译:找到了1个问号,却插入了2个值,导致参数越界(根据得到的信息打印将很容易判断数据是否与数据库字段匹配等小问题))



详情如下图所示

在这里插入图片描述

在查询了许多资料之后,大概都是说

sql语句参数设置发生了错误

  • 第1 种情况:就是当设置参数时,没有相应的问号与之匹配(或者根本就没有?号)
  • 第2 种情况:动态sql语句中where标签使用的时候,由于在select标签中按快捷键添加了注释,导致出现错误,– 只要把注释去掉或者改成正确的注释格式就可以成功运行
  • 最后通过查看

    BaseDao类

    发现我的错误是sql语句中的问号大小写错了。 找了半天,绝了…

    在这里插入图片描述

    找了将近一个小时,终于解决了…

    在这里插入图片描述



2、SpringMVC静态资源过滤The matching wildcard is strict, but no declaration can be found for element ‘mvc:default-servlet-handler

(翻译:匹配的通配符是严格的,但找不到元素“mvc:defaultservlet处理程序”的声明)

在这里插入图片描述

仔细查找了一下,发现是bean的配置出错了 后缀的cache给写错了 应该是mvc
在这里插入图片描述

可能改完之后 你还会报错…因为需要改的不止这一条,还有下面这两条


Caused by: org.xml.sax.SAXParseException; lineNumber: 14; columnNumber: 29; cvc-complex-type.2.4.c: 通配符的匹配很全面, 但无法找到元素 ‘mvc:annotation-driven’ 的声明。

在这里插入图片描述



3、IDEA JavaWeb报错SSL HTTP Connector node not found set up one in the server.xml(2021-10-8)

(翻译:IDEA JavaWeb报错未找到SSL HTTP连接器节点。请在server.xml中设置一个)

1、不使用Https端口,在IDEA的Tomcat配置中去掉HTTPs端口即设置为空

2、翻译:IDEA JavaWeb报错未找到SSL HTTP连接器节点。请在server.xml中设置一个

2.1 打开Tomcat下的conf目录里的server.xml文件

2.2 把文件里面定义的SSL连接器注释去掉

在这里插入图片描述



4、currentTime2 is not a function 如下图 (2021-10-8)

在这里插入图片描述

代码这边找了十几分钟都没发现,最后发现自己傻了 计算属性写成了方法

在这里插入图片描述



5、springboot无效的目标发行版11 如图

在这里插入图片描述


解决方案:


这个是项目配置的JDK版本有误,解决方案如下:

	1、File——>Settings——>Build,Execution,Deployment——>Compiler——>Java Compiler

在这里插入图片描述

2、Project Structure——>Project
在这里插入图片描述


最后成功启动啦!


在这里插入图片描述

如果还是报错,检查下maven的pom文件,将下列信息注释

在这里插入图片描述



6、Exception in thread “main” java.lang.NoSuchMethodError: org.junit.platform.commons.util.ReflectionUtils.getDefaultClassLoader()Ljava/lang/ClassLoader 使用SpringBoot测试的时候Junit报错

在这里插入图片描述

原因:依赖的junit的版本的问题,junit5在低版本的IDEA上会报这个错误(我当时使用2017版)

解决方案:pom文件中移除junit 如下图所示,并且重新在测试类中导入Junit4的包

在这里插入图片描述

在这里插入图片描述



7、请求的资源[/]不可用 做ssm实训课的时候这个错误真的是让我很难受,浪费几天时间结果是webapp这个文件夹配置错误

这里参考了

记idea部署ssm项目(Tomcat)网页报404请求资源不可用问题(已解决


左侧文件夹路径一定要和右侧的资源路径一样 ,并且webapp是要标记的 有个小蓝点

在这里插入图片描述



8、org.springframework.jdbc.BadSqlGrammarException:

很明显 已经提示是sql语句语法异常

在这里插入图片描述

原来sql语句连接就给搞错了 如上图蓝色矩形内容



9、请求的资源[/jsp/provider.do]不可用(源服务器未能找到目标资源的表示或者是不愿公开一个已经存在的资源表示。)

在这里插入图片描述

原因是我忘记了配置web.xml
在这里插入图片描述



10、org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

即在mybatis中dao接口与mapper配置文件在做映射绑定的时候出现问题,简单说,就是接口与xml要么是找不到,要么是找到了却匹配不到。

在这里插入图片描述

记住:接口名与Mybatis的映射文件名一定要一模一样



11、springboot项目控制台日志不是彩色的原因

采用springboot的方式启动,而不是application的方式启动

application的方式启动

在这里插入图片描述

springboot方式

在这里插入图片描述



12、线程“main”java.lang.NoSuchMethodError中出现异常:org.junit.platform.commons.util.ReflectionUtils.getDefaultClassLoader()Ljava/lang/ClassLoader;

Exception in thread “main” java.lang.NoSuchMethodError: org.junit.platform.commons.util.ReflectionUtils.getDefaultClassLoader()Ljava/lang/ClassLoader;

在这里插入图片描述

解决方案:

1、添加了mysql 5.1.47依赖

2、去掉junnit-jupiter-api

在这里插入图片描述

3、换掉springboot主类的Junit Test

在这里插入图片描述

在这里插入图片描述



13、Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasource could be configured.

在做锋迷商城 整合Druid的时候遇到所谓的url错误 如下图

在这里插入图片描述

找了半天的yml文件里面真的没发现错误,翻阅了之前写的笔记才发现。。。原来是我把yml文件放错了位置 应该要放在resource目录下 结果放在同级

在这里插入图片描述



14、Loading class

com.mysql.jdbc.Driver'. This is deprecated. The new driver class is

com.mysql.cj.jdbc.Driver’. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

mysql后面加上cj就行了

在这里插入图片描述



15、java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required

原因就是默认的版本太高了,换个版本比如5.1.47就行了

在这里插入图片描述

完美运行!!

在这里插入图片描述



16、

在这里插入图片描述



17、为bean类[cn.qztc.bookstore.controller.client.userController]指定的注释bean名称“userController”与相同名称和类[cn.qztc

这个报错把主要意思翻译过来就是说,在你的上下文中含有一个相同的userController,只要删掉一个重复的就可以



18、java.sql.SQLException: Connections could not be acquired from the underlying database!


Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: Connections could not be acquired from the underlying database!

根据描述可以得知主要是数据库连接不上的问题,

各种百度然后说的最多的解决方案是:

1,驱动配置有误;

2,数据库连接地址有误;

3,密码或帐号有误;

4,数据库未启动或无权访问;

5,项目未引入对应的驱动jar包;

检查了一下,导包的时候版本是8.0,8.0的url配置和5.x版本的不一样需要加一个时区配置,并且driver驱动需要加cj

在这里插入图片描述



19、org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: A query was run and no Result Maps were found for the Mapped Statement ‘com.tree.mapper.NoticeMapper.listAll’. It’s likely that neither a Result Type nor a Result Map was specified.

原因是没写 mapper 映射



20、Tomcat启动报错:一个或多个筛选器启动失败。由于之前的错误,Context[]启动失败

在Maven工程中,IDEA没有吧项目依赖包部署到web项目,需要手动导入包

![在这里插入图片描述](https://img-blog.csdnimg.cn/f35a645aec5d4f898f71b2fe2342af14.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5ZCV5oub54SV,size_20,color_FFFFFF,t_70,g_se,x_16

在这里插入图片描述



21、(Exception in thread “main” java.lang.NoSuchMethodError: org.junit.platform.commons.util.ReflectionUtils.getDefaultClassLoader()Ljava/lang/ClassLoader; )

在这里插入图片描述

我们用的是Junit4.2,但是测试一直自动用junit5,根据自己的情况,可能是升级自己没有修改。



22、org.springframework.beans.factory.UnsatisfiedDependencyException:Error creating bean with name ‘com.freedom.tkmapperdemo.dao.UserDAOTest’: Unsatisfied dependency expressed through field ‘userDAO’; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type ‘com.freedom.tkmapperdemo.dao.UserDAO’ available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

在这里插入图片描述

这里真的是傻了 把springboot主类的MapperScan注释掉了,取消注释完美运行
在这里插入图片描述



23、Error invoking SqlProvider method (tk.mybatis.mapper.provider.base.BaseInsertProvider.dynamicSQL).

在这里插入图片描述

在SpringBoot的启动类上,使用@MapperScan注解时引入了错误的包下的。

正确的应该是:import tk.mybatis.spring.annotation.MapperScan;

错误的引入了:import org.mybatis.spring.annotation.MapperScan;



24、前后端分离项目 vue+axios 跨域传参一直是undefined

原因是:两个对象 我只解析了一次 导致undefined,最后是在页面输出测试的时候才发现后端已经把数据发过来,自己输出就是undefined所以怎么传给其他页面都是undefined



25、使用js从购物车列表传参调转到登录页面的时候,发现自己定义的变量提示undefined且登录之后无法回到购物车页面

找了半天真的什么都没发现很难受,最后在群里别人说this没写,人都傻了。。。写完之后没毛病

在这里插入图片描述

在这里插入图片描述



26、在做mapper层的foreach查询的时候,遇到Parameter ‘cids’ not found. Available parameters are [arg0, collection, list]

报错提示的是在 78 行的地方错误,

at com.freedom.ApiApplicationTests.testShopCart(ApiApplicationTests.java:78)

在这里插入图片描述

在百度查资料之后发现,Mapper传参那里似乎写的不行。

这是是返回一个列表(即多个参数),需要指定参数名

参考了:https://www.cnblogs.com/xuesheng/p/7485338.html

在这里插入图片描述

修改了之后,完美运行

在这里插入图片描述

在这里插入图片描述



27、针对cookie无法处理特殊字符的解决方案

在前端js页面的处理

1、通过encodeURIComponent(URIstring)对URL进行编码

2、decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码



28、SpringBootTest测试类没有启动按钮,测试类无法启动

解决方法,在测试类和测试方法加上public关键字即可

在这里插入图片描述



29、Application run failed org.yaml.snakeyaml.scanner.ScannerException: while scanning a simple key in ‘reader’, line 10, column 1:


确保yaml文件中没有错误

,我就是yaml写错导致的

application.yml文件键值之间要用冒号:隔开,而且冒号和值之间有一个空格,否则就报上面的错误!



30、Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory. NoSuchBeanDefinitionExceptionNo qualifying bean of type ‘java.lang.String’ available: expected at least 1 bean which qualifies as

翻译:没有“java”类型的合格bean。Lang.Studio可用:预期至少1个bean,符合

提示没有找到NoSuchBeanDefinition 原因是springioc容器加载bean默认使用无参构造进行初始化。

1.无参构造方法实例化(Spring默认,常用,需要bean类中存在无参构造方法);

2.静态工厂实例化

3.实例化工厂实例化

4.注解方式实例化



31、使用springboot做jdbc测试出现了错误

第一个是在IDEA2017.1无法使用Junit5版本,降低到Junit4之后还是报错,需要移除

junit-jupiter-api

并且 在springboot测试类中的类和方法前加上

public

关键字,和@RunWith(SpringRunner.class)注解即可正常运行

			<exclusions>
				<exclusion>
					<groupId>org.junit.jupiter</groupId>
					<artifactId>junit-jupiter-api</artifactId>
				</exclusion>
			</exclusions>

在这里插入图片描述

第二个在于yaml文件中配置的数据源,

如果MySQL版本大于等于6,使用

driver-class-name: com.mysql.cj.jdbc.Driver


小于6均使用

driver-class-name: com.mysql.jdbc.Driver



32、使用vue创建项目错误 vue init webpack myproject

Failed to download repo vuejs-templates/webpack: read ECONNRESET

在这里插入图片描述

解决:要安装正确的npm淘宝镜像

npm install -g cnpm –registry=https://registry.npm.taobao.org;



版权声明:本文为u011090104原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。