Spring(一):Spring概念、基本例子入門

fan_rockrock發表於2016-07-04

spring學習地址:http://edu.51cto.com/lesson/id-36998.html


一、什麼是Spring

Spring是分層的JavaSE/EE full-stack(一站式)輕量級開源框架

分層:

         * SUN提供的EE的三層結構:web層、業務層、資料訪問層(持久層,整合層)

         * Struts2是web層基於MVC設計模式框架.

         * Hibernate是持久的一個ORM的框架.

一站式:

        Spring框架有對三層的每層解決方案:

                      * web層:Spring MVC.

                      * 業務層:Spring的Bean管理.

                      * 持久層:JDBC Template 


二、Spring核心概念    

IOC(Inverse of Control 反轉控制):將物件的建立權,交由Spring完成.

AOP (Aspect Oriented Programming面向切面程式設計) :是物件導向的功能延伸.不是替換物件導向,是用來解決OO中一些問題.


三、Spring優勢

方便解耦,簡化開發

            * Spring就是一個大工廠,可以將所有物件建立和依賴關係維護,交給Spring管理

AOP程式設計的支援

            * Spring提供面向切面程式設計,可以方便的實現對程式進行許可權攔截、執行監控等功能

宣告式事務的支援

            * 只需要通過配置就可以完成對事務的管理,而無需手動程式設計

方便程式的測試

            * Spring對Junit4支援,可以通過註解方便的測試Spring程式

方便整合各種優秀框架

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

降低JavaEEAPI的使用難度

            * Spring 對JavaEE開發中非常難用的一些API(JDBC、JavaMail、遠端呼叫等),都提供了封裝,使這些API應用難度大大降低


四、基本例子入門


步驟:

1、匯入Spring開發包和依賴包

spring-framework-3.2.0.RELEASE-dist.zip                ---Spring開發包

           * docs       :spring框架api和規範

           * libs       :spring開發的jar包

           * schema     :XML的約束文件.

spring-framework-3.0.2.RELEASE-dependencies.zip        ---Spring開發中的依賴包

建立web工程匯入需要的包:

spring-beans-3.2.0.RELEASE.jar

spring-context-3.2.0.RELEASE.jar

spring-core-3.2.0.RELEASE.jar

spring-expression-3.2.0.RELEASE.jar

開發的日誌記錄的包(在依賴包之中):

com.springsource.org.apache.commons.logging-1.1.1.jar      --- 用於整合其他的日誌的包(類似Hibernate中slf4j)

com.springsource.org.apache.log4j-1.2.15.jar

2、建立spring的配置檔案

配置Spring核心配置檔案,將HelloService的建立交給容器處理



3、通過Spring容器獲取HelloService物件


ApplicationContext 應用上下文,載入Spring 框架配置檔案
載入classpath:
     new ClassPathXmlApplicationContext("applicationContext.xml");
載入磁碟路徑:
     new FileSystemXmlApplicationContext("applicationContext.xml");


相關文章