javaweb xml的一些配置

本文详细介绍了如何在Servlet中进行映射配置及使用通配符,并解释了如何设置初始化参数及其获取方式。

<!--注释-->

1.添加映射

<servlet-mapping>
    <servlet-name>Servlet</servlet-name>

    <url-pattern>/test</url-pattern>

</servlet-mapping>

为名字为Servlet增加了一个test的映射

或者直接在里面添加也可以如

<servlet-mapping>
    <servlet-name>Servlet</servlet-name>

    <url-pattern>/test</url-pattern>

    <url-pattern>/testb</url-pattern>

</servlet-mapping>

2.映射的通配符

①:*.do---所有以.do结尾的都可以被匹配上

②:/abc/*---所有以/abc开头的都可以匹配上

③:直接/为缺省值,找不到能够相匹配的就以此为匹配对象

3.编译后的class放到Tomcat文件夹下cn.itcast.sevlet.Test分别代表子文件夹下的Test.class

<servlet>
    <description></description>
    <display-name>Test</display-name>
    <servlet-name>Test</servlet-name>
    <servlet-class>cn.itcast.sevlet.Test</servlet-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>

  </servlet>

 <context-param>
    <param-name>sex</param-name>
    <param-value>women</param-value>
  </context-param>

其中init-param是通过ServletConfig对象进行封装,通过

ServletConfig config = this.getServletConfig();
String param = config.getInitParameter("encoding");

可以获取到encoding的参数

ServletContext context = this.getServletContext();
        String scorce = (String) context.getAttribute("scorce");
        out.println(scorce);
        Enumeration<String> paramNames = context.getInitParameterNames();
        while(paramNames.hasMoreElements()){
            String name = paramNames.nextElement();
            String value = context.getInitParameter(name);
            //获取相应name对应的值
            out.print("<br />");
            out.print(name + ":"  + value + "<br />" + "That's all");
        }

可以获取到<param-name>里面的名字和对应的值,即初始化参数

### 配置 Java Web 项目的 XML 文件 在 Java Web 项目中,`web.xml` 是用于配置各种组件和服务的核心文件之一。尽管现代框架可能减少了对 `web.xml` 的依赖[^2],但在某些情况下仍然需要手动编辑此文件。 #### 定义文档类型声明 (DOCTYPE) 为了确保 XML 解析器能够正确理解并验证 `web.xml` 中的内容,应该指定 DOCTYPE 声明。对于较新的 Servlet 版本(如 3.0 及以上),推荐使用 Schema 来代替 DTD: ```xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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> ``` 这段代码定义了一个基于最新标准的 Web 应用程序结构,并指定了相应的命名空间和模式位置[^3]。 #### 设置默认 Servlet 处理静态资源请求 为了让服务器知道如何处理 HTML 或其他类型的静态文件,在 `web.xml` 中添加如下配置可解决问题: ```xml <servlet> <servlet-name>default</servlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping> ``` 上述配置使得任何以 `.html` 结尾的 URL 请求都将由 Tomcat 自带的 DefaultServlet 进行响应[^1]。 #### 指定欢迎页面列表 如果希望设定特定的首页或入口点,则可以通过 `<welcome-file-list>` 元素实现: ```xml <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list> ``` 这样做的好处是可以让容器自动寻找这些文件作为应用程序的起始页。 #### 正确排列标签顺序 需要注意的是,`web.xml` 内部各元素之间的相对位置是有严格规定的。不遵循正确的顺序可能会导致 IDE 提示错误警告或是运行时异常。因此建议参照官方文档来安排各个部分的位置[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值