解决servlet在web.xml中的路径跳转问题
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>FromServlet</servlet-name>
<servlet-class>from.servlet.FromServlet</servlet-class>
</servlet>
<!-- 试着把这个也注掉,看是否能用? 经验证,的确如此,能够使用,直接跳到servlet中 还存在一个问题是,
假如不这么做,他是否有着一个默认字符编码功能 把servlet中的字符编码弄掉,看是否能返回正确的结果
***经验证,原来什么几把都没有了,我终于入门了,感谢成哥让我注重的基础,回补最基础的jsp和servlet,
实力就在于精通基础
-->
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>AddServlet</servlet-name>
<servlet-class>filter.AddServlet</servlet-class>
</servlet>
<servlet>
<description>This is the description of my LoginSystem</description>
<display-name>LoginSystem</display-name>
<servlet-name>CheckAccount</servlet-name>
<servlet-class>from.servlet.CheckAcount</servlet-class>
</servlet>
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>TestCharset</servlet-name>
<servlet-class>from.servlet.TestCharset</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>FromServlet</servlet-name> <url-pattern>/FromServlet</url-pattern>
<!--问题: 可以设想一下,为什么这个路径没有配置后缀, 那它肯定会有一个默认的后缀页面(不是这个问题,仅仅是声明一个路径名,并无特殊) -->
</servlet-mapping>
<!-- 原来是这样,上下两个命名一致,就会产生冲突,验证是这样 肯定要差异化 (这点就说明研究的还不够深入) 实则不然,只要servlet类中没有写入注解@WebServlet("/AddServlet"),则这两个可以写成一样。
重点是它的默认查找方式,不能设重复,注解就如同Controller,与<servlet-name></..>这没有半毛钱关系 查找方式首先看注解的,若没有则按web.xml中配置的。可以只配置注解,不配web.xml也是一样的,跟spring的作用
一样的道理。试下 事实已经验证,愉悦了 -->
<servlet-mapping>
<servlet-name>AddServlet</servlet-name>
<url-pattern>/AddServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>CheckAccount</servlet-name>
<url-pattern>/check</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>TestCharset</servlet-name>
<url-pattern>/TestCharset</url-pattern>
</servlet-mapping>
</web-app>
总结,servlet的URL配置有两种方法:
1,利用@WebServlet("/.....")简单方便,就无需再配web.xml中的servlet啦
2,只用配置web.xml中的东西,路径就是<url-pattern>........</url-pattern>中的东西,
3,同时使用上面两种方法也行,但是名字不能重复,一旦一致,就会报内部服务器错误 例如(@WebServlet("/addServlet"),<url-pattern>/addServlet</url-pattern>)
这个就是典型的找报错的通道,500等着你
因为痛苦过,所以希望众生不要再痛苦,大道明矣
解决servlet在web.xml中的路径跳转问题的更多相关文章
- 【Servlet】web.xml中welcome-file-list的作用
今天尝试使用struts2+ urlrewrite+sitemesh部署项目,结果发现welcome-file-list中定义的欢迎页不起作用: <welcome-file-list> & ...
- Servlet 工程 web.xml 中的 servlet 和 servlet-mapping 标签
本文转载自 陈蒙的博客 最近在学习JavaEE轻量级框架,对于servlet-mapping中的url-partten标签以及网页访问时的执行顺序不是很清楚,搜索了很多遍终于找到了这篇博文(搜索也是个 ...
- 【java】Servlet 工程 web.xml 中的 servlet 和 servlet-mapping 标签
摘录某个工程的 web.xml 文件片段: 访问顺序为1—>2—>3—>4,其中2和3的值必须相同. url-pattern 标签中的值是要在浏览器地址栏中输入的 url,可以自己命 ...
- Servlet 工程 web.xml 中的 servlet 和 servlet-mapping 标签 《转载》
摘录某个工程的 web.xml 文件片段: 访问顺序为1—>2—>3—>4,其中2和3的值必须相同. url-pattern 标签中的值是要在浏览器地址栏中输入的 url,可以自己命 ...
- 【Servlet】web.xml中url-pattern的用法
目录结构: contents structure [+] url-pattern的三种写法 servlet匹配原则 filter匹配原则 语法错误的后果 参考文章 一.url-pattern的三种写法 ...
- web.xml中多个Servlet执行顺序的问题!
1.两个servlet或者两个servlet-mapping,其中的servlet-name名称不能存在相同. 2.所有的servlet-mapping标签下,url-pattern中包含的文本不能相 ...
- web.xml中url-pattern匹配规则
小知识 一般的URL组成 URL = 服务器地址 + RequestURI 例如URI:http://localhost:8080/practice/main [http://localhost:80 ...
- 绝对路径${pageContext.request.contextPath}用法及其与web.xml中Servlet的url-pattern匹配过程
以系统的一个“添加商品”的功能为例加以说明,系统页面为add.jsp,如图一所示: 图一 添加商品界面 系统的代码目录结构及add.jsp代码如图二所示: 图二 系统的代码目录结构及add.js ...
- (转)绝对路径${pageContext.request.contextPath}用法及其与web.xml中Servlet的url-pattern匹配过程
以系统的一个“添加商品”的功能为例加以说明,系统页面为add.jsp,如图一所示: 图一 添加商品界面 系统的代码目录结构及add.jsp代码如图二所示: 图二 系统的代码目录结构及add.js ...
随机推荐
- 线段树基本操作(Segment Tree)
线段树(Segment Tree) 入门模板题 洛谷oj P3372 题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.求出某区间每一个数的和 输入格式 第一行包 ...
- [Re:从零开始的分布式] 0.x——分布式锁概述
为什么需要分布式锁 Martin Kleppmann是英国剑桥大学的分布式系统的研究员,Martin认为一般我们使用分布式锁有两个场景: 效率:使用分布式锁可以避免不同节点重复相同的工作,这些工作会浪 ...
- 修改VS项目的目标平台(目标框架)
如果是正常的情况下.. 右键项目属性里就有修改的地方.. 可是有时候打开属性发现修改的下拉框是禁用的.. 这时候可以右键 "卸载项目" 编辑 .csproj 项目文件 在上方有个& ...
- net与树莓派的情缘-安装SVN(三)
sudo apt-get install subversion cd /home/pi mkdir svn svnadmin create /home/pi/svn/Project cd /home/ ...
- 找到MySQL配置文件默认路径
如果不知道当前使用的配置文件的路径,可以尝试下面的操作: # which mysqld /usr/local/mysql/bin/mysqld # /usr/local/mysql/bin/mysql ...
- OGNL取Map,List,Set的值
用到的类有: 相应代码: public class Dog { private String name; public Dog(){ } public Dog(String name){ this.n ...
- hibernate的反向生成改懒加载的地方
改变懒加载只需要把生成的文件中的获取类型改为eager fetch = FetchType.EAGER @ManyToOne(fetch = FetchType.EAGER)//把懒加载换成饿加载模式 ...
- ActiveMQ:Exception occurred while processing this request, check the log for more information!
出现上面错误的原因有以下两种 1 jdk的版本和activemq的版本不符 安装完ActiveMQ之后,通过http://IP:8161登陆到控制台. 通过测试代码给服务端发送队列消息,在控制台点击q ...
- java 命令--备忘
java -Djava.ext.dirs=/tmp/spark-sample/lib/ -cp ./spark-sample-1.0.jar com.sample.StartLauncher
- [中英对照]Booting Process in Linux RHEL 7 | Linux RHEL 7启动过程
Booting Process in Linux RHEL 7 | Linux RHEL 7启动过程 In this post, I will guide you booting process in ...