spring學習初步

2021-05-21 22:23:08 字數 1975 閱讀 2597

package cn.bupt.duming.service;

public inte***ce greetingservice

儘管看起來,在此處沒必要隱藏介面,但是我們還是建議將實現與介面分離。

public class greetingserviceimpl implements greetingservice

public greetingserviceimpl(string greeting)

public void sayhello()

public void setgreeting(string greeting)

}現在的問題是在何處呼叫上述的set方法,和建構函式。

在檔案中配置了乙個 greetingserviceimpl的例項 ,   是設定屬性的值,  就是  greetingserviceimpl

例項中的greeting 的值。

這裡的beanfactory就是spring 容器。

public inte***ce knight

public class knightoftheroundtable implements knight

public object embarkonquest()

// 這樣騎士可以進行各種各樣的探險,不一定是聖杯探險

public void setquest(quest quest)

public inte***ce quest

public class hollygrailquest implements quest

public object embark()  

}以上**實現與介面相分離,減少了耦合。

在此處配置具體的探險類

// 在此處構造騎士 , 並和相應的探險任務建立關聯  

ref="quest" >

di 只是一種鬆散耦合的**,這樣盡可以是應用物件之間保持疏遠的關係。

aop用來在軟體系統中實現業務分離,使用aop,你可以使各種功能層來覆蓋核心業務層。它將安全、事務、

和日誌功能與核心業務層相分開。

我們在上面的騎士的例子中,新增乙個日誌切面。

為每乙個騎士增加乙個詩人相陪伴,用歌曲來記錄騎士的功績和行動。

minstrel實現類

public class minstrel

public void singafter(knight knight)             

}//在圓桌騎士類中增添詩人的屬性

public class knightoftheroundtable implements knight

public knightoftheroundtable(string name)

public object embarkonquest()

public string getname()

// 這樣騎士可以進行各種各樣的探險,不一定是聖杯探險

public void setquest(quest quest)

配置檔案新增部分如下:

**中紅色部分顯示,每個騎士在繼續探險前,必須吩咐詩人譜一首曲子,在探險之後,騎士必須告訴詩人讓其歌頌他

得事蹟。   理想狀態下,騎士應該不用關心詩人,簡單的說詩人提供的服務超過了騎士的責任,也就是說詩人的工作和騎士

的工作交織在一起 。所以應該把詩人實現為切面,並把他寫歌的服務提供給騎士。

配置檔案如下:

騎士類無需知道詩人的存在,作為乙個切面,詩人自動處理歌頌事項。結果騎士恢復到了乙個更簡單的形式。

public class knightoftheroundtable implements knight

public object embarkonquest()

public string getname()

// 這樣騎士可以進行各種各樣的探險,不一定是聖杯探險

public void setquest(quest quest)

}

初步認識Spring

因為剛開始學習ssm,就先從最基本的spring開始學起,並總結了一下spring基本概念,以便了解。框架就是工具 spring 是乙個應用程式級別的輕量級框架,對企業級發展提供了一站式的服務 是乙個開源框架 hibernate 運算元據庫 springmvc web 開發mvc 詳細介紹sprin...

17 spring學習 AOP初步實現

aop是面向方面的程式設計,在實際開發中,aop都會工作在業務層,因為業務層要呼叫資料層,而業務層也要完成所有輔助性的業務層操作。package com.spring.service import com.spring.vo.member public inte ce imemberservice ...

對Spring初步理解

spring 實現宣告式事務方法一 xmlns xmlns xsi xmlns aop xmlns tx xsi schemalocation spring beans 2.5.xsd spring tx 2.5.xsd spring aop 2.5.xsd 步驟 1.配置aop 切入範圍 exec...