05 2009 檔案
摘要: 在struts2中有兩種方式可以得到這些對(duì)象
1、非IoC方式
要獲得上述對(duì)象,關(guān)鍵Struts 2中com.opensymphony.xwork2.ActionContext類。我們可以通過它的靜態(tài)方法getContext()獲取當(dāng)前Action的上下文對(duì)象。有了這個(gè)對(duì)象我們想獲得其他幾個(gè)對(duì)象就好辦了
ActionContext ctx = ActionContext.getContext();
Map session = ctx.getSession();
細(xì)心的朋友可以發(fā)現(xiàn)這里的session是個(gè)map對(duì)象在Struts2中底層的session都被封裝成了Map類型我們可以直接操作這個(gè)map 進(jìn)行對(duì)session的寫入和讀取操作而不用去直接操作HttpSession對(duì)象
閱讀全文
摘要: 首先來解釋同步和異步的概念,這兩個(gè)概念與消息的通知機(jī)制有關(guān).
舉個(gè)例子,比如我去銀行辦理業(yè)務(wù),可能選擇排隊(duì)等候,也可能取一個(gè)小紙條上面有我的號(hào)碼,等到排到我這一號(hào)時(shí)由柜臺(tái)的人通知我輪到我去辦理業(yè)務(wù)了.
前者(排隊(duì)等候)就是同步等待消息,而后者(等待別人通知)就是異步等待消息.在異步消息處理中,等待消息者(在這個(gè)例子中就是等待辦理業(yè)務(wù)的人)往往注冊(cè)一個(gè)回調(diào)機(jī)制,在所等待的事件被觸發(fā)時(shí)由觸發(fā)機(jī)制(在這里是柜臺(tái)的人)通過某種機(jī)制(在這里是寫在小紙條上的號(hào)碼)找到等待該事件的人.
而在實(shí)際的程序中,同步消息處理就好比簡(jiǎn)單的read/write操作,它們需要等待這兩個(gè)操作成功才能返回;而異步處理機(jī)制就是類似于select/poll之類的多路復(fù)用IO操作,當(dāng)所關(guān)注的消息被觸發(fā)時(shí),由消息觸發(fā)機(jī)制通知觸發(fā)對(duì)消息的處理.
閱讀全文
摘要: 1.概念
索引是在數(shù)據(jù)庫表或者視圖上創(chuàng)建的對(duì)象,目的是為了加快對(duì)表或視圖的查詢的速度(簡(jiǎn)單理解)。
索引是一個(gè)單獨(dú)的、物理的數(shù)據(jù)庫結(jié)構(gòu),它是某個(gè)表中一列或若干列值的集合和相應(yīng)的指向表中物理標(biāo)識(shí)這些值的數(shù)據(jù)頁的邏輯指針清單(深刻理解)。
按照存儲(chǔ)方式分為:聚集與非聚集索引(需要重視和區(qū)別的概念,后面詳解)
按照維護(hù)與管理索引角度分為:唯一索引、復(fù)合索引和系統(tǒng)自動(dòng)創(chuàng)建的索引(相對(duì)簡(jiǎn)單,如下解釋:)
1).唯一索引:惟一索引可以確保索引列不包含重復(fù)的值.
可以用多個(gè)列,但是索引可以確保索引列中每個(gè)值組合都是唯一的,
即下面的姓不能有重復(fù),同時(shí)名也不能有重復(fù):
姓 名
李 二
閱讀全文
摘要: 索引
使用索引可快速訪問數(shù)據(jù)庫表中的特定信息。索引是對(duì)數(shù)據(jù)庫表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu),例如 employee 表的姓(lname)列。如果要按姓查找特定職員,與必須搜索表中的所有行相比,索引會(huì)幫助您更快地獲得該信息。
索引提供指向存儲(chǔ)在表的指定列中的數(shù)據(jù)值的指針,然后根據(jù)您指定的排序順序?qū)@些指針排序。數(shù)據(jù)庫使用索引的方式與您使用書籍中的索引的方式很相似:它搜索索引以找到特定值,然后順指針找到包含該值的行。
在數(shù)據(jù)庫關(guān)系圖中,您可以在選定表的“索引/鍵”屬性頁中創(chuàng)建、編輯或刪除每個(gè)索引類型。當(dāng)保存索引所附加到的表,或保存該表所在的關(guān)系圖時(shí),索引將保存在數(shù)據(jù)庫中。有關(guān)詳細(xì)信息,請(qǐng)參見創(chuàng)建索引。
注意;并非所有的數(shù)據(jù)庫都以相同的方式使用索引。有關(guān)更多信息,請(qǐng)參見數(shù)據(jù)庫服務(wù)器注意事項(xiàng),或者查閱數(shù)據(jù)庫文檔。
作為通用規(guī)則,只有當(dāng)經(jīng)常查詢索引列中的數(shù)據(jù)時(shí),才需要在表上創(chuàng)建索引。索引占用磁盤空間,并且降低添加、刪除和更新行的速度。在多數(shù)情況下,索引用于數(shù)據(jù)檢索的速度優(yōu)勢(shì)大大超過它的。
閱讀全文
摘要: // i386 is little_endian.
#ifndef LITTLE_ENDIAN
#define LITTLE_ENDIAN (1) //BYTE ORDER
#else
#error Redefine LITTLE_ORDER
#endif
閱讀全文
摘要: C++中的虛函數(shù)的作用主要是實(shí)現(xiàn)了多態(tài)的機(jī)制。關(guān)于多態(tài),簡(jiǎn)而言之就是用父類型別的指針指向其子類的實(shí)例,然后通過父類的指針調(diào)用實(shí)際子類的成員函數(shù)。這種技術(shù)可以讓父類的指針有“多種形態(tài)”,這是一種泛型技術(shù)。所謂泛型技術(shù),說白了就是試圖使用不變的代碼來實(shí)現(xiàn)可變的算法。比如:模板技術(shù),RTTI技術(shù),虛函數(shù)技術(shù),要么是試圖做到在編譯時(shí)決議,要么試圖做到運(yùn)行時(shí)決議。
關(guān)于虛函數(shù)的使用方法,我在這里不做過多的闡述。大家可以看看相關(guān)的C++的書籍。在這篇文章中,我只想從虛函數(shù)的實(shí)現(xiàn)機(jī)制上面為大家 一個(gè)清晰的剖析。
當(dāng)然,相同的文章在網(wǎng)上也出現(xiàn)過一些了,但我總感覺這些文章不是很容易閱讀,大段大段的代碼,沒有圖片,沒有詳細(xì)的說明,沒有比較,沒有舉一反三。不利于學(xué)習(xí)和閱讀,所以這是我想寫下這篇文章的原因。也希望大家多給我提意見。
言歸正傳,讓我們一起進(jìn)入虛函數(shù)的世界。
閱讀全文
摘要: Unix/Linux常用信號(hào)
閱讀全文