SSM和SSH框架对比
SSM和SSH框架對比
1. SSH:Spring+Struts2+Hibernate SSM:Spring+SpringMVC+MyBaitis
? ?兩個框架都是IoC容器+MVC框架+ORM框架。IoC的意思是控制反轉,意思是把創建和查找依賴對象的控制權交給容器而不是自己實例化對象;MVC框架采用MVC分層,模型層處理數據邏輯,通常是模型對象在數據庫存取數據,視圖層處理數據顯示,控制器層處理用戶交互,通常從視圖讀取數據,控制用戶輸入,并向模型發送數據;ORM框架即對象-關系映射模型,在數據庫表和持久化對象間進行映射,這樣在操作數據庫時只需要對對象操作。
?
2. Spring
? ?在IoC容器方面,SSH和SSM都是使用Spring。Spring是輕量級的IoC和AOP容器。IoC容器是Spring的核心,負責創建對象,管理對象,裝配對象,配置對象,并且管理這些對象的整個生命周期。管理對象動態向某個對象提供其他對象,通過依賴注入來實現,Spring有三種注入方式:接口注入、Set注入和構造注入。Spring AOP即面向切面編程,可以用在日志和事務管理等方面。
?
3. Struts2與SpringMVC
? ?MVC整合框架兩者分別使用的是Struts2和SpringMVC。兩者的區別:1.Struts2是類級別的攔截, 一個類對應一個request上下文,SpringMVC是方法級別的攔截,一個方法對應一個request上下文,因此容易實現restful API;2.Struts2是多例的,每次請求都創建一個Action,類屬性被方法共享,而SpringMVC是單例的,只有一個實例,方法之間變量不共享;3.Struts2的核心控制器是Filter,SpringMVC的核心控制器是Servlet;4.攔截器方面,Struts2有自己的interceptor機制,SpringMVC用的是獨立的AOP方式;5.SpringMVC是Spring的一個模塊,項目管理和安全性比Struts2好,配置文件少,并且集成了Ajax,處理ajax請求,直接通過返回數據,方法中使用注解@ResponseBody,能自動將對象轉換為JSON數據。
?
4. Hibernate與MyBaitis
? ?ORM框架分別用的是Hibernate和MyBaitis。MyBatis的sql語句是手動編寫的,可以進行更為細致的SQL優化,可以減少查詢字段,具有高度靈活,可優化,易維護的特點。但需要維護SQL和結果映射,工作量大。Hibernate面向對象查詢,以對象化的思維操作數據庫,hql與具體的數據庫無關,移植性更好。Hibernate無需編寫SQL,映射的規則也可以由IDE生成,提高了開發效率,還提供了緩存、日志、級聯等強大功能。但是對于多表關聯復雜SQL、數據系統權限限制、根據條件編寫SQL、存儲過程等十分不便,性能難以通過SQL優化。
總結
以上是生活随笔為你收集整理的SSM和SSH框架对比的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: arm我的世界linux,Minecra
- 下一篇: 关于暗色调整