我的工作包括从我的servlet转发到jsp页面,我在WebContent下创建了我的jsp页面(SaisieProduit.jsp),并确定创建了web.xml(它正确实现了servlet类,因为我还有另一个jsp页面通过使用相同的servlet正常工作),在另一个jsp页面(header.jsp)中,我创建了一个链接(Saisie.do)。,我的问题是为什么当我单击插入jsp类名(SaisieProduit.jsp)时,为什么? t出现在网址中吗?
这是我的web.xml
<servlet>
<servlet-name>cs</servlet-name>
<servlet-class>web.ControleurServelet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>cs</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
这是header.jsp中的内容
<li><a href="Saisie.do">Insert</a></li>
这是我的servlet类(ControleurServelet.java)中的内容
if(path.equals("/index.do")){
req.getRequestDispatcher("produits.jsp").forward(req, resp);
}
else if(path.equals("/Saisie.do")){
req.setAttribute("produit", new Produit());
req.getRequestDispatcher("SaisieProduit.jsp").forward(req, resp);
}
首先打开我的主页
然后我单击按钮“ Insert”以查看SaisieProduit.jsp页面
单击“插入此页面后,将被查看
@ marouu询问here:
我的问题是为什么当我单击“插入jsp类名(SaisieProduit.jsp)”时没有出现在URL中
请参见RequestDispatcher.forward(...)的方法说明:
将请求从servlet转发到另一个资源(servlet,JSP文件或HTML文件)在服务器上。
这在服务器内部发生,这就是为什么地址在浏览器中不会更改为.jsp的原因。
如果要在浏览器上更改地址,则需要returning an HTTP redirect response。