spring學習筆記5

2021-08-04 10:15:53 字數 2436 閱讀 8485

場景:想通過magicboss.getcar方法每次都得到乙個新的car例項。car是prototype,但magicboss是singleton。可以採用lookup方法注入。依賴於cglib。cglib可以在執行期動態操作位元組碼,為bean動態建立子類或實現類。

public

inte***ce magicboss

"car" class="x.x.car"/>

"magicboss" class="x.x.magicboss">

"getcar" bean="car"/>

通過bean的parent,abstract屬性實現繼承

通過bean的depends-on屬性實現依賴。

如果要使用與web環境相關的作用域,則需要在web.xml中配置乙個requestcontextlistener***。

spring提供了乙個factorybean介面,使用者可以通過實現該工廠類介面定製例項化bean的邏輯。它提供了三個方法:

t getobject():返回由factorybean建立的bean例項,如果issingleton()返回true,該例項會被放到spring容器的快取池中。

issingleton():是否是單例項。

有乙個use-default-filters屬性,預設為true,表示掃瞄@component,@controller,@service,@repository.

如果對類中集合類進行@autowired標註,那麼spring會將容器中所有型別匹配的bean自動注入進來。

autowired

private

list

plugins;

autowired

private mappluginmaps;提供的新特性。key為bean的名字

@component

@order(value=1)//值越小,優先被載入

public

class

oneplugin

implements

plugin

requesthandleevent:當乙個http請求被處理後,產生該事件。擁有兩個子類,分別代表servlet及portlet的請求事件。

事件***介面

事件廣播器

//註冊***

registerlisteners();

//完成重新整理並發布容器重新整理事件

finishrefresh();

public

class

mailsenderevent

extends

private string to;

super(source);

this.to = to;

}public string getto()

}public

class

mailsenderlistener

implements

}ublic class

mailsender

implements

@override

public

}public

void sendmail(string to)

}class="x.x.mailsenderlistener"/>

id="mailsender" class="x.x.mailsender"/>

Spring學習筆記 (5)

spring 1.需要注入的屬性寫到配置檔案中 如果屬性為基礎型別,需要有setter 方法,必須也寫在包的類 中,因為需要setter 方法 如果屬性為類,需要有無參構造方法,可不寫在包的類 中 2.spring config.xml的告知 在程式入口告知 對於測試入口 contextconfig...

shiro學習筆記(5) spring整合

spring整合shiro 1 1 jar org.apache.shiro shiro spring 1.2.3 2 web.xml contextconfiglocation classpath spring shiro.xml org.springframework.web.context.c...

Spring學習筆記5 註解方式AOP

第一步 註解配置業務類 使用 component pservice 註解productservice 類 1 package com.spring.service 23 import org.springframework.stereotype.component 45 component pser...