@WebFilter("")配置servlet访问出现404的原因

配置 servlet 一共有两种方式

  1. 直接在web.xml中配置name 和 url-parttern
  2. 使用注解配置servlet

使用注解的方式配置servlet是在servlet3.0之后新增的特性,用于简化servlet、Filter、Listener的声明,这样在配置servlet的时候就多了一个选择(web.xml中不会出现那么多的配置)

在servlet3.0之后的描述文件web.xml的顶层标签<web-app>中有一个metadata-complete属性,该属性为true,则容器在部署项目的时候只依赖部署描述文件(web.xml),忽略所有标注,如果不配置该属性,或者设置为false,web.xml和注解对于servlet的影响同时起作用,两种方式定义的url-parttern都可以访问到该servlet。web.xml会覆盖注解属性,

注意开发环境版本问题,jdk5.0之后才支持注解,tomcat7.0以上的版本,web.xml中的web-app标签version属性需要大于3.0;

这些都配置完成,使用idea的同学会发现还是404,那是因为idea在创建的时候,会使用name,但是value(也就是url-parttern)需要自己配置,

这样才可以正常访问,配置url-parttern的时候注意格式问题,具体的请查看这篇博客:https://www.cnblogs.com/ice-image/p/10118439.html

原文地址:https://www.cnblogs.com/ice-image/p/10276555.html

时间: 2024-08-03 00:10:54

@WebFilter("")配置servlet访问出现404的原因的相关文章

注解WebServlet配置Servlet报404错误的原因

使用注解WebServlet配置Servlet报404错误的原因 Servlet3.0之后新增了注解,用于简化Servlet.Filter及Listener的声明,这样就在配置Servlet的时候多了一个选择.Servlet3.0的部署描述文件web.xml的顶层标签<web-app>有一个metadata-complete属性,该属性为true,则容器在部署时只依赖部署描述文件,忽略所有标注,如果不配置该属性,或者将其设置为false,则表示启动标注支持.当metadata-complete

《Oracle Java EE编程指南》04-02:创建、配置和访问Servlet

前言 接下来我们开始写第一个Servlet,通过这个Servlet,进一步熟悉Servlet的基本概念. 1.创建Servlet 在项目的src目录下的任意包上,右键点击new,创建Servlet. 填写Servlet的基本信息,包括包名.类名.需要覆盖的方法,一般都只覆盖doGet和doPost. 自动生成的FirstServlet.java中,存在doGet和doPost两个方法,方法体都类似,输出一个动态的页面. 2.配置Servlet Eclipse配置Servlet:Servlet必须

web.xml配置servlet

Web.xml常用元素 <web-app> <display-name></display-name>  定义了WEB应用的名字 <description></description>  声明WEB应用的描述信息 <context-param></context-param>  context-param元素声明应用范围内的初始化参数. <filter></filter>  过滤器元素将一个名字与一

Spring MVC或Spring Boot配置默认访问页面不生效?

相信在开发项目过程中,设置默认访问页面应该都用过.但是有时候设置了却不起作用.你知道是什么原因吗?今天就来说说我遇到的问题. 首先说说配置默认访问页面有哪几种方式. 1.tomcat配置默认访问页面 进入 tomcat 的 conf 目录,编辑 web.xml 文件.在 <web-app></web-app> 添加默认访问页面. <welcome-file-list> <welcome-file>index.html</welcome-file>

spring boot无法启动,或者正常启动之后无法访问报404的解决办法

以前用spring boot都是用idea的自动创建,或者是用的Jhipster创建的,就没有深究怎么去搭建.但是今天晚上心血来潮,想自己搭一个demo来整合一些技术,于是就花一点时间来手动搭.因为今天网络有点不好,所以spring boot的官网一直打不开,也就导致了无法阅读官方文档,就按照自己的记忆去搭于是遇到了以下两个问题 一 启动不了,一直报错,而且报的错很多时候还不一样.我就不列出报的什么错了,spring boot已经这么集成化了,难道我都还要配错?肯定是细节,和代码没有关系.于是找

NC中配置Servlet 调用NC服务

1.新建Servlet类(这个类中有实现调用接口的方法以及设置Token)路径没有要求,应该新建Servlet本来就不是规范. package nc.impl.ca.cuma.account.ma;   import java.io.BufferedReader; import java.io.IOException; import java.io.PrintWriter; import java.util.List; import java.util.Map;   import javax.s

配置apache访问日志和日志切割

配置apache访问日志和日志切割 1.打开apache主配置文件,命令:vim /usr/local/apache2/conf/httpd.conf,找到log_config_module模块,可以看到两条logformat(日志格式),如下图所示: 2.添加自定义的logformat(日志格式),命名为aming如下图所示: 保存退出! 3.打开虚拟主机配置文件,命令:vim /usr/local/apache2/conf/extra/httpd-vhosts.conf,找到<Virtual

如何在.xml中配置Servlet信息

在编写好servlet文件后需要在web.xml文件下配置servlet,才能使servlet在服务器上运行.基本配置方式如下所示 <servlet> <servlet-name>helloServlet</servlet-name> <servlet-class>com.hamigua.servlet.HelloServlet</servlet-class> <load-on-startup>1</load-on-startu

java web学习总结(二十一) -------------------模拟Servlet3.0使用注解的方式配置Servlet

一.Servlet的传统配置方式 在JavaWeb开发中, 每次编写一个Servlet都需要在web.xml文件中进行配置,如下所示: 1 <servlet> 2 <servlet-name>ActionServlet</servlet-name> 3 <servlet-class>me.gacl.web.controller.ActionServlet</servlet-class> 4 </servlet> 5 6 <ser