今天根據張冰2009struts的視頻學習struts2。由于他所用的struts2是2.0.11的版本,而我所用的是2.1.6的版本,居然在學習過程中發現有些不同。他使用的時候是導入5個主要的包,而對與2.1.6的版本卻要導入7個包,比原先要多導入2個包,這7個包分別為:commons-logging-1.0.4、freemarker-2.3.13、ognl-2.6.11、struts2-core-2.1.6、xwork-2.1.2、commons-fileupload-1.2.1、commons-io-1.3.2。當然也可以將所有的包都導進來。
Struts2處理用戶輸入信息的方法:
(1) 利用action的屬性接收信息:建一個action類,在類中設置相關屬性,并設置其set/get方法。
(2) 利用領域對象接收信息:可以將相關屬性放置到一個POJO(VO)類中,然后在action類中設置一個private Object object = null; 同時設置其set/get方法。
還需要在前臺設計相關屬性為object.屬性,就是通知action如何獲取其屬性。
(3) 使用ModelDriven模式接收信息:利用action類+POJO類,然后實現ModelDriven接口中的getModel()方法。POJO類應用private Object object = new Object();實現。