jpetstore的兩個核心類:beanaction和basebean,在這兒對beanaction進行一下解析,原始碼:
//例項化bean,jpetstore中的bean也是vo,裡面有相應的行為操作
basebean bean = (basebean) form;
method = bean.getclass().getmethod(methodname, null);
synchronized (bean) {
beanaction的execute()方法執行場景:
1. 當請求url對應的action配置檔案中帶有parameter時,例如鏈結,先查詢配置檔案中該aciton項的parameter屬性是否已定義,如果有定義:
程式將會執行x1處的**,執行catalogbean中的switchproductlistpage方法,
2. 如果請求的action的pararmeter屬性未定義,如
這樣的鏈結,配置檔案中沒有parameter屬性,
程式將會執行x2處的**,查詢path中的最後乙個「/」後的單詞viewcategory,執行catalogbean中的viewcategory方法。
3. 第三種情況是提交的url對應的action在配置檔案中的parameter="*"時,如enter the store這樣的鏈結,在配置檔案中
程式將不會執行x1和x2處的**,直接返回已定義好的forward頁面。
jpetstore的BeanAction原始碼解析
jpetstore的兩個核心類 beanaction和basebean,在這兒對beanaction進行一下解析,原始碼 例項化bean,jpetstore中的bean也是vo,裡面有相應的行為操作 basebean bean basebean form method bean.getclass g...
Spring自帶的JPetStore分析(一)
spring mvc spring ibatis 或struts mvc spring ibatis 使用的是spring自帶的例子,與ibatis給出的例子還有有區別 安裝 我使用的環境是mysql,tomcat4 按照readme的說明編譯好war檔案後,根據兩個檔案建立資料庫表和插入資料,配置...
Spring自帶的JPetStore分析(二)
spring帶的jpetstore的struts mvc版 使用了多級的繼承體系,有baseaction,securebaseaction,baseactionform。這些父類將常用的功能進行了一些封裝,對寫實際的程式還是有參考價值的。baseaction 繼承.apache.struts.act...