1. 程式人生 > >2. Struts2框架之原理篇(簡述)

2. Struts2框架之原理篇(簡述)

一、Struts2的執行原理

  1. 伺服器啟動載入web.xml 內容,同時建立struts2的過濾器StrutsPrepareAndExecuteFilter,載入一系列的配置
  2. 當一個http請求訪問送到伺服器時,比如localhost/struts2/demo.action
    這時,struts拿到這個地址,擷取到demo.action 路徑
  3. 拿著這個路徑到struts.xml 檔案中去匹配,dom4j 會解析xml檔案中的標籤,如果有action 標籤中的name屬性值與這個 demo 相匹配,那就順勢找到其對應的 class屬性
  4. 得到class的屬性值 也就是Action類全路徑,通過反射方法拿到位元組碼物件
    Class clazz = Class.forName(“action的全路徑”);
  5. 然後得到名稱是execute的方法(預設訪問的)
    Method m = clazz.getMethod(“execute”);
  6. 方法執行,得到返回值
    Object obj = m.invoke();
  7. 根據返回值再到struts.xml檔案中 result便籤中匹配name屬性值,如果一樣就跳轉到配置的頁面中