成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Spring:Spring相關知識介紹筆記

開發 前端
Spring屬于開源框架,Spring是于2003年流行起來的一個輕量級的Java開發基礎框架,它是為了解決企業應用開發的復雜性而提供的解決方案。

[[430677]]

一、Srping概念

Spring屬于開源框架,Spring是于2003年流行起來的一個輕量級的Java開發基礎框架,它是為了解決企業應用開發的復雜性而提供的解決方案。該框架的主要優勢之一就是其實現分層架構,分層架構允許使用者自由選擇使用哪些組件,Spring同時為J2EE應用程序開發提供集成的框架。Spring使用基本的JavaBean來完成以前只能由EJB完成的事情。Spring具有簡單性、可測試性和松耦合的特點。Spring的核心技術是控制反轉(IoC)和面向切面(AOP)。

二、Spring原理

2.1 控制反轉(Inversion of control)(IOC)

利用java的反射特性讓一個對象的創建可以不用new進行實例化,可以自動的生產,這其實就是利用java的反射特性,反射其實就是在運行時動態的去創建、調用對象,Spring就是在運行時,跟xml Spring的配置文件來動態的創建對象和調用對象里的方法。就是將對象,以及對象之間的引用關系,交給Spring容器統一管理。

2.2 面向切面編程(Aspect-Oriented Programming)(AOP)

AOP以OOP面向對象編程為前提和基礎,主要用于將共通邏輯(日志記錄,性能統計,事務處理,異常處理等)從普通的代碼邏輯中分離出來,從而降低業務邏輯各部分的耦合度。

三、Spring框架結構

Spring框架主要有以下7個模塊構成:

  • Spring AOP:面向切面編程思想,也提供了事務管理能力。
  • Spring ORM:提供了對Hibernate、myBatis等ORM框架的支持。
  • Spring DAO:提供了 對Data Access Object模式和JDBC的支持。實現業務邏輯與數據庫訪問代碼分離,從而降低代碼耦合度。
  • Spring Web:提供了Servlet監聽器的Context和Web應用的上下文。
  • Spring Context:提供了Spring上下文環境。
  • Spring MVC:提供了MVC設計模式的實現。
  • Spring core:提供了Spring框架基本功能(IOC功能),如BeanFactory以工廠模式創建所需對象、通過讀取xml文件實例化對象、管理組件生命周期等等。

 

 

 

四、Srping生命周期

 

 

 

 

1、實例化Bean也就是我們經常使用的new方法;

2、按照Spring上下文對實例化的Bean進行配置(IOC注入);

3、Bean實現BeanNameAware接口,會調用它實現的setBeanName(String)方法,傳遞的就是Spring配置文件中Bean的id值

4、Bean已經實現BeanFactoryAware接口,會調用它實現的setBeanFactory(setBeanFactory(BeanFactory)傳遞的是Spring工廠自身(可以用這個方式來獲取其它Bean,只需在Spring配置文件中配置一個普通的Bean就可以);

5、Bean已經實現ApplicationContextAware接口,會調用setApplicationContext(ApplicationContext)方法,傳入Spring上下文;

6、Bean關聯了BeanPostProcessor接口,將會調用postProcessBeforeInitialization(Object obj, String s)方法,BeanPostProcessor經常被作為對Bean內容的更改,并且由于這個是在Bean初始化結束時調用那個的方法,也可以被應用于內存或緩存技術;

7、Bean在Spring配置文件中配置了init-method屬性會自動調用其配置的初始化方法。

8、Bean關聯了BeanPostProcessor接口,會調用postProcessAfterInitialization(Object obj, String s)方法;說明:以上工作完成以后就可以應用這個Bean了,那這個Bean屬于Singleton的,所以一般情況下我們調用同一個id的Bean會是在內容地址相同的實例,當然在Spring配置文件中也可以配置非Singleton。

9、當Bean不再需要時,會經過清理階段,如果Bean實現了DisposableBean這個接口,會調用那個其實現的destroy()方法;

10、最后,如果這個Bean的Spring配置中配置了destroy-method屬性,會自動調用其配置的銷毀方法。

 

五、Srping有什么優勢?

5.1、非侵入式設計

Spring屬于非侵入式(non-invasive)框架,它使應用程序代碼對框架的依賴程度最小。

5.2、 方便解耦、簡化開發

Spring就是一個大工廠,可以將所有對象的創建和依賴關系的維護工作都交給Spring容器統一管理,大大降低了組件之間的耦合性。

5.3、支持AOP

Spring框架提供了對AOP的支持,它允許將一些通用任務,如安全、事務、日志等進行統一處理,從而大大減少了代碼量、提高了代碼的復用率。

5.4、支持聲明式事務處理

只需要通過配置就可以完成對事務的管理,而無需手動編程實現事務的邏輯。

5.5、便于系統測試

Spring提供了對Junit4的支持,可以通過注解方便的進行系統測試。

5.6、便于集成各種優秀框架

Spring不排斥各種優秀的開源框架,其內部提供了對各種優秀框架(如:Struts、Hibernate、MyBatis、Quartz等)的直接支持。

5.7、大大降低Java EE API的使用難度

 

Spring對Java EE開發中非常不友好的一些API(JDBC、JavaMail等),都提供了很好封裝,使這些API應用難度會大大降低。

 

責任編輯:姜華 來源: IT技術分享社區
相關推薦

2009-06-17 17:59:01

介紹Spring

2022-10-14 07:07:46

架構

2009-09-07 16:20:35

CCNA認證培訓

2009-06-18 10:27:42

Spring Time

2009-06-18 13:18:04

Spring IDE

2009-06-19 14:49:43

Spring框架

2021-02-06 23:03:58

SQLServer數據庫變量

2022-01-26 06:59:46

SFTP操作系統加密算法

2009-06-19 18:38:01

Spring

2009-06-22 10:41:34

Spring.AOP

2022-11-25 07:59:02

SpringJava

2009-07-20 10:42:55

Spring JDBC

2009-06-18 09:47:14

Spring的核心

2016-05-30 17:31:34

Spring框架

2021-04-02 07:46:52

SQL Server數據庫知識筆記

2009-11-17 17:07:01

PHP關聯數組

2009-06-30 16:57:42

Spring事務管理

2021-05-17 16:24:58

Spring Clou

2009-06-17 14:57:11

Spring事務管理

2011-02-23 10:20:45

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久国产一区 | 亚洲性人人天天夜夜摸 | 黄色大片在线播放 | 91www在线观看| 男女羞羞视频免费 | 特级毛片www | 亚洲视频欧美视频 | 久久久国产一区二区三区四区小说 | 亚洲人成在线观看 | 国产精品日韩欧美一区二区 | 成人在线精品 | 久久亚洲综合 | 91在线精品秘密一区二区 | 免费久久久 | 久久精品16 | 欧美日韩在线不卡 | 国产精品一二三区在线观看 | 免费在线一区二区 | 超碰成人在线观看 | 国产蜜臀97一区二区三区 | 自拍偷拍中文字幕 | 日韩中文字幕在线视频 | 羞羞视频在线观看 | 久久中文字幕一区 | 国产精品九九 | 一区二区在线免费观看视频 | 99热在线免费| 91精品国产91久久久久游泳池 | 日一区二区| 中文字幕 国产精品 | 亚洲色图综合网 | 高清视频一区二区三区 | 欧美一级片在线播放 | 日日噜噜噜夜夜爽爽狠狠视频97 | 一级黄色生活视频 | 国产欧美三区 | 久久性色| 日韩在线免费播放 | 天堂国产| 久久精品欧美一区二区三区不卡 | 高清国产一区二区 |