2024年5月3日发(作者:)
—高级软件人才实作培训专家!
request获取请求路径
t
获取请求路径方法介绍
request对象中包含的是请求信息,当我们在浏览器地址栏上输入:
localhost:8080/Example/AServlet?username=zhangsan,这段地址也会作为请求信息封装在request对象
中,request对象必然会提供相关的方法来获取这些请求信息,这些信息其实就是请求路径信息。
request对象通过以下方法来获取请求路径,如下所示:
StringgetServerName():获取服务器名,localhost;
StringgetServerPort():获取服务器端口号,8080;
StringgetContextPath():获取项目名,/Example;
StringgetServletPath():获取Servlet路径,/AServlet;
StringgetQueryString():获取参数部分,即问号后面的部分:username=zhangsan
StringgetRequestURI():获取请求URI,等于项目名+Servlet路径:/Example/AServlet
StringgetRequestURL():获取请求URL,等于不包含参数的整个请求路径:
localhost:8080/Example/AServlet。
下面通过一张图来了解request对象调用哪些方法获取请求路径,如图1-1所示:
图1-1request对象获取请求路径
t
获取请求路径练习
通过上面对request获取请求路径的方法介绍,为了更好的掌握这些方法,下面通过一个案例演示各个
方法的执行效果,如下所示:
(1)创建一个web应用,Example07,在该应用下创建一个Servlet类,PathServlet,主要代码例1-1所
示:
例
publicclassPathServletextendsHttpServlet{
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
—高级软件人才实作培训专家!
throwsServletException,IOException{
/*
*通过request获取请求路径,并通过response对象,将获得的路径写回浏览器端
**/
ter().print(eme()+"");//获取协议
ter().print(verName()+"");//获取服务器名称
ter().print(verPort()+"");//获取协议端口号
ter().print(textPath()+"");//获取工程名称
ter().print(vletPath()+"");//获取servlet路
径
ter().print(ryString()+"");//获取参数
ter().print(uestURI()+"");//获取请求URI
ter().print(uestURL()+"");//获取请求URL
}
}
在例1-1中,使用response对象向浏览器端响应数据,每写一个路径便换行一次,在浏览器端的页面
中换行需要使用html标签“”。
(2)PathServlet在文件中,其访问路径的配置为:“/PathServlet”。
(3)将Example07发布到Tomcat服务器端,然后启动服务器,在浏览器地址栏上输入:
localhost:8080/Example07/PathServlet?username=zhangsan&password=123,浏览器的显示结果如图1-2
所示:
图1-2浏览器显示结果
在图1-2中,我们依次获取的是协议名称、服务器名称、端口号、工程名称、Servlet访问路径、参数、
URI及URL。在以后的开发中,我们要获取访问路径,最常用方法是uestURL()。
另外,还需要注意的是:我们在页面中使用的超链接、或者form表单,它们都有一个属性是用来表
示要访问的路径,通常都是项目名称加上资源名称,现在学习了request获取请求路径的方法,以后在超链
接和form表单中,项目名称都使用textPath()方法来代替。这样做的好处是防止以后项目名
被更改后,需要将所有的超链接和表单访问路径都进行修改。


发布评论