Struts2學習筆記(2)-路徑問題解決_java

來源:互聯網
上載者:User

  在struts2中的路徑問題是根據Action的路徑而不是JSP的路徑確定的,所以盡量不要使用相對路徑,使用相對路徑會讓路徑問題變得很繁瑣很麻煩,有的時候一個細微的變動會導致你需要大的改動。

  解決方案其實也很簡單:即統一使用絕對路徑。

  在jsp中可以通過request.getContextRoot的方式獲得webapp的絕對路徑:

複製代碼 代碼如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 
<% 
    String path = request.getContextPath(); 
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 
%>

  以上方式很明確,path字串獲得是webapp的路徑,然後basePath獲得的是整個項目的根路徑(註:已經含有了最後的“/”)

在使用時只需調用basePath即可(以跳轉到index為說明):

複製代碼 代碼如下:
<a href="<%=basePath %>index.jsp">index.jsp</a>

其中<a></a>代表的是超連結,這樣就可以跳轉到xxxxx/index了(前提是你的namespace和Action的設定要配置好)。

以上就是Struts2中路徑問題的全部內容,希望能給大家一個參考,也希望大家多多支援雲棲社區。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.