成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Spring基礎(chǔ)、IOC、SpringMVC-創(chuàng)新互聯(lián)

前言

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

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

  • 模塊:核心容器、數(shù)據(jù)訪問(wèn)/集成、Web、AOP、工具、消息、測(cè)試模塊

  • 特征

    • 核心技術(shù):DI、AOP、events、資源…
    • 數(shù)據(jù)訪問(wèn)
2. RestController vs Controller
  • 返回

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

    • RestController 返回對(duì)象:JSON或XML數(shù)據(jù),對(duì)象數(shù)據(jù)直接寫入HTTP響應(yīng),屬于RESTful Web服務(wù)(前后端分離)

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

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

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

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

獲得依賴對(duì)象的過(guò)程被反轉(zhuǎn)了

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

  • 使用方式

    • 注解

    • xml配置

      public class UserServiceImpl implements UserService{private UserDAO userDAO;
          
          // 構(gòu)造注入
          public UserServiceImpl(UserDAO userDAO){this.userDAO = userDAO;
          }
          
          // 設(shè)值注入
          public void setUserDAO(UserDAO userDAO){this.userDAO = userDAO;
          }
          
      }
  • 配置項(xiàng)

    • Id
    • Class
    • scope
  • 作用域

    • singleton:?jiǎn)卫?,指一個(gè)Bean容器中只能存在一份,默認(rèn)

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

    • request:每次http請(qǐng)求創(chuàng)建一個(gè)實(shí)例且僅在當(dāng)前request內(nèi)有效

    • session:同上,每次http請(qǐng)求創(chuàng)建,當(dāng)前session內(nèi)有效

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

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

網(wǎng)頁(yè)標(biāo)題:Spring基礎(chǔ)、IOC、SpringMVC-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://jinyejixie.com/article26/dcpccg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站App開(kāi)發(fā)、網(wǎng)站導(dǎo)航營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站改版ChatGPT

廣告

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

外貿(mào)網(wǎng)站制作
麻阳| 开化县| 南乐县| 尼勒克县| 东兰县| 达州市| 聂拉木县| 博白县| 湛江市| 建宁县| 右玉县| 宣威市| 辽源市| 资阳市| 兴和县| 合作市| 安阳市| 灵台县| 平和县| 白朗县| 苏尼特左旗| 桃园县| 佳木斯市| 墨玉县| 鹤岗市| 池州市| 梁平县| 福海县| 承德县| 和龙市| 乳源| 罗平县| 澄迈县| 随州市| 万宁市| 隆昌县| 定陶县| 五常市| 寻甸| 鄯善县| 延津县|