我可以使用1个Web应用程序提供类似于StackOverflow的2个API吗?

时间:2016-02-18 02:31:58

标签: tomcat servlets java-ee

如果我当前的API位于api.foo.com/v1,其中/ v1是上下文路径,所有请求都发送到API servlet,如下所示:

    <servlet-mapping>
        <servlet-name>SearchServlet</servlet-name>
        <url-pattern></url-pattern>
    </servlet-mapping>

我需要部署另一个应用程序来使api.foo.com/v2可用。

如何重新配置​​我的应用程序/环境以对这两个请求进行记录,或者这是不可能的?应用程序是否可以接受所有请求,v1和v2是servlet还是RESTful映射?

1 个答案:

答案 0 :(得分:0)

为什么不创建两个servlet,一个用于处理每个REST服务?将其添加到您的web.xml文件中:

<servlet>
    <servlet-name>servletv1</servlet-name>
    <servlet-class>com.stackoverflow.Servletv1</servlet-class>
</servlet>
<servlet>
    <servlet-name>servletv2</servlet-name>
    <servlet-class>com.stackoverflow.Servletv2</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>servletv1</servlet-name>
    <url-pattern>/v1/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>servletv2</servlet-name>
    <url-pattern>/v2/*</url-pattern>
</servlet-mapping>