我想做这样的事情:
localhost:7001/servlet/character?name=zombies
我试过这样做:
<servlet-mapping>
<servlet-name>zombies</servlet-name>
<url-pattern>/character?name=zombies</url-pattern>
</servlet-mapping>
但它不起作用并且给我未找到的错误。关于如何做的任何建议或解决方案?
我想做这样的事情:
localhost:7001/servlet/character?name=zombies
我试过这样做:
<servlet-mapping>
<servlet-name>zombies</servlet-name>
<url-pattern>/character?name=zombies</url-pattern>
</servlet-mapping>
但它不起作用并且给我未找到的错误。关于如何做的任何建议或解决方案?
您的?name=zombies
url-pattern 部分不应在web.xml
. 它是一个查询参数,实际上并不是 servlet 安装点的一部分。您需要name
通过request.getParameter("name")
.
如果您想将参数传递给您的 servlet,请这样做
<servlet>
<servlet-name>zombies</servlet-name>
<servlet-class>com.ZombiesDemo</servlet-class>
<init-param>
<param-name>name</param-name>
<param-value>zombies</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>zombies</servlet-name>
<url-pattern>/character</url-pattern>
</servlet-mapping>
这可以在 ZombiesDemo.java servlet 中检索为
public void init(ServletConfig servletConfig) throws ServletException{
String name = servletConfig.getInitParameter("name");
}
您正在尝试将查询字符串附加到后面的内容?与您的URL 模式。URL 模式旨在映射您的 servlet 类。如果您可以在地址栏中传递查询字符串。