maven 多模塊項目集成SSM框架

https://www.cnblogs.com/best/p/9933072.html
http://www.itdecent.cn/p/83385852f711

這里需要再增加對java EE的了解
JavaEE體系結構包括四層,從上到下分別是應用層、Web層、業(yè)務層、持久層。Struts和SpringMVC是Web層的框架,Spring是業(yè)務層的框架,Hibernate和MyBatis是持久層的框架。


image.png
  1. 用戶發(fā)送請求至前端控制器DispatcherServlet
  2. DispatcherServlet收到請求調(diào)用HandlerMapping處理器映射器。
  3. 處理器映射器找到具體的處理器,生成處理器對象及處理器攔截器(如果有則生成)一并返回給DispatcherServlet。
  4. DispatcherServlet調(diào)用HandlerAdapter處理器適配器
  5. HandlerAdapter經(jīng)過適配調(diào)用具體的處理器(Controller,也叫后端控制器)。
  6. Controller執(zhí)行完成返回ModelAndView
  7. HandlerAdapter將controller執(zhí)行結果ModelAndView返回給DispatcherServlet
  8. DispatcherServlet將ModelAndView傳給ViewReslover視圖解析器
  9. ViewReslover解析后返回具體View
  10. DispatcherServlet根據(jù)View進行渲染視圖(即將模型數(shù)據(jù)填充至視圖中)。
  11. DispatcherServlet響應用戶

所以SpringMVC:它用于web層,相當于controller(等價于傳統(tǒng)的servlet和struts的action),用來處理用戶請求。舉個例子,用戶在地址欄輸入http://網(wǎng)站域名/login,那么springmvc就會攔截到這個請求,并且調(diào)用controller層中相應的方法,(中間可能包含驗證用戶名和密碼的業(yè)務邏輯,以及查詢數(shù)據(jù)庫操作,但這些都不是springmvc的職責),最終把結果返回給用戶,并且返回相應的頁面(當然也可以只反饋josn/xml等格式數(shù)據(jù))。springmvc就是做前面和后面過程的活,與用戶打交道??!

【備注】以上是ssm框架的運作流程,其中可以看出一個IOC的概念:
IOD:控制反轉(zhuǎn),將對象的創(chuàng)建過程交給容器,讓容器管理對象的生命周期如創(chuàng)建,初始化,銷毀等。從第二步可以看到,整個系統(tǒng)將controller的生成和銷毀都交給了handlerMapper。

【疑問?】早前,我們也會將controller全部配置在web.xml中,controller也是自動生成的?

  • Spring的配置文件有哪些內(nèi)容?
    ? 開啟事務注解驅(qū)動
    ? 事務管理器
    ? 開啟注解功能,并配置掃描包
    ? 配置數(shù)據(jù)源
    ? 配置SQL會話工廠、別名、映射文件
    ? 不用編寫DAO層的實現(xiàn)類(代理模式)

  • Spring的注解
    ? @Controller
    ? @Service
    ? @Component
    ? @RequestMapping
    ? @Resource、@Autowired
    ? @ResponseBody
    ? @Transactional

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容