o nicem takovem jsem neslysel a neprijde mi, ze by to prinaselo nejake dramaticke vyhody. Pokud jde ciste o externalziaci konfigurace, tak tu muzes mit v XML. Pokud ti vadi, ze jsou ty soubory zapecene ve WARu, tak si je uloz (instalace, konfigurace) a cti (start) z databaze. Usetris si tim tu praci, kterou bys vynalozil na psani nejake vlastni serializace/deserializace do relacniho schematu.

Co se tyka zmeny aplikace za behu a nejake modularnosti nad Springem, tak se mi libi Impala framework (http://code.google.com/p/impala/), ktera se da pouzit jako alternativa k Spring Dynamic Modules. Ziskas tim dynamicky reload casti aplikaci bez nutnosti mit to cele udelane pomoci OSGi.

Tomáš Záluský napsal(a):
Dobrý den,

zajímalo by mne, zda má někdo zkušenost s modelováním bean a závislostí mezi nimi pomocí relační databáze. Ať už znalost existujícího projektu nebo vlastní pokusy. (Nejlépe ve Springu, ale není to podmínkou.) Vůbec pak, jaký máte na tuto myšlenku názor. Všude se porovnává jen xml formát á la Spring applicationContext.xml oproti konfiguraci kódem á la Guice nebo Spring JavaConfig.
Představa o využití:
- jednotlivé třídy aplikace by se vyvíjely normálně v java projektu se všemi 
zvyklostmi - Eclipse, Maven, SVN...
- závislosti, bean scopes atd. by se naklikaly pomocí nějakého UI, výsledkem by 
byla data uložena v relační db
- při startu aplikace by se Spring nakonfiguroval pomocí 
DatabaseApplicationContext implements ApplicationContext
- nasazení aplikace by znamenalo nasazení waru + spuštění skriptu na db (či 
nějaký inteligentní export/import)

Jako výhoda mi připadá, že by v db byl všestranně využitelný model, možnost do 
určité míry měnit činnost aplikace za chodu (vzrostla by ještě víc implementací 
beanů ve skriptovacích jazycích nebo ovlivněním classloadingu). Stejný princip 
správy přes db by se mohl aplikovat i na šablony UI.

Za nevýhodu považuji komplexnost - vzhledem k možnostem Springu bych v 
současnosti do toho šel, jen kdyby existoval hotový projekt s utilitami, které 
by možnosti uložení databáze zúročily. (nutná, ne postačující podmínka :-). Pak 
také další aspekty: testy, verzování závislostí... - opět zvýšení nároků na 
příslušný relační model.

Napadlo nás to u jednoho projektu postaveného na dvouvrstvé (klient-server) architektuře. 
Jeho část je popsána právě takovými "metadaty". Je to ovšem proprietární 
řešení, které - ač zpočátku jednoduché - průběžně bobtná o další požadavky. Navíc je ve 
hře možnost převedení aplikace do třívrstvé architektury. Snažím se proto sesbírat 
informace pro zorientování se, jak postupovat dál.

Díky, vážím si každé odpovědi.

Tomáš Záluský



================================================
...with Ultimate flying is so easy...
http://www.frisbee.cz    http://www.peaceegg.net
================================================


--
S pozdravem Roman "Dagi" Pichlik

/* http://www.sweb.cz/pichlik/ Blog pro kodery */

Odpovedet emailem