日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > Spring---簡介

Spring---簡介

來源:程序員人生   發布時間:2015-08-22 09:49:18 閱讀次數:3954次

Spring是1個開源框架,Spring是于2003 年興起的1個輕量級的Java 開發框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中論述的部份理念和原型衍生而來。它是為了解決企業利用開發的復雜性而創建的。 spring為企業利用的開發提供了1個輕量級的解決方案。該解決方案包括:基于依賴注入的核心機制、基于AOP的聲明式事務管理、與多種持久層技術的整合,和優秀的web mvc框架等。

1 spring構架的組成結構圖:

                                   



Core Container(核心容器)包括有Core、Beans、Context和Expression Language模塊。 

Core和Beans模塊:框架的基礎部份,提供IoC(反轉控制)和依賴注入特性。這里的基礎概念是BeanFactory,它提供對Factory模式的經典實現來消除對程序性單例模式的需要,并真實的允許你從程序邏輯中分離出依賴關系和配置。

Context模塊:構建于Core和Beans模塊基礎之上,提供了1種類似于JNDI注冊器的框架勢的對象訪問方法。Context模塊繼承了Beans的特性,然后添加了對國際化(例如資源綁定)、事件傳播、資源加載和對Context的透明創建的支持。Context模塊同時也支持J2EE的1些特性,例如EJB、JMX和基礎的遠程處理。ApplicationContext接口是Context模塊的關鍵。

Expression Language模塊:Expression Language模塊提供了1個強大的表達式語言用于在運行時查詢和操縱對象。它是JSP2.1規范中定義的unifed expression language的1個擴大。該語言支持設置/獲得屬性的值、屬性的分配、方法的調用、訪問數組上下文(accessiong the context of arrays)、容器和索引器、邏輯和算術運算符、命名變量和從Spring的IoC容器中根據名稱檢索對象。它也支持list投影、選擇和1般的list聚合。


JDBC模塊:該模塊提供了1個JDBC抽象層,它可以消除冗雜的JDBC編碼和解析數據庫廠商獨有的毛病代碼。

 ORM模塊:該模塊為流行的對象-關系映照API――JPA、JDO、Hibernate、iBatis等提供了1個交互層。利用ORM封裝包,可以混合使用所有Spring提供的特性進行O/R映照。如前邊提到的簡單聲明性事物管理。


2使用Spring管理Bean

spring核心容器的理論:spring核心容器就是1個超級大工廠,所有的對象(包括數據源等基礎性資源)都會被當做spring核心容器管理的對象----spring把容器中的1切對象統稱為Bean。只要是1個java類,spring就能夠管理該java類,并將它當做Bean處理。<spring容器怎樣知道管理哪些Bean,XML配置文件(也可用注解),spring使用xml配置文件來管理容器中bean,spring對xml配置文件的文件名沒有任何要求,可以隨便定義。


<bean id="person" class="org.crazyit.app.service.Person"> <property name="axe" ref="axe"/> </bean> <bean id="axe" class="org.crazylit.app.service.Axe"/> <bean id="win" class="javax.swing.JFrame"/> <bean id="date" class="java.util.Date"/></span></span>


配置文件中的<bean>元素默許以反射方式來調用該類無參數的構造器。spring框架通過反射根據<bean>元素的class屬性指定的類名創建了1個java對象,并以<bean>元素的id屬性的值為key,將該對象放入spring容器中---這個java對象就成了spring容器中bean。在spring配置文件中配置bean時,class屬性的值必須是bean實現類的完全類名(必須帶包名),不能是接口、抽象類,否則沒法使用spring沒法使用反射創建該類的實例。

       上面配置文件中還包括1個<property>子元素,<property>子元素,<property>子元素通經常使用于作為<bean>元素的子元素,它驅動spring在底層以反射履行1次setter方法。其中<property>的name屬性值決定履行那個setter方法,而value或ref決定履行setter方法的傳入參數。spring框架只要看到<property>子元素,就會在底層以反射方式履行1次setter。

       1 如果傳入參數是基本類型及其包裝類、string等類型,則使用value屬性指定傳入參數。

       2 如果以容器中其他bean作為傳入參數,則使用ref屬性指定傳入參數。

<bean id="person" class="org.crazyit.app.service.Person"></span>

Spring框架解析該<bean>元素后將可以得到兩個字符串,其中idStr的值為"date",classStr的值為“java.util.Date”。

3 spring的優點

1 低侵入式設計,代碼的污染極地。
2 獨立于各種利用服務器,基于spring框架的利用。
3 它的IoC容器下降了,業務對象體替換的復雜性,提高了組件之間的解耦。
4 spirng的AOP支持允許將1些通用任務如安全、事務、日志等進行集中式處理,從而提高了更好的復用。
5 spring的ORM到DAO提供了與第3方持久層框架的良好整合,并簡化了底層的數據庫訪問。
6 spring的高度開放性,其實不強迫利用完全依賴于spring,開發者可自由選用spring框架的部份或全部。


4總結:

   spring就是1個容器,可以管理任何的java類



生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 中国极品少妇xxxx做受 | 国产精品久久久久久久久久久久久久 | 国产视频二区在线 | 精品国产乱码久久久久久图片 | 久久久国产精品一区 | 亚洲精品视频免费 | 色综合999 | 亚洲国产精品网站 | 福利视频网址 | 国产精品不卡视频 | 99免费精品 | 色姑娘粽合 | 99seav| 欧美中文在线观看 | 高清不卡一区 | 久久精品不卡 | 在线观看中文字幕 | 成人欧美一区二区三区黑人孕妇 | 日韩一级视频 | av天天干 | 91成人入口 | 欧美激情在线播放 | 欧美怡红院视频一区二区三区 | 九色精品| 成人一二三区 | 亚洲精品国产精品乱码 | 国产精品久久久久久久久久小说 | 欧美在线视频播放 | 日韩大片| 性欧美xxxxporn | 三级三级久久三级久久18 | 91精品久久久久久久久久 | 精品性高朝久久久久久久 | 91黄色片| 中文字幕一区二区三区中文字幕 | 精品国产91久久久久久 | 国产中文字幕在线观看 | 精品免费| 最新av电影网站 | 欧美最猛黑人xxxx黑人猛叫黄 | 日本视频网 |