-
Bean 管理的注解實現(xiàn)及例子
@Component:通用注解,用于任何Bean(下面為子注解)
@Repository 通常用于注解DAO類,急持久層
@Service通常用于注解Service,服務層
@Controller用于Controller,控制層(mvc)
查看全部 -
1、Java接口與c#接口的不同 java接口可以有方法踢,存在默認方法查看全部
-
spring 帶來了復雜JavaEE開發(fā)的春天
查看全部 -
框 架 特 點
查看全部 -
什么是框架
軟件框架,通常指的是為了實現(xiàn)某個業(yè)界標準完成特定基本任務的軟件組件規(guī)范,也指為了實現(xiàn)某個軟件組件規(guī)范時,提供規(guī)范所要求之基礎功能的軟件產品
框架就是制定一套規(guī)范或者規(guī)則(思想), 大家(程序員)在該規(guī)范或者規(guī)則(思想)下工作?;蛘哒f就是使用別人搭好的舞臺,你來表演。
查看全部 -
Spring Framework Runtime
查看全部 -
學習技術的方式方法
查看全部 -
一、接口及面向接口編程
接口:
1、用于溝通的中介物的抽象化。(相當于中間者,外部與接口溝通,但不與接口實現(xiàn)類進行溝通)
2、實體把自己提供給外界的一種抽象化說明,用以由內部操作分離出外部溝通方法,使其能被修改內部而不影響外界其他實體與其交互的方式(接口提供外部功能,至于內部的具體實現(xiàn)不對外公開,比如:注冊,只需要提供手機號、密碼等信息就可以進行注冊,具體怎么實現(xiàn)的,邏輯怎樣判斷的,數(shù)據(jù)存儲在哪里等具體實現(xiàn)邏輯不對外公開)
3、對應java接口即聲明,聲明了哪些方法是對外公開提供的,在Java8中,接口可以擁有方法體,(某種程度上和抽象類具有相似的功能)。
面向接口編程:
1、結構設計中,分清層次及調用關系,每層只向外(上層)提供一組功能接口,各層間僅依賴接口而非實現(xiàn)類。(多態(tài)的體現(xiàn))
2、優(yōu)點:接口實現(xiàn)的變動不影響各層間的調用,這一點在向外提供公共服務或者在企業(yè)內部提供公共服務中尤為重要,由于公共服務,所以穩(wěn)定性一定很重要(對外提供接口保證了接口的穩(wěn)定性,對于接口的實現(xiàn)可以根據(jù)某一時期的具體情況或者某一時期具體邏輯的變化進行調整)
3、面向接口編程中的“接口”:用于隱藏具體實現(xiàn)和實現(xiàn)多態(tài)性的組件,面向接口編程在IOC中應用非常廣泛(對外提供調用說明的,但不包含具體的實現(xiàn),具體的實現(xiàn)由接口實現(xiàn)類完成)
二、什么是IOC
IOC概念:(Inversion of Control)控制反轉,控制權的轉移,應用程序本身不負責依賴對象的創(chuàng)建和維護,而是由外部容器負責創(chuàng)建(創(chuàng)建對象并且組裝對象之間的依賴關系)和維護(正常情況下使用對象則需要new對象,而使用外部容器之后,對象就被容器管理了,包括對象的創(chuàng)建、初始化、銷毀等,對象就可以直接從容器中直接拿過來用),IOC容器在初始化時,會創(chuàng)建一系列的對象,同時把對象之間的依賴關系通過注入的方式組織起來。(組裝:一個類A,和一個類B,類A把類B作為自己的屬性,當IOC進行實例化時,先實例化A,再實例化B,再把B注入到A中)
比喻:我們手動去new一個對象,就像我們想要一所房子,我們自己手動的買材料去建造,而使用容器之后,就像找開發(fā)商,直接可以入住房子。
DI概念:(Dependency Injection)依賴注入,控制反轉的一種實現(xiàn)方式,獲得依賴對象的過程由自身管理變?yōu)榱擞蒊OC容器主動注入,所謂依賴注入,就是由IOC容器在運行期間,動態(tài)地將某種依賴關系注入到對象之中。
IOC目的:創(chuàng)建對象并且組裝對象之間的關系(IOC容器在初始化時,會初始化一系列的對象,同時能把對象之間的依賴關系通過注入的方式組織起來)例如:一個類A里存在另一個類B的聲明,IOC會負責創(chuàng)建A和B的對象,并通過A的構造方法注入B的實例。
Spring官網(wǎng)給出IOC工作原理
描述IOC
三、Spring的Bean配置
1、在IOC容器中所有的對象都稱為Bean。
2、Spring的Bean配置方式有兩種:基于XML配置、注解配置。
3、XML中配置:<bean id="bean的唯一標識",class="交給容器管理的類的路徑"></bean>
四、Bean容器的初始化
基礎:兩個包:
org.springframework.beans
org.springframework.context
beans提供BeanFactory及其子類,它提供配置結構和基本功能,并加載初始化Bean
context提供ApplicationContext及實現(xiàn)類保存了Bean對象并在Spring中被廣泛使用
初始化ApplicationContext方式:
1、加載本地文件(指定磁盤下某路徑下的xml文件)
2、Classpath(相對路徑,相對項目的路徑)
3、Web應用中依賴servlet或Listener初始化Bean容器(兩種方式,任選其一)
例子:
查看全部 -
Spring是一個開源框架,為了解決企業(yè)應用開發(fā)的復雜性而創(chuàng)建的,但現(xiàn)在已經不知應用于企業(yè)應用。
是一個輕量級的控制反轉(IoC)和面向切面(AOP)的容器框架。
從大小與開銷兩方面而言Spring都是輕量級的。
通過控制反轉(IoC)的技術達到松耦合的目的。
提供了面向切面編程的豐富支持,允許通過分離應用的業(yè)務邏輯與系統(tǒng)級服務進行內聚性的開發(fā)。
包含并管理應用對象的配置和聲明周期,這個意義上是一種容器。
將簡單的組件配置、組合成為復雜的應用,這個意義上是框架。
查看全部 -
spring容器 用來分擔創(chuàng)建對象的任務,創(chuàng)建的對象通過依賴注入直接給程序使用。即ioc查看全部
-
申明一個運行時使用,然后運用在方法上
查看全部 -
使用afterthrowing捕捉到跑出的異常信息 類似于我們的那個全局捕捉
查看全部
舉報