亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

java語(yǔ)言

Java的Spring框架知識(shí)

時(shí)間:2024-08-19 12:53:41 java語(yǔ)言 我要投稿
  • 相關(guān)推薦

Java的Spring框架知識(shí)

  Spring是一個(gè)開(kāi)源框架,于2003年興起的一個(gè)輕量級(jí)的Java 開(kāi)發(fā)框架,下面我們來(lái)詳細(xì)了解一下Spring框架的基礎(chǔ)知識(shí)!

Java的Spring框架知識(shí)

  一. Spring框架的作用

  輕量:Spring是輕量級(jí)的,基本的版本大小為2MB

  控制反轉(zhuǎn):Spring通過(guò)控制反轉(zhuǎn)實(shí)現(xiàn)了松散耦合,對(duì)象們給出它們的依賴,而不是創(chuàng)建或查找依賴的對(duì)象們。

  面向切面的編程AOP:Spring支持面向切面的編程,并且把應(yīng)用業(yè)務(wù)邏輯和系統(tǒng)服務(wù)分開(kāi)。

  容器:Spring包含并管理應(yīng)用中對(duì)象的生命周期和配置

  MVC框架: Spring-MVC

  事務(wù)管理:Spring提供一個(gè)持續(xù)的事務(wù)管理接口,可以擴(kuò)展到上至本地事務(wù)下至全局事務(wù)JTA

  異常處理:Spring提供方便的API把具體技術(shù)相關(guān)的異常

  二. Spring的組成

  Spring由7個(gè)模塊組成:

  Spring Core: 核心容器提供 Spring 框架的基本功能。核心容器的主要組件是BeanFactory,它是工廠模式的實(shí)現(xiàn)。BeanFactory 使用控制反轉(zhuǎn) (IOC) 模式將應(yīng)用程序的配置和依賴性規(guī)范與實(shí)際的應(yīng)用程序代碼分開(kāi)。

  Spring 上下文:Spring 上下文是一個(gè)配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企業(yè)服務(wù),例如 JNDI、EJB、電子郵件、國(guó)際化、校驗(yàn)和調(diào)度功能。

  Spring AOP:通過(guò)配置管理特性,Spring AOP 模塊直接將面向方面的編程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何對(duì)象支持 AOP。Spring AOP 模塊為基于 Spring 的應(yīng)用程序中的對(duì)象提供了事務(wù)管理服務(wù)。通過(guò)使用 Spring AOP,不用依賴 EJB 組件,就可以將聲明性事務(wù)管理集成到應(yīng)用程序中。

  Spring DAO:JDBC DAO 抽象層提供了有意義的異常層次結(jié)構(gòu),可用該結(jié)構(gòu)來(lái)管理異常處理和不同數(shù)據(jù)庫(kù)供應(yīng)商拋出的錯(cuò)誤消息。異常層次結(jié)構(gòu)簡(jiǎn)化了錯(cuò)誤處理,并且極大地降低了需要編寫的異常代碼數(shù)量(例如打開(kāi)和關(guān)閉連接)。Spring DAO 的面向 JDBC 的異常遵從通用的 DAO 異常層次結(jié)構(gòu)。

  Spring ORM:Spring 框架插入了若干個(gè) ORM 框架,從而提供了 ORM 的對(duì)象關(guān)系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有這些都遵從 Spring 的通用事務(wù)和 DAO 異常層次結(jié)構(gòu)。

  Spring Web 模塊:Web 上下文模塊建立在應(yīng)用程序上下文模塊之上,為基于 Web 的應(yīng)用程序提供了上下文。所以,Spring 框架支持與 Jakarta Struts 的集成。Web 模塊還簡(jiǎn)化了處理多部分請(qǐng)求以及將請(qǐng)求參數(shù)綁定到域?qū)ο蟮墓ぷ鳌?/p>

  Spring MVC 框架:MVC 框架是一個(gè)全功能的構(gòu)建 Web 應(yīng)用程序的 MVC 實(shí)現(xiàn)。通過(guò)策略接口,MVC 框架變成為高度可配置的,MVC 容納了大量視圖技術(shù),其中包括 JSP、Velocity、Tiles、iText 和 POI。

  三. Spring容器

  Sping的容器可以分為兩種類型

  1. BeanFactory:(org.springframework.beans.factory.BeanFactory接口定義)是最簡(jiǎn)答的容器,提供了基本的DI支持。最常用的BeanFactory實(shí)現(xiàn)就是XmlBeanFactory類,它根據(jù)XML文件中的定義加載beans,該容器從XML文件讀取配置元數(shù)據(jù)并用它去創(chuàng)建一個(gè)完全配置的系統(tǒng)或應(yīng)用。

  2. ApplicationContext應(yīng)用上下文:(org.springframework.context.ApplicationContext)基于BeanFactory之上構(gòu)建,并提供面向應(yīng)用的服務(wù)。

  四. ApplicationContext通常的實(shí)現(xiàn)

  ClassPathXmlApplicationContext:從類路徑下的XML配置文件中加載上下文定義,把應(yīng)用上下文定義文件當(dāng)做類資源。

  FileSystemXmlApplicationContext:讀取文件系統(tǒng)下的XML配置文件并加載上下文定義。

  XmlWebApplicationContext:讀取Web應(yīng)用下的XML配置文件并裝載上下文定義。

  1 ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");

  五. IOC & DI

  Inversion of Control, 一般分為兩種類型:依賴注入DI(Dependency Injection)和依賴查找(Dependency Lookup).依賴注入應(yīng)用比較廣泛。

  Spring IOC扶著創(chuàng)建對(duì)象,管理對(duì)象(DI),裝配對(duì)象,配置對(duì)象,并且管理這些對(duì)象的整個(gè)生命周期。

  優(yōu)點(diǎn):把應(yīng)用的代碼量降到最低。容器測(cè)試,最小的代價(jià)和最小的侵入性使松散耦合得以實(shí)現(xiàn)。IOC容器支持加載服務(wù)時(shí)的餓漢式初始化和懶加載。

  DI依賴注入是IOC的一個(gè)方面,是個(gè)通常的概念,它有多種解釋。這概念是說(shuō)你不用床架對(duì)象,而只需要描述它如何被創(chuàng)建。你不在代碼里直接組裝你的組件和服務(wù),但是要在配置文件里描述組件需要哪些服務(wù),之后一個(gè)IOC容器輔助把他們組裝起來(lái)。

  IOC的注入方式:1. 構(gòu)造器依賴注入;2. Setter方法注入。

  六. 如何給spring容器提供配置元數(shù)據(jù)

  XML配置文件

  基于注解的配置

  基于Java的配置@Configuration, @Bean

  七. bean標(biāo)簽中的屬性:

  id

  name

  class

  init-method:Bean實(shí)例化后會(huì)立刻調(diào)用的方法

  destory-method:Bean從容器移除和銷毀前,會(huì)調(diào)用的方法

  factory-method:運(yùn)行我們調(diào)用一個(gè)指定的靜態(tài)方法,從而代替構(gòu)造方法來(lái)創(chuàng)建一個(gè)類的實(shí)例。

  scope:Bean的作用域,包括singleton(默認(rèn)),prototype(每次調(diào)用都創(chuàng)建一個(gè)實(shí)例), request,session, global-session(注意spring中的單例bean不是線程安全的)

  autowired:自動(dòng)裝配 byName, byType, constructor, autodetect(首先闡釋使用constructor自動(dòng)裝配,如果沒(méi)有發(fā)現(xiàn)與構(gòu)造器相匹配的Bean時(shí),Spring將嘗試使用byType自動(dòng)裝配)

  八. beans標(biāo)簽中相關(guān)屬性

  default-init-method

  default-destory-method

  default-autowire:默認(rèn)為none,應(yīng)用于Spring配置文件中的所有Bean,注意這里不是指Spring應(yīng)用上下文,因?yàn)槟憧梢远x多個(gè)配置文件。


【Java的Spring框架知識(shí)】相關(guān)文章:

講解Java的Spring框架中的AOP實(shí)現(xiàn)10-30

Java中的Spring入門實(shí)例09-15

關(guān)于java Spring整合Freemarker的詳細(xì)步驟06-23

java線程池框架解析09-11

java的三大主流框架10-29

什么是java線程池框架10-02

Java中如何獲取Spring中配置的bean09-14

Java面試-關(guān)于Spring面試題及答案06-24

java中spring的幾個(gè)重要類和接口09-10

java線程池框架是什么09-03