专注Java教育14年 全国咨询/投诉热线:400-8080-105
动力节点LOGO图
始于2009,口口相传的Java黄埔军校
首页 hot资讯 Java Web相对路径访问

Java Web相对路径访问

更新时间:2020-10-22 17:53:57 来源:动力节点 浏览1098次

相对路径就是指由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系。Java Web项目发布时,其实只将WebContent文件夹部署到服务器上,并将文件夹名WebContent改为项目名,java源代码并不发布,而是运行存放在WebContent—>WEB-INF—>classes目录下的经过编译的class字节码文件。因此,需要我们找到Java Web相对路径来访问源代码。


1.在web项目中,若我们在访问路径的最前端不加“/”,那就是使用相对路径,如下图所示

image.png


上面图中是一个jsp页面,它是项目中WebContent下的index.jsp。这里面写了一个form表单,将表单提交给LoginServlet,而action中没有添加“/”,则这里就是用了相对路径。而这里的相对路径指的是相对于当前的这个前端页面所在的文件夹(我们将在第4步进行测试)。


2.首先我们需要知道,在eclipse的web项目中,前端页面的默认起始路径就是WebContent.现在我们访问我这个项目中的index.jsp,那路径如下图:

image.png


上图中,圈1是代表项目名,有人可能会问,你刚刚不是说前端页面的默认起始路径是webContent吗?这里没有看见webContent这字段,这是因为java web项目发布时,其实只将WebContent文件夹部署到服务器上,并将文件夹名WebContent改为项目名(这里项目就是叫TestWeb),圈2是文件名。


3.我们还需要知道,若需要访问servlet这种在src下的Java文件,也是直接“IP地址/项目名/servlet”,不需要加上包名。如下图,我将访问我项目下LoginServlet。

image.png


4.测试

当前我们jsp中代码如下(不加 / ,使用相对路径,看能否访问到LoginServlet):

image.png


运行结果(点击提交后):

image.png

image.png



可以访问到LoginServlet,接下来我将使用在WebContent文件下的Test文件下的index2.jsp文件进行测试,下面为index2.jsp的代码(依旧是使用相对路径)。

image.png


运行之后的结果图如下:

image.png


大家注意了:此时路径中有改变。当我点击提交后,运行结果图如下:

image.png


从上图可以看出来,此时相对路径是http://localhost:8080/TestWeb/Test/,因为我们index2.jsp的页面是在Test文件夹下的,所以此时相对路径是 相对于index2.jsp的路径,自然会多个Test路径,而我们知道要访问src下的servlet 路径应该是,“IP地址/项目名/servlet”,此时多了个Test 怎么可能可以访问到呢。那怎么办呢,这时,我们只能使用绝对路径来访问。关于访问Java Web绝对路径的知识,小伙伴们可以在本站的Java Web教程中寻找哦。


提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>