網(wǎng)課學(xué)習(xí)ssm筆記-創(chuàng)新互聯(lián)

SSM框架學(xué)習(xí) spring的系統(tǒng)架構(gòu)圖

在這里插入圖片描述
data access:數(shù)據(jù)訪問
data integration:數(shù)據(jù)集成
transactions:事務(wù)

企業(yè)建站必須是能夠以充分展現(xiàn)企業(yè)形象為主要目的,是企業(yè)文化與產(chǎn)品對(duì)外擴(kuò)展宣傳的重要窗口,一個(gè)合格的網(wǎng)站不僅僅能為公司帶來巨大的互聯(lián)網(wǎng)上的收集和信息發(fā)布平臺(tái),成都創(chuàng)新互聯(lián)公司面向各種領(lǐng)域:成都軟裝設(shè)計(jì)網(wǎng)站設(shè)計(jì)成都全網(wǎng)營(yíng)銷解決方案、網(wǎng)站設(shè)計(jì)等建站排名服務(wù)。

AOP:Aspect Oriented Programming 面向切面編程
Aspects:切面

Core container:核心容器

spring核心概念

1.IoC(Inversion of Control)控制反轉(zhuǎn)
使用對(duì)象時(shí)由主動(dòng)new產(chǎn)生對(duì)象轉(zhuǎn)換為由外部提供對(duì)象,這個(gè)過程中對(duì)象創(chuàng)建控制權(quán)由程序轉(zhuǎn)給外部,這個(gè)思想叫控制反轉(zhuǎn)。

2.spring將這個(gè)思想實(shí)現(xiàn)了
spring提供的IoC容器就是控制反轉(zhuǎn)思想中的外部
IoC容器負(fù)責(zé)創(chuàng)建、初始化對(duì)象,而被創(chuàng)建或被管理的對(duì)象在IoC容器里被稱為Bean

3.DI(dependency injection)依賴注入
在容器中bean和bean之間建立依賴關(guān)系的過程叫依賴注入

上述三點(diǎn)的目的在于解耦
IoC管理bean
給IoC容器內(nèi)有依賴關(guān)系的bean綁定

IoC實(shí)例
  • 管理什么? service和dao
    • 使用spring導(dǎo)入哪些坐標(biāo)? pom.xml
      • 首先要更新依賴,然后再刷新maven
org.springframework  spring-context5.3.0
  • 怎么將被管理對(duì)象的告訴IoC容器? 配置
    • 在resource下面創(chuàng)建applicationContext.xml開始配置
  • 怎么獲取IoC容器? 接口
//獲取ioc容器
        ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
  • 怎么獲取bean? 接口方法
//獲取bean
        //BookDao bookDao = (BookDao) ctx.getBean("bookDao");
        BookService bookService = (BookService) ctx.getBean("bookService");
        //bookDao.save();
        bookService.save();

至此一個(gè)簡(jiǎn)單的入門IoC實(shí)例就完成了,但是只是這種程度還是沒有做到解耦這個(gè)目標(biāo)的。

DI入門案例
  • 基于IoC管理bean

  • service中new的Dao對(duì)象不應(yīng)該保存

  • 給service提供所需要的Dao對(duì)象

private BookDao bookDao;
public void setBookDao(BookDao bookDao) {
        this.bookDao = bookDao;
    }
  • 描述Dao和Service的關(guān)系
bean的基本配置
  • bean的別名配置
類型描述
名稱name
類型屬性
所屬bean
作用給bean起別名,多個(gè)別名用,;以及空格隔開

bean無論是通過id還是name獲取如果無法獲取到會(huì)拋出異常
NoSucnBeanDefinitionException:No bean named ‘********’ available

  • bean的作用范圍
類型描述
名稱scope
類型屬性
所屬bean
作用定義bean的作用范圍,其中singleton表示單例(默認(rèn))而prototype表示非單例

適合交給容器管理的bean
表現(xiàn)層對(duì)象
業(yè)務(wù)層對(duì)象
數(shù)據(jù)層對(duì)象
工具類
不適合交給容器管理的bean
封裝實(shí)體的域?qū)ο?/p>bean的實(shí)例化

  • 構(gòu)造方法實(shí)例化
    無參的構(gòu)造方法如果不存在,則會(huì)拋出異常BeanCreationException
  • 靜態(tài)工廠實(shí)例化
    factory-method
  • 實(shí)例工廠初始化bean
    先配置一個(gè)工廠bean
    再用factory-bean指向工廠bean
  • FactoryBean實(shí)例化
bean的生命周期
  • 初始化容器
    創(chuàng)建對(duì)象
    執(zhí)行構(gòu)造方法
    執(zhí)行屬性注入
    執(zhí)行bean初始化方法
  • 使用bean
    業(yè)務(wù)操作
  • 關(guān)閉容器
    銷毀bean

配置初始化和銷毀
init-method
destory-method
如果想看到destory-method得先關(guān)閉容器否則看不到
close()暴力關(guān)閉容器
RegisterShutDownHook退出虛擬機(jī)之前關(guān)閉容器

依賴注入
  • setter注入
    • 簡(jiǎn)單類型
      1.提供方法
      2.配置
      用property標(biāo)簽value屬性注入簡(jiǎn)單數(shù)據(jù)類型
    • 引用類型
      1.提供方法
      2.用property標(biāo)簽name配置哪一個(gè),ref參考哪一個(gè)bean
  • 構(gòu)造方法
    • 簡(jiǎn)單類型
      constructor-arg標(biāo)簽name配置哪一個(gè),value注入類型
    • 引用類型
      constructor-arg標(biāo)簽name配置哪一個(gè),ref參考哪一個(gè)bean

你是否還在尋找穩(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)課學(xué)習(xí)ssm筆記-創(chuàng)新互聯(lián)
文章分享:http://muchs.cn/article16/eiogg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、營(yíng)銷型網(wǎng)站建設(shè)ChatGPT、電子商務(wù)、品牌網(wǎng)站制作、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(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í)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)