JSP和Servlet中request怎么获得请求发起页面的地址或路径

我在两个个JSP文件中都有表单form,但是内容不同,现有一个servlet文件,因为操作基本相同,为了复用两JSP的表单都提交POST方式到这个servlet。现在问题是我在servlet中怎么区分来自这两个JSP文件的请求。比如说1.jsp和2.jsp,我尝试在servlet中利用request.getRequestURI()来取源请求页面地址,预想的是/test/1.jsp或/test/2.jsp,但结果却是/test/servlet。后来试了其他几个方法,都不成功。请教一下知道的高手,谢谢。

String uri=request.getRequestURI();
String path=uri.substring(uri.lastIndexOf("/"),uri.lastIndexOf("."));
如果你的web.xml 中请求路径是" *.do ",那么在servlet中可以根据这个判断应该能获取到
比如:if(path=“/list”){
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-01-17
String header_referer = request.getHeader("Referer");

通过上述的Java代码即可获取到请求的引用页面地址

第2个回答  2012-02-09
笨办法~在表单上做文章 发送一条证明自己信息的数据 然后在servlet里验证这个信息决定执行代码
好办法~去百度搜Struts1........本回答被网友采纳

在servlet中怎么获取请求页面的url???
public static String getUrl(HttpServletRequest req) { String reqUrl = req.getRequestURL().toString();String queryString = req.getQueryString(); \/\/ d=789 if (queryString != null) { reqUrl += "?"+queryString;} return reqUrl;} ...

如何得到一个jsp页面所在的项目的路径
3.在Servlet中取得路径:(1)得到工程目录:request.getSession().getServletContext().getRealPath("") 参数可具体到包名。结果:E:\\Tomcat\\webapps\\TEST (2)得到IE地址栏地址:request.getRequestURL()结果:http:\/\/localhost:8080\/TEST\/test (3)得到相对地址:request.getRequestURI()结果:\/TEST\/te...

servlet中request.getrequestDispatcher
`RequestDispatcher getRequestDispatcher(String path)`方法接受一个路径参数,不论是相对路径还是绝对路径,都能根据这个路径指示服务器将请求转发到指定的资源。例如,如果想从`activeshow.jsp`页面转发到`Cars`文件夹下的某个`xxx.jsp`,可以使用`getRequestDispatcher(path)`,传入对应的路径字符串。总之...

servlet中request.getrequestDispatcher()的路径问题
RequestDispatcher getRequestDispatcher(java.lang.String path)path相对路径dao和绝对路径都可版以,到哪里去就写那个path 。权 Active文件夹下的activeshow.jsp网页 : \/项目名称\/Active\/activeshow.jsp (绝对路径)activeshow.jsp (相对路径)active.jsp提交到Cars文件夹中的jsp网页上 : \/项目名称\/Cars\/...

在jsp中如何用request中获取后台传来的数据?
HttpServletRequest接口有setAttribute方法,而没有setParameter方法 当两个Web组件之间为链接关系时,被链接的组件通过getParameter方法来获得请求参数 String datetime1 = (String)request.getAttribute("datetime");通常情况下,你每次提交(点击搜索)的时候,过程如下: 转到后台,根据你的输入生成新的sql语句转到...

java servlet获取客户端IP
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了 Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用 request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或 192.168.1.110,而并不是...

我怎么才能从ServletRequest request 中的到URL,参数我能得到。_百度知...
public void doFilter(ServletRequest servletRequest,ServletResponse servletResponse, FilterChain chain) { this.chain = chain;this.request = (HttpServletRequest) servletRequest;this.response = ((HttpServletResponse) servletResponse);\/\/ 获取当前页面文件名此处url为:\/Gzlkh\/login.jsp String url...

jsp页面怎么获得request中的值
jsp页面怎么获得request中的值参考代码如下:HttpServletRequest request = ServletActionContext.getRequest();String id=request.getParameter("id");说明:创建request 对象 用request的getParameter方法来获取URL中的参数就获取到了

怎样在jsp中记录访问网页的IP地址
假如用代理服务器,request.getRemoteAddr(); 只能得到代理服务器地址,以下方法是得到正确所有ip的方法 在jsp声明这个函数 <%!public String getIpAddr(HttpServletRequest request) { String ip = request.getHeader("x-forwarded-for");if(ip == null || ip.length() == 0 || "unknown".e...

J2EE平台SSH框架,action获取请求URL的问题。应该不难,达人来回答一下...
在客户端上,只有html,没有jsp 不管是login.jsp还是login2.jsp,甚至是servlet,都是在服务端运行之后,生成了html,才返回到客户端的,所以从客户端出发的request根本是不知道发出请求的html是通过什么页面生成的。要想知道是来自于login.jsp,你只能在login.jsp里写一个hidden,然后把里面的value值,...

相似回答