当前位置: 首页 > 知识库问答 >
问题:

Servlet URL映射

孙成益
2023-03-14

我遇到了一些问题,无法理解URL映射是如何为servlet工作的。

我在网上看了很多教程和帖子,但没有运气。

所以,假设我有一个servlet(welcomeServlet.java)、一个索引页(index.html)和我的web.xml文件。

java文件在src目录中,而index.html在WebContent目录中。

我的索引页将由web.xml调用,并将显示一个按钮,一旦按下该按钮,将向servlet发送一个get请求。

问题是,一旦我按下这个按钮,页面除了url之外没有任何变化,从

http://localhost:8080/WelcomeServlet

http://localhost:8080/WelcomeServlet/?

这是索引页的正文:

<body>
    <form action = "/WelcomeServlet" method = "get">
    <p><label>Click the button to invoke the servlet
            <input type = "submit" value = "Get HTML Document"/>
    </label></p>
    </form>
</body>

这是web.xml servlet映射:

<servlet>
        <servlet-name>welse</servlet-name>
        <servlet-class>WelcomeServlet</servlet-class>
</servlet>

<servlet-mapping>
        <servlet-name>welse</servlet-name>
        <url-pattern>/WelcomeServlet</url-pattern>
</servlet-mapping>

<welcome-file-list>
        <welcome-file>Index.html</welcome-file>
</welcome-file-list>

我确信问题是索引表单操作中的寻址问题,但我真的不知道应该把什么放在那里。我试过几条路,但都没有成功。

共有2个答案

易嘉胜
2023-03-14

假设您在IDE中设置的默认源目录是/src,而您的默认web内容目录是/web,那么在servlet上下文中,只需在没有“/”的情况下写入servlet名称,确保您的默认web内容目录是webcontent。之后,从窗体的action属性中删除“/”。

胡承载
2023-03-14

你就快到了。只需在操作中添加../,这样它就可以后退一步。目前,它指向的位置与您的html文件相同。

<body>
    <form action = "../WelcomeServlet" method = "get">
    <p><label>Click the button to invoke the servlet
            <input type = "submit" value = "Get HTML Document"/>
    </label></p>
    </form>
</body>
 类似资料:
  • 我正在使用Hibernate和JPA注释来映射我的类。当hibernate尝试映射这个类时,我遇到了一个问题 我的Social alStat类是: 我得到了这个错误: 我猜发生这种情况是因为我试图映射到一个基本类,但@ElementCollection注释不应该解决这个问题吗? 我的item类如下所示:

  • 前端将这个json发送到我的API 控制器:

  • 前缀映射,后缀映射和缓存映射 通过 names.NewPrefixMapper(names.SnakeMapper{}, "prefix") 可以创建一个在 SnakeMapper 的基础上在命名中添加统一的前缀,当然也可以把 SnakeMapper{} 换成 SameMapper 或者你自定义的 Mapper。 例如,如果希望所有的表名都在结构体自动命名的基础上加一个前缀而字段名不加前缀,则可以

  • 又称关联数组(associative array)或字典(dictionary),是以 [键, 值] 有序对为数据形态的数据结构,其中键名用来查询特定元素。

  • 将一个范围的数字映射到另一个范围 用法 Your browser does not support the video tag. 案例:数据变化趋势 功能:加入映射和不加映射的折线图形成对比,显示数字改变的规律 工作原理 从配置项中设定两个范围。输入将会按照指定的范围映射。 Example: make a thermometer. The temperature (0~50) is scaled

  • 问题内容: 我一直在研究一个非常简单的JPA示例,并试图将其调整为现有数据库。但是我无法克服这个错误。(下面。)这只是我没看到的一些简单的事情。 在下面的DocumentManager类中(一个简单的servlet,因为这是我的目标),它做了两件事: 插入一行 返回所有行 插入效果很好-一切都很好。问题出在检索上。我尝试了各种参数值,但没有走运,并且尝试了各种更复杂的类注释(如列类型),但都没有成

  • 当我尝试通过枚举将源中的字符串映射到目标中的整数时。ModelMapper失败。 来源 目的地 字符串和整数之间的映射在枚举中定义