監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 簽約案例 | 購買價(jià)格 | 在線試用 | 手機(jī)APP | 產(chǎn)品資料
X 關(guān)閉

設(shè)計(jì)以及設(shè)計(jì)模式:非主流存儲(chǔ)數(shù)據(jù)方式

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

文章來源:泛普軟件

數(shù)據(jù)會(huì)存到哪兒,在仔細(xì)考慮這個(gè)問題前,我肯定毫無疑問的說,肯定存數(shù)據(jù)庫唄。其實(shí)不然,想想很多網(wǎng)站的圖片就沒有存到數(shù)據(jù)庫,直接保存到文件系統(tǒng)。再比如寫配置信息,既可能存到文件里,也可能存到數(shù)據(jù)庫里。除了這流行的方式外,,還有沒有別的地方可以存數(shù)據(jù)呢。

答案是有的??梢源嬖诔绦蚶?。最常見的例子是直接把配置信息寫在Java類的屬性里,這樣的好處是容易該,如果需要改邏輯又需要改配置信息,這樣只要在代碼里修改就好了,省的倆頭改(程序和配置文件),比如以下代碼

public class DBHelper {

private static String url = "jdbc:mysql://localhost/warehouse?user=root&password=";

static {

try {

Class.forName("com.mysql.jdbc.Driver").newInstance();

} catch (Exception ex) {

ex.printStackTrace();

throw new RuntimeException("沒有找到驅(qū)動(dòng)!");

}

}

public static Connection getConnection() {

try {

Connection conn =

DriverManager.getConnection(url);

return conn;

} catch (SQLException ex) {

// handle any errors

ex.printStackTrace();

throw new RuntimeException("獲取數(shù)據(jù)庫連接錯(cuò)誤!");

}

}

 

這個(gè)DBHelper 搞定一切,哪怕你是以后遇到切換成連接池,數(shù)據(jù)庫IP地址更改或者數(shù)據(jù)庫變成Oralce的需求。

在舉一個(gè)列子,數(shù)據(jù)庫里一個(gè)表放有注冊(cè)用戶信息,你也許想在首頁上顯示到目前為止會(huì)員姓李的有多少個(gè),姓張的有多少個(gè),姓王的有多少個(gè).完成這個(gè)需求,一般的思路是后臺(tái)程序定期統(tǒng)計(jì),然后倒入到一個(gè)數(shù)據(jù)庫表里,這個(gè)表內(nèi)容大概如下:

LastName total

李 778,000

張 478,000

王 218,000

然后寫一打端MVC程序去顯示在主頁上。這種方法是很好,不過還有更簡(jiǎn)單的方法,那就是不用數(shù)據(jù)庫,后臺(tái)統(tǒng)計(jì)程序直接生成包含這些統(tǒng)計(jì)信息的JSP頁面就成。這樣的好處是省掉很多程序,而且維護(hù)也很方便,比如如果想夸大張姓人數(shù),那直接改JSP好了,誰都會(huì),保證不出錯(cuò)

還有一個(gè)不太常用一個(gè)列子,可以把圖片二進(jìn)制編碼后當(dāng)著一個(gè)字符串屬性,這樣就省的去讀圖片了,如公司的Logo信息或者你的產(chǎn)品的Logo

其實(shí)把數(shù)據(jù)放到程序里應(yīng)該很廣泛的,比如老的C程序,再比如匯編程序都是數(shù)據(jù)和邏輯放到一起。只是由于現(xiàn)在MVC流行,數(shù)據(jù)被當(dāng)著單獨(dú)的一部分考慮了,這要好處很多,但有時(shí)候,可以考慮以下非主流的方式,其好處就是倆個(gè)字:簡(jiǎn)單。(IT專家網(wǎng)論壇)

發(fā)布:2007-04-21 14:07    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
相關(guān)文章:
長(zhǎng)春OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線咨詢

泛普長(zhǎng)春OA行業(yè)資訊其他應(yīng)用

長(zhǎng)春OA軟件 長(zhǎng)春OA新聞動(dòng)態(tài) 長(zhǎng)春OA信息化 長(zhǎng)春OA快博 長(zhǎng)春OA行業(yè)資訊 長(zhǎng)春軟件開發(fā)公司 長(zhǎng)春門禁系統(tǒng) 長(zhǎng)春物業(yè)管理軟件 長(zhǎng)春倉庫管理軟件 長(zhǎng)春餐飲管理軟件 長(zhǎng)春網(wǎng)站建設(shè)公司