框架学习遇到的问题及解决方案

Posted 宏远小七

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了框架学习遇到的问题及解决方案相关的知识,希望对你有一定的参考价值。

框架学习遇到的问题及解决方案


我们在学习的过程中,都会遇到各种各样的问题,所以为了能够帮助到和我一样在学习的时候有遇到同样问题的朋友,我把我遇到的问题及其解决方法都记录了起来。

问题1:No mapping for GET /admin/

解决方法:

遇到这个问题,我们就是把已经配置好的Tomcat删了,重新编译项目,再重新配置Tomcat。在部署的时候应用程序上下文就写一个 ‘/’ 如下图所示↓:

问题2:Component name “login” should always be multi-word vue/multi-word-component-names

就是组件名不能为一个单词的问题

解决方法:

方法一:可以把组件名写成驼峰命名,如把login 改成 loginIn

方法二:可以在vue.config.js中加入lineOnSave:false

问题3:通配符的匹配很全面, 但无法找到元素 context:component-scan 的声明。

就是导入的声明不全,导入的声明需要下面这三条

解决方法:

xmlns:context="http://www.springframework.org/schema/context"
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd

问题4:java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet

dispatcherServlet找不到的问题

解决方法:

需要对项目依赖添加lib目录,如下图:

问题5:java版本不匹配问题

java:警告:源发行版 11 需要目标发行版 11

java : 无效的目标发行版 :11

解决方法:

看下图:


问题6:关于:com.github.pagehelper.PageHelper cannot be cast to org.apache.ibatis.plugin.Interceptor

那些大佬说是因为依赖5.0版本之后,interceptor中的引用不在是PageHelper了,而是改为PageInterceptor。而在properties的地方,4.0版本之后可以不设置相关参数。

解决方法:

导入依赖

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper</artifactId>
    <version>5.3.0</version>
</dependency>

在配置中配置

<plugins>
    <plugin interceptor="com.github.pagehelper.PageInterceptor"/>
</plugins>

问题7:com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 字节的 UTF-8 序列的字节 1 无效

这个问题的原因就是你的项目有中文,但是你的项目不是utf-8的字符编码。

解决方法:

如下图:

问题8:java.lang.ClassNotFoundException: org.springframework.web.util.Log4jConfigListener

大佬们说org.springframework.web.util.Log4jConfigListener这个类在spring5。0及以上版本已经废弃删除,如果想使用这个类,spring版本需要降低。

但我们可以不用降低spring的版本,我们提高依赖的版本!

解决方法

导入依赖:
版本自选

<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.17.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api -->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.17.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-web -->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-web</artifactId>
    <version>2.17.2</version>
</dependency>

修改web.xml配置

<listener>
    <listener-class>org.apache.logging.log4j.web.Log4jServletContextListener</listener-class>
</listener>

问题9:idea怎么设置Tomcat访问磁盘文件

我们在使用做项目的时候可能会涉及到上传或者访问本地文件,所以我们要设置Tomcat,给Tomcat设置要访问的文件路径

解决方法:

如下图:

问题10:类com.chen.servlet.CookieDemo01不是Servlet


当你出现这个问题的时候,检查一下你的Tomcat的版本是不是10的。

解决方法

这个问题可以用两个方法来解决:

方法一:

修改Tomcat的版本。 个人推荐使用Tomcat 9,这是Tomcat 9 的下载路径:
https://tomcat.apache.org/download-90.cgi

方法二:

修改导入的依赖 如 ↓


<!-- tomcat 10 之前所导入的依赖-->
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>4.0.1</version>
    <scope>provided</scope>
</dependency>

<!-- tomcat 10 所要导入的依赖-->
<!-- https://mvnrepository.com/artifact/org.apache.tomcat/tomcat-servlet-api -->
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-servlet-api</artifactId>
    <version>10.1.0-M14</version>
</dependency>

然后这里还有关键的一步:
Java类中导入到 javax 包要手动改为 jakarta

// 10 之前的导包
import javax .servlet.http.HttpServlet;
//10 之后的导包
import jakarta.servlet.http.HttpServlet;

这里给大家一个放个maven仓库的地址:
https://mvnrepository.com/

idea的 maven 项目导不进依赖的问题

检查idea的版本,检查自己下载 maven 仓库的版本。

这个问题是我室友在学习的时候遇到的,
他的idea版本是2020版,maven版本是3.8
然后我去查了一下,那些大佬说这两个版本不兼容,所以我们降低maven的版本。

解决方法:

把maven版本降到3.6,这个问题就解决了。
这里给大家一个下载maven所有版本的地址
https://downloads.apache.org/maven/maven-3/


这篇文章不断更新,毕竟学无止境,后面可能还有很多问题等着我,我会继续把问题和解决方法写在这里。
我目前遇到的问题和我的把问题解决的方法都写在这了,如果您觉得有什么更好的解决方法,或者我的解决方法不起作用,欢迎评论区留言讨论。

以上是关于框架学习遇到的问题及解决方案的主要内容,如果未能解决你的问题,请参考以下文章

学习教材《构建之法》遇到的问题及思路

golang语法学习遇到的坑

在maven框架下遇到的问题及解决方法

Spring boot + mybatis-plus 遇到 数据库字段 创建不规范 大驼峰 下划线 导致前端传参数 后端收不到参数 解决方案

Mac系统搭建Laravel框架环境及遇到的问题

利用SSH框架开发时遇到的各种Bug及解决方法