Spring基礎、IOC、SpringMVC-創(chuàng)新互聯

前言

Spring基礎、IOC、SpringMVC
博客地址:芒果橙的個人博客 【http://mangocheng.com】

成都創(chuàng)新互聯公司是一家集網站建設,城子河企業(yè)網站建設,城子河品牌網站建設,網站定制,城子河網站建設報價,網絡營銷,網絡優(yōu)化,城子河網站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯網需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網站。
一、常見問題 1. 基礎信息
  • 描述:輕量級開發(fā)框架,旨在提高開發(fā)效率及系統(tǒng)的可維護性。

  • 模塊:核心容器、數據訪問/集成、Web、AOP、工具、消息、測試模塊

  • 特征

    • 核心技術:DI、AOP、events、資源…
    • 數據訪問
2. RestController vs Controller
  • 返回

    • Controller 返回一個頁面(不加@ResponseBody)

    • RestController 返回對象:JSON或XML數據,對象數據直接寫入HTTP響應,屬于RESTful Web服務(前后端分離)

3. Spring IoC & AOP
  • IoC:Inverse of Control ,控制反轉。[依賴倒置原則][https://www.zhihu.com/question/23277575/answer/169698662]
    • 一種設計思想,將原本在程序中手動創(chuàng)建對象的控制權交由Spring框架來管理。IoC容器是Spring用來實現IOC的載體,Map結構。
    • 類似工廠,當需要創(chuàng)建一個對象時,只需配置好配置文件/注解即可
  • 實現方式
    • DI
  • AOP:Aspect Oriented Programming,面向切面編程。
    • 將與業(yè)務無關,卻為業(yè)務模塊所共同調用的邏輯或責任(例如事務處理、日志管理、權限控制等)封裝起來,便于減少系統(tǒng)的重復代碼,降低耦合度,提高可拓展性和可維護性。
    • 基于動態(tài)代理
  • JNDI:Java Naming and Directory Interface,Java命名和目錄接口)
    • SUN公司提供的一種標準的Java命名系統(tǒng)接口
    • JNDI提供統(tǒng)一的客戶端API,通過不同的訪問提供者接口JNDI服務供應接口(SPI)的實現,由管理者將JNDI API映射為特定的命名服務和目錄系統(tǒng),使得Java應用程序可以和這些命名服務和目錄服務之間進行交互。
4. Spring單例與線程安全
  • @Component和@Bean

    • @Component 作用于類,@Bean作用于方法
  • 將一個類聲明為Spring的bean的注解

    • @Component:通用
    • @Repository:持久層,DAO
    • @Service:服務層
    • @Controller:Spring MVC控制層
  • 在類中注入屬性對象的注解

    • Autowired
    • Resource
    • Qualifier
5. Spring MVC
  1. Model1時代:JSP為主體
  2. Model2時代:Java Bean(Model)+JSP(View)+Servlet(Controller)–JavaWeb MVC
  3. Spring MVC:對客戶端的請求通過后端分層調用方式,將視圖數據返回客戶端
    1. 瀏覽器發(fā)送請求到后端DispatcherServlet,由Servlet找到對應的Handler類(控制層)
    2. Handler類調用處理器處理相應邏輯,返回ModelAndView(模型視圖對象)
    3. ViewResolver(視圖解析器)找到View,DisapterServlet將Model傳給View,并返回給瀏覽器進行渲染
二、IOC

獲得依賴對象的過程被反轉了

1.DI:dependency Injection(依賴注入)
  • 描述:由IOC容器在運行期間,動態(tài)地將某種依賴關系注入到對象之中。即將實例變量傳入到一個對象中去。
  • 理解
    • 找IOC容器==>容器返回對象==>使用對象
    • 房屋中介(找中介==>中介介紹房子==>租房入住)
2.Bean配置
  • 描述:在Spring中,每一個對象都是一個bean

  • 使用方式

    • 注解

    • xml配置

      public class UserServiceImpl implements UserService{private UserDAO userDAO;
          
          // 構造注入
          public UserServiceImpl(UserDAO userDAO){this.userDAO = userDAO;
          }
          
          // 設值注入
          public void setUserDAO(UserDAO userDAO){this.userDAO = userDAO;
          }
          
      }
  • 配置項

    • Id
    • Class
    • scope
  • 作用域

    • singleton:單例,指一個Bean容器中只能存在一份,默認

    • prototype:每次請求(每次使用)創(chuàng)建新的實例,destroy方式不生效

    • request:每次http請求創(chuàng)建一個實例且僅在當前request內有效

    • session:同上,每次http請求創(chuàng)建,當前session內有效

    • global session:基于portlet的web中有效,如果在web中,同session

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

網頁標題:Spring基礎、IOC、SpringMVC-創(chuàng)新互聯
本文網址:http://muchs.cn/article26/dcpccg.html

成都網站建設公司_創(chuàng)新互聯,為您提供定制網站App開發(fā)、網站導航營銷型網站建設、網站改版、ChatGPT

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

外貿網站制作