Java Servlet映射错误出现在@WebServlet“;存在注释

Java Servlet映射错误出现在@WebServlet“;存在注释,java,xml,servlets,Java,Xml,Servlets,我的web.xml如下所示: <servlet> <servlet-name>LoginServlet</servlet-name> <servlet-class>com.ajayramesh.jrecycled.servlets.Login</servlet-class> </servlet> <servlet-mapping> <servlet-name&g

我的
web.xml
如下所示:

    <servlet>
    <servlet-name>LoginServlet</servlet-name>
    <servlet-class>com.ajayramesh.jrecycled.servlets.Login</servlet-class>
    </servlet>

  <servlet-mapping>
    <servlet-name>LoginServlet</servlet-name>
    <url-pattern>/login</url-pattern>
  </servlet-mapping>

我的
web.xml
中只有一个定义,只有一个
web.xml
。当我删除此注释时,服务器工作正常。据我所知,注释不应该对程序的运行时间产生影响,而只是为了优化编译?另一方面,该注释到底做了什么?

您不能对注释和web.xml使用相同的映射,您可以使用其中任何一个。App server将其视为重复的url映射


基本上,在web.xml中声明servlet和servlet映射元素等同于用@WebServlet注释servlet类。

明白了,谢谢。那么,它们在以前版本的Tomcat中是否共存?我已经看到了它们的示例代码。
The servlets named [LoginServlet] and [com.ajayramesh.jrecycled.servlets.Login] are both mapped to the url-pattern [/login] which is not permitted