WEB-INF& 绝对路径vs相对路径

时间:2021-07-15 19:08:58

在struts2里面用XXXInput方法和springmvc里面用GET模式进入添加或者登陆输入页面,有时候会在方法里面做一下准备,比如动态读入部门信息放在select中,或者在model中加入一个新建对象,供传值使用。所以jsp文件要放在安全目录WEB-INF下,这样的话不通过action解析,直接在地址栏直接输入jsp文件的路径,不通过input或者GET进行准备,是访问不到输入页面的,不然会导致逻辑上的错误出现。

绝对和相对是针对url的,如果通过controller的一个url地址到达的jsp页面,那么用来参照的是这个action的url,比如/user/add页面得到的jsp显示,如果想去/user/login,在jsp中只需要输入href=“login”(记住不要前面加/)。

如果是通过jsp/user/add.jsp访问的页面,想转到user文件夹下面的login.jsp,forword=“login.jsp”,如果想要访问jsp文件下面的error.jsp,则需要输入"../error.jsp" (“..”是先去上一层文件夹)

但是用绝对路径 比如/${requst.getContentPath}/xx/xxx/xx.jsp的好处是,如果本页面没有被调用及被用url映射到,那么可以移动到别的文件夹,不用改其中对别的路径的跳转方式,比较灵活。