我想做这样的事情:
本地主机:7001 / servlet的/字符名称=僵尸
我试过这样做:
<servlet-mapping>
<servlet-name>zombies</servlet-name>
<url-pattern>/character?name=zombies</url-pattern>
</servlet-mapping>
但它不起作用并且给我找不到错误。关于如何做的任何建议或解决方案?
答案 0 :(得分:1)
您的网址格式的?name=zombies
部分不应在web.xml
中使用。它是一个查询参数,实际上不是servlet挂载点的一部分。您需要通过name
访问僵尸servlet中的变量request.getParameter("name")
。
答案 1 :(得分:0)
您尝试使用网址格式附加查询字符串后跟?的内容。 URL模式用于映射servlet类。如果你可以在地址栏本身传递查询字符串。
答案 2 :(得分:0)
如果要将参数传递给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");
}