首先介紹Solution的架構(gòu),一共分四個項目:
Web :前臺應(yīng)用;
BLL :業(yè)務(wù)處理層,如果嫌麻煩,可以再進(jìn)一步抽象出來,然后將代碼放置Web層的aspx.cs里面;
Model :這個就不多說了,地球人都知道(數(shù)據(jù)實體類)
SqlMaps:資源類,把配置文件和sql mapper文件全部打包起來。
二個文件夾:
Include :iBatis.Net架構(gòu)的dll文件
Log :放置log文件的文件夾,在web.config里配置
1.在一些特定的環(huán)境下,一站式的解決方案未必有效
系統(tǒng)的部分或全部數(shù)據(jù)來自現(xiàn)有數(shù)據(jù)庫,處于安全考慮,只對開發(fā)團(tuán)隊提供幾條Select SQL(或存儲過程)以獲取所需數(shù)據(jù),具體的表結(jié)構(gòu)不予公開。
開發(fā)規(guī)范中要求,所有牽涉到業(yè)務(wù)邏輯部分的數(shù)據(jù)庫操作,必須在數(shù)據(jù)庫層由存儲過程實現(xiàn)。(銀行大多有這樣的限制)
系統(tǒng)數(shù)據(jù)處理量巨大,性能要求極為苛刻,這往往意味著我們必須通過經(jīng)過高度優(yōu)化的SQL語句(或存儲過程)才能達(dá)到系統(tǒng)性能設(shè)計指標(biāo)。
2.iBATIS之于小型、簡單系統(tǒng):非常適用
iBATIS自己就很小并且簡單
iBATIS不會對現(xiàn)存應(yīng)用的設(shè)計或者數(shù)據(jù)庫結(jié)構(gòu)強加任何影響
iBATIS非常適合于有成長趨勢的系統(tǒng)
3.iBATIS之于大型、企業(yè)級系統(tǒng):為之而設(shè)計
iBATIS的某些特性使得它能夠高效地處理大型數(shù)據(jù)集
iBATIS允許你用多種方式建立從對象到數(shù)據(jù)庫的映射關(guān)系
MySpace已應(yīng)用
4.使用于任何類型的關(guān)系數(shù)據(jù)庫:
應(yīng)用數(shù)據(jù)庫
企業(yè)數(shù)據(jù)庫
私有數(shù)據(jù)庫
遺留數(shù)據(jù)庫
簡單性
性能
明確分工
可移植性:Java、.Net或者其他
開源
5.何時不該使用iBATIS
當(dāng)你能永遠(yuǎn)擁有完全控制權(quán)
當(dāng)你的應(yīng)用需要完全動態(tài)的SQL
當(dāng)你并沒有使用關(guān)系數(shù)據(jù)庫時
當(dāng)iBATIS不起作用時
DB_51aspx下為Sql數(shù)據(jù)庫,附加后修改SqlMaps/database.config的Sql配置文件并編譯才能生效