Java : different init parameters to same servlet based on different URL patteren

标签 java servlets web.xml

是否可以将默认参数发送到相同的 servlet 但 url 模式不同。 就像我有一个 servlet /Add不同的 url 模式,如 /AddPerson/AddEmplyoee将映射到 /Add小服务程序。但是我想在调用/Add servlet 时传递一些参数。喜欢什么时候 /AddPerson称为 send type = 1 to /Add小服务程序。当/AddEmplyoee称为 send type = 2 to /Add服务程序。
我知道我可以将初始化参数传递给 /Add使用 <init-param> 的 servlet标签。
是否可以这样做,或者我想为每个不同的操作编写不同的 servlet?

最佳答案

。它认为这是可能的。 如果(在 web.xml 中)您定义了 servlet AddPerson(使用 servlet-class=com.foo.Add)和一个 servlet AddEmplyoee (使用相同 servlet 类)比您可以使用不同的初始化参数。例如

<servlet>
    <servlet-name>AddPerson</servlet-name>
    <servlet-class>com.foo.Add</servlet-class>
    <init-param>
        <param-name>myParam</param-name>
        <param-value>MyVal1</param-value>
    </init-param>
</servlet>


<servlet>
    <servlet-name>AddEmplyoee</servlet-name>
    <servlet-class>com.foo.Add</servlet-class>
    <init-param>
        <param-name>myParam</param-name>
        <param-value>MyVal2</param-value>
    </init-param>
</servlet>

具有以下映射:

<servlet-mapping>
    <servlet-name>AddPerson</servlet-name>
    <url-pattern>/addperson</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>AddEmployee</servlet-name>
    <url-pattern>/addemployee</url-pattern>
</servlet-mapping>

如果我错了,您可以纠正我,但我认为,这最终会出现在两个单独的 servlet 中(都基于同一个类)。

关于Java : different init parameters to same servlet based on different URL patteren,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24736948/

相关文章:

tomcat - 仅对基于 servlet 的 webapp 中的某些页面使用 HTTPS

java - 使用 HTTPServletRequest 将参数从 servlet 传递到 jsp return null

java - 如何使用 OpenShift 中的 JAVA 连接到 MongoDB 服务器?

java - xml解析器在android中获取图像url

java - JSP - 检查商品是否已在购物车中

perl - 有时我从套接字中得到的不是我期望的

java - 游戏中下面这句话是什么意思!文档?

java - 我需要 Web/JavaEE 容器中的线程来完成同一 JVM 中的 AsyncContext 对象

java - JSP/Servlet 环境的最佳实践

java - 查询的步骤是什么?什么是先看web.xml还是context.xml?