对于JavaWeb项目中web.xml文件中Servlet的基本配置有一些小记录写在这里,并做参考,有新的及时更新
<?xml version="1.0" encoding="UTF-8"?> <web-app> <!-- 在创建web项目时,若是系统自动生成,上面会有一串配置信息,因为不影响大局,这里没有列出--> <!-- 流程: 当在网页中使用/login时,发现不是网页,则会在web.xml找寻对应的名字,由url-pattern来定义的, 找到对应的servlet-name,然后找到对应的servlet-class,完成该类的加载以及对象的创建 --> <!-- 如何配置一个Servlet,让web容器识别呢? --> <!-- 书写servlet标记,其中包含servlet-name,servlet-class --> <servlet> <!-- servlet-name只是给该Servlet取一个在web.xml中使用的名字 --> <servlet-name>this</servlet-name> <!-- servlet-class书写要对应的Servlet的Java文件,用全限定名(会自动反射)包名+类名 --> <servlet-class>com.lovo.myweb_1.servlet.LoginServlet</servlet-class> </servlet> <!-- 映射servlet --> <servlet-mapping> <!-- 从servlet标记中找到名字 --> <servlet-name>this</servlet-name> <!-- 将路径和名字绑定 --> <!-- http://localhost:8080/myweb-1/login --> <url-pattern>/login</url-pattern> </servlet-mapping> </web-app>
这里需要注意的问题有:
1、全限定名的书写:为包名+类名
2、路径的书写:有以下几种格式
第一种:/b 精确模式匹配
第二种:*.bbb扩展名匹配
第三种:/smallclass/add 路径匹配
第四种:/ 默认路劲匹配——选择默认路径可以用来设置返回一个固定的页面
这个只是格式,要是不书写,服务器在启动时,就会不识别,发生错误,这个login是在web项目主文件下生成的,当在form表单提交后跳转至这个页面可以使用相对路径和绝对路径,推荐使用绝对路径
部署在服务器上,工作空间都是webapps这个文件夹,http://localhost:8080/ 即指向的是这个文件夹的下一级
绝对路径:即把路径名写全,/ 项目文件夹/ login,不会因为html文件变动而变动;
相对路径:以../../ 的方式相对html文件书写的,当html文件位置发生变动时,就需要重写改变写法;
表单中的提交路径
<!-- /login表明是从myweb-1的第一级目录来找寻内容 --> <form method="get" action="/myweb-1/login"> <p> <input type="text" name="userName" placeholder="请输入账号"> </p> <p> <input type="password" name="pwd" placeholder="请输入密码"> </p> <input type="submit" value="登录"> <input type="reset" value="重置"> </form>
以上表单中action=" ";中即是书写这个表单点击提交后应该跳转的页面,特别注意书写路径是否正确,否则404就等待着你!!!
原文地址:https://www.cnblogs.com/xiyuanxiaorenwu/p/9148280.html
时间: 2024-10-10 16:25:59