基於框架的全域性配置模型

2021-09-22 09:28:53 字數 2375 閱讀 6840

艱苦奮鬥

昨天晚上搞到23點多,終於有了比較滿意的全域性框架配置模組,這個在之前在lind.ddd.configconstants模組**現,可以說大叔對之前全域性配置的不滿,而對原有功能進行的改進,對於生產和獲取採用了單例,對於配置項採用了模組的概念,這樣在xml表現上更加符合物件導向的原則,並且在可讀性上也更加友好!

勞動成果

單例模式獲取配置資訊

全域性的保持不變的資訊,沒有必要每次都new例項,直接使用單例模組是最好的選擇

///

///配置字典,單例模式

/// ///

public

static

configmodel config

else}}

return

_config;

}}

配置實體

對於配置的實體類,大叔也公開一下,大家可以進行借鑑

public

class

configmodel

//////

啟用屬性變化跟蹤

/// [system.xml.serialization.xmlelementattribute(order = 0

)]

public

int propertychanged

//////

快取相關配置

/// [system.xml.serialization.xmlelementattribute(order = 1

)]

public caching caching

//////

佇列相關配置

/// [system.xml.serialization.xmlelementattribute(order = 2

)]

public queue queue

//////

日誌相關

/// [system.xml.serialization.xmlelementattribute(order = 3

)]

public logger logger

//////

pub_sub相關

/// [system.xml.serialization.xmlelementattribute(order = 4

)]

public pub_sub pub_sub

//////

mongodb相關

/// [system.xml.serialization.xmlelementattribute(order = 5

)]

public mongodb mongodb

//////

redis相關

/// [system.xml.serialization.xmlelementattribute(order = 6

)]

public redis redis

//////

messaging訊息相關

/// [system.xml.serialization.xmlelementattribute(order = 7

)]

public messaging messaging

//////

領域事件相關

/// [system.xml.serialization.xmlelementattribute(order = 8

)]

public domainevent domainevent

//////

socket通訊配置

/// [system.xml.serialization.xmlelementattribute(order = 10

)]

public socket socket

//////

cat實時監控配置

///xmlarray表示以陣列的形式

/// [xmlarray(order = 11

)]

public listcatservers

}

對以上的設計完全是出於一種興趣,感覺把每個模組都單獨設定,在部署上不方便,所以把它們統一了,當然只適合於lind.ddd框架,你自己的框架需要自己去定義實體了!

基於框架的全域性配置模型

回到目錄 艱苦奮鬥 昨天晚上搞到 點多,終於有了比較滿意的全域性框架配置模組,這個在之前在lind.ddd.configconstants模組中出現,可以說大叔對之前全域性配置的不滿,而對原有功能進行的改進,對於生產和獲取採用了單例,對於配置項採用了模組的概念,這樣在 表現上更加符合物件導向的原則,...

基於Spring框架的Shiro配置方法

一 在web.xml中新增shiro過濾器 shirofilter org.springframework.web.filter.delegatingfilterproxy shirofilter 二 在spring的applicationcontext.xml中新增shiro配置 1 新增shir...

Flask框架 07 模型使用配置

flask預設並沒有提供任何資料庫操作的api 我們可以選擇任何適合自己專案的資料庫來使用 flask中可以自己選擇資料,用原生語句實現功能,也可以選擇orm sqlalchemy,mongoengine sqlalchemy是乙個很強大的關係型資料庫框架,支援多種資料庫後台。sqlalchemy提...