• 关于IDEA创建maven web 项目时遇到的坑及避坑指南(注解失效等)


    一,前言

    最近在学习servlet,我用的工具时idea,在创建maven web项目时遇到了一些坑,比如@WebServLet这一类的注解失效,Tomcat服务器报服务器内部错误,浏览器访问时项目路径出错等问题,接下来我就说一下避坑指南

    二,关于注解失效
    问题原因

    在idea中创建maven web项目时一般会选择如下步骤
    在这里插入图片描述在idea中创建maven web项目选择的一般都是图中所示原型,这样创建一个maven web项目是没有问题的,那么注解失效原因是什么呢,其实在按步骤创建项目后创建的是一个2.5版本的项目,而注解只有3以上的版本才支持。

    解决方案

    首先打开自己maven本地仓库,依次按照图中路径点击,找到图中所示jar包
    在这里插入图片描述用压缩软件奖图中所示jar包打开(不要解压),找到web.xml,右键点击编辑。
    在这里插入图片描述
    将原先内容替换为如下内容

    
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://xmlns.jcp.org/xml/ns/javaee"
        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>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    好了,问题一解决

    三,关于Tomcat服务器内部错误
    问题原因

    由于我最开始用的是Tomcat10,在写好一个项目之后,启动Tomcat服务器,访问页面,结果报错:服务器内部错误。出现这个错误的原因是由于Tomcat10使用的是jakarta.servlet.api,而在项目中使用的是javax.servlet.api,所以蔡会报服务器内部错误。

    解决方案

    以下方案任选其一

    • 在maven中加入jakarta.servlet.api的依赖,将项目中的javax.servlet.api 更换为jakarta.servlet.api。
    • 更换Tomcat版本,使用低版本的Tomcat(推荐该方案,简单高效
    四,项目路径问题
    问题原因

    先看一下这是什么情况吧如图
    在这里插入图片描述这是首页,当我输入数据点击提交后
    在这里插入图片描述仔细看就会发现路径里面少了东西,少的就是我们的项目名,加上项目名称后可以正常访问
    在这里插入图片描述这里的坑是你点击按钮跳转,路径中没有项目名

    解决方案

    方案一
    form表单的action属性的路径不要加“/”,这个“/”代表的是“http://ip:port/”中的最后一个斜杠
    方案二
    如图,右上角点击编辑配置
    在这里插入图片描述点击部署,找到图中所示位置,将“/”之后的字符全部删除,然后点击确定
    在这里插入图片描述
    问题解决
    在这里插入图片描述

  • 相关阅读:
    scipy.optimize.minimize函数介绍
    CEO问CIO:数字化运营到底要解决什么问题?
    走进 AnyTrust 技术底层,数据可用性和最小信任假设如何实现
    Centos7通过yum安装docker
    10月7日,每日信息差
    物联网测试数据构造实践
    自动化项目倍加福WCS-PG210E使用GSD文件
    点成分享 | 微流控集成系统在人体血管研究中的应用
    区块链安全应用-------压力测试
    React@16.x(15)PureComponent 和 memo
  • 原文地址:https://blog.csdn.net/weixin_45014413/article/details/120992253