Java進階:Struts多模塊的技巧
在使用struts多模塊的,找到一些小技巧和經(jīng)驗,與大家分享一下。
關于多module的配置就不說了,只需要用不同的config,
struts-config.xml作為默認module, struts-config-module.xml作為/module的配置
CSDN上有不少相關的說明。
struts中的module,實際上就類似于平日里開發(fā)web程序中的子目錄
如
/- root |
例如上面的/music作為模塊名
那么struts-config-music中的所有path默認即/music/xxx.do
一些教程中說要把jsp頁面放入/web-inf中,這是個很好的方法,
一開始我也這么做,可惜,struts的action標簽不支持contextRelative,只有forward支持
所以,如果要使用/xxx.do直接redirect或者forward到某個頁面是行不通的。
因為他們的地址相對于/music/web-inf/xxx.jsp 這樣就找不到了。
我的建議是,root下面的目錄要和module一致。
例如
/ |
雖然安全性有些降低,但使用起來非常方便。
一般的,要寫一個link,可以通過<html:link>來寫
<html:link action="/module/action" > |
他的好處是內(nèi)置的支持module,不需要自己寫.do,這就可以使得你的.do
任意的修改為別的而不影響程序運行。例如,.jspa,假裝一下webwork
默認的<html:link>是相對module的。例如進入了/module/actionA指向的頁面
在這個頁面中,所有的link都被轉換為相對于/module 如<html:link action="/actionB" >,實際上是/module/actionB
那么,如果要執(zhí)行默認module的action怎么辦?嘿嘿,其實很簡單。我開始的時候絞盡腦汁,用了switchAction來解決/module/switch?prefix=&page=/xxx.do&.... 多麻煩
實際上,一個傳統(tǒng)的辦法可以有效解決。即<html:link action="../action" >
可以回到上一層的module中。我開始可真沒想到。
link標簽有page,href,action三種不同的鏈接方法。
其中,action默認的指向某個path,page指向一個jsp頁面,也是相對于module的href可以寫外部url.
相關文章
使用apache 的FileUtils處理文件的復制等操作方式
這篇文章主要介紹了使用apache 的FileUtils處理文件的復制等操作方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07
Spring Boot前后端分離開發(fā)模式中的跨域問題及解決方法
本文介紹了解決Spring Boot前端Vue跨域問題的實戰(zhàn)經(jīng)驗,并提供了后端和前端的配置示例,通過配置后端和前端,我們可以輕松解決跨域問題,實現(xiàn)正常的前后端交互,需要的朋友可以參考下2023-09-09
Mybatis的parameterType造成線程阻塞問題分析
這篇文章主要詳細分析了Mybatis的parameterType造成線程阻塞問題,文中有詳細的解決方法,及相關的代碼示例,具有一定的參考價值,感興趣的朋友可以借鑒閱讀2023-06-06

