##所用到的框架##
Hibernate、Struts2
##整個過程##
1、通過Hibernate的逆向工程生成數據庫表的bean映射文件
2、新建包,形成基本架構
3、Dao的實現類
4、Service的實現類調用Dao,把數據封裝成JSONArray數據返回給Aciton
5、Action帶哦用Service,在struts.xml配置result,類型爲json
##遇到的問題##
1、Hibernate
a.找不到資源文件
解決辦法是hibernate.cfg.xml裏的mapping,刪除逆向生成的hibernate.cfg.xml裏的下圖部分
b.報錯說沒用映射,可能是在初始化SessionFactory的時候沒有把bean加到addClass裏面
c.由於要用到給sql語句的設置參數(查詢條件)要session.createSQLQuery(sql)方法,session.createQuery(sql)無法設置參數,但是session.createSQLQuery(sql)返回query得到的List是List<Object>而不是目標bean的List(List<bean>),需要在獲取結果錢使用query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP)
2、Json
要把得到的List轉換爲Json格式的數據傳遞出去,需要把List轉爲Json格式,List對應的Json格式是JSONArray而不是JSONObject,在配置Action時要配置result類型爲type=“json”,配置如下
傳遞出去的格式爲
配置時要注意幾點
①要設置root爲你要傳輸的屬性名稱,不然會多出一個key,如下圖
②要用exclude(不知道爲什麼用include就會沒數據)
aciton傳遞json的配置到http://blog.csdn.net/itdada/article/details/21344985去看