基于特征內(nèi)容的短信消息過(guò)濾系統(tǒng)設(shè)計(jì)【畢業(yè)設(shè)計(jì)】_第1頁(yè)
已閱讀1頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  本科畢業(yè)設(shè)計(jì)(論文)</p><p><b> ?。ǘ?屆)</b></p><p>  基于特征內(nèi)容的短信消息過(guò)濾系統(tǒng)設(shè)計(jì)</p><p>  所在學(xué)院 </p><p>  專(zhuān)業(yè)班級(jí) 計(jì)算機(jī)科學(xué)與技術(shù) </p

2、><p>  學(xué)生姓名 學(xué)號(hào) </p><p>  指導(dǎo)教師 職稱(chēng) </p><p>  完成日期 年 月 </p><p>  摘要:隨著移動(dòng)通信技術(shù)的飛速發(fā)展和手機(jī)普及率的迅速提高,手機(jī)短信越來(lái)越受到眾多人士的青睞

3、。但是由于各種垃圾短信的大量出現(xiàn),也帶來(lái)了信息安全上的問(wèn)題,影響了人們的正常生活。因而非常有必要將這些垃圾短信過(guò)濾掉。</p><p>  基于內(nèi)容的過(guò)濾是當(dāng)前解決垃圾短信問(wèn)題的主要技術(shù)之一。本文根據(jù)現(xiàn)有的算法,對(duì)短消息過(guò)濾系統(tǒng)進(jìn)行了設(shè)計(jì)和實(shí)現(xiàn),它以?xún)?nèi)容過(guò)濾為核心,運(yùn)用分詞技術(shù)和匹配技術(shù),對(duì)特定消息實(shí)施過(guò)濾。設(shè)計(jì)出了良好的人機(jī)交互界面。給出短信過(guò)濾系統(tǒng)的測(cè)試結(jié)果,并根據(jù)這些測(cè)試結(jié)果對(duì)系統(tǒng)進(jìn)行了分析和評(píng)估。<

4、/p><p>  全文給出了手機(jī)垃圾短信過(guò)濾系統(tǒng)的設(shè)計(jì)方案,對(duì)其中的一些關(guān)鍵技術(shù)了詳細(xì)論述和設(shè)計(jì)。</p><p>  關(guān)鍵詞:垃圾信息;文本過(guò)濾;匹配;過(guò)濾系統(tǒng)</p><p>  Junk SMS Filtering Based on Context</p><p>  Abstract: Along with the mobile comm

5、unication technology rapid develop- ment and the handset popular rate rapid enhancement, the handset short message more and more receives the multitudinous public figure’s favor. But as a result of each kind of trash sho

6、rt messages massive appearances, which also bring in the information security questions that have affected people’s normal life. Thus it is extremely necessary to filter out trash short messages.</p><p>  Th

7、e content-based filtering is one of the main techniques used solving the WSM problem. The text basis existing algorithm, has carried on the design and the realization to the short note filtration system, based on the cor

8、e of Content-filtering, using the technology of Chinese Word Segmentation and technology of Word-mating. Designed the good man-machine interaction contact surface. Gives the short note filtration system the test result,

9、and has carried on the analysis and the appraisal accordin</p><p>  The full text has given trash short note filtration system design proposal, has given the detailed elaboration and the design to some key t

10、echnologies.</p><p>  Keywords: Junk Messages; Text filtering; Match; Filtering system</p><p><b>  目 錄</b></p><p><b>  1 緒論1</b></p><p>  1.1

11、 課題的研究背景1</p><p>  1.1.1 背景1</p><p>  1.1.2 研究現(xiàn)狀1</p><p>  1.2 課題研究的目的2</p><p>  1.3 課題的研究?jī)?nèi)容2</p><p>  1.4 課題的研究方法2</p><p>  1.5 論文的內(nèi)容組織

12、3</p><p>  2 基礎(chǔ)知識(shí)簡(jiǎn)介4</p><p>  2.1 Eclipse平臺(tái)簡(jiǎn)介4</p><p>  2.2 Java語(yǔ)言的特點(diǎn)4</p><p>  2.3 分詞技術(shù)5</p><p>  2.4 信息過(guò)濾技術(shù)6</p><p>  2.4.1 信息過(guò)濾的概念及特點(diǎn)

13、6</p><p>  2.4.2 信息過(guò)濾系統(tǒng)的分類(lèi)6</p><p>  2.4.3 信息過(guò)濾系統(tǒng)的結(jié)構(gòu)7</p><p>  2.5 文本的過(guò)濾匹配技術(shù)8</p><p>  2.6 正則表達(dá)式10</p><p><b>  3 需求分析11</b></p>&l

14、t;p>  3.1 提出問(wèn)題11</p><p>  3.2 項(xiàng)目開(kāi)發(fā)目標(biāo)11</p><p>  3.3 系統(tǒng)的開(kāi)發(fā)環(huán)境11</p><p>  4 可行性分析12</p><p>  4.1 技術(shù)可行性12</p><p>  4.2 實(shí)用性12</p><p>  5 系

15、統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)13</p><p>  5.1 系統(tǒng)總體設(shè)計(jì)13</p><p>  5.2 界面設(shè)計(jì)17</p><p>  5.3 系統(tǒng)流程分析17</p><p>  6 系統(tǒng)測(cè)試與分析19</p><p>  6.1 測(cè)試的過(guò)程及目標(biāo)19</p><p>  6.2 短消息過(guò)濾

16、系統(tǒng)的測(cè)試19</p><p>  6.3 性能分析22</p><p>  7 總結(jié)及展望23</p><p>  致 謝錯(cuò)誤!未定義書(shū)簽。</p><p><b>  參考文獻(xiàn)24</b></p><p><b>  緒論</b></p><

17、;p><b>  課題的研究背景</b></p><p><b>  背景</b></p><p>  隨著移動(dòng)通信技術(shù)的飛速發(fā)展和手機(jī)的普及率迅速提高,手機(jī)短消息以其簡(jiǎn)便、價(jià)廉、及時(shí)的特點(diǎn)受到越來(lái)越多人的青睞,成為當(dāng)今社會(huì)中人們交流溝通的一種重要也不可少的方式.但是隨著短消息業(yè)務(wù)的快速發(fā)展,大量的不良信息開(kāi)始通過(guò)短消息進(jìn)行傳播,給人們正常

18、的生活造成影響,甚至有些反動(dòng)、色情短消息更是危害整個(gè)社會(huì)和國(guó)家的發(fā)展.因此,從社會(huì)安定和國(guó)家安全角度來(lái)看,如何對(duì)短消息進(jìn)行監(jiān)控和過(guò)濾是十分必要的.</p><p>  移動(dòng)通訊分布廣、傳遞快、效率高,而信息具有直觀、鮮明、形象等特點(diǎn),因此傳播不良性信息影響大,危害性也很大,有時(shí)一旦作案,則難以找到證據(jù).通過(guò)短消息發(fā)送信息非常方便和便宜,廣告公司便可以用來(lái)發(fā)送無(wú)聊的廣告,或者心懷惡心的人不斷發(fā)送攻擊性消息.如何處理

19、這些垃圾短信十分令人頭疼,這也將影響用戶對(duì)服務(wù)提供商的信任.</p><p>  因此,短消息安全已成為當(dāng)前的社會(huì)問(wèn)題,對(duì)手機(jī)短消息內(nèi)容進(jìn)行檢查和過(guò)濾,攔截含有色情、攻擊性言論和政治敏感信息等不符合我國(guó)國(guó)情的消息,能在一定程度上防止不良信息的傳播,保護(hù)通信網(wǎng)絡(luò)的純凈.</p><p>  目前,考慮到國(guó)內(nèi)的短信絕大多數(shù)是中文短信,所以只要對(duì)中文垃圾短信進(jìn)行過(guò)濾,就可以解決絕大部分的短信安全

20、問(wèn)題,因此本文主要處理的對(duì)象是中文短信.</p><p><b>  研究現(xiàn)狀</b></p><p>  文獻(xiàn)[1]詳細(xì)的介紹了短信的發(fā)送與接收的中介、存儲(chǔ)和轉(zhuǎn)發(fā)機(jī)制等內(nèi)容.這里的短信發(fā)送與接收是由移動(dòng)網(wǎng)絡(luò)中的短消息服務(wù)中心(SMSC,short message service center)來(lái)完成的,其依靠的是SMSC的存儲(chǔ)和轉(zhuǎn)發(fā)機(jī)制.</p>&l

21、t;p>  下面從短信息的傳輸過(guò)程和發(fā)送方式出發(fā),短信過(guò)濾技術(shù)大致上可分為兩種方式:</p><p>  (l) 短消息服務(wù)中心的過(guò)濾方式.這種方式會(huì)有效地更新短信中存在的關(guān)鍵詞,存儲(chǔ)、轉(zhuǎn)發(fā)、接收到短信的同時(shí),還要監(jiān)控有害短信息.這種監(jiān)控大多是根據(jù)短信狀態(tài)監(jiān)測(cè)和短信內(nèi)容識(shí)別相結(jié)合的監(jiān)管模式,這是目前比較重要的技術(shù)之一.</p><p>  下面對(duì)其介紹兩種比較普遍的技術(shù)——基于關(guān)鍵詞

22、或基于內(nèi)容的垃圾短信過(guò)濾方法,這主要是依據(jù)構(gòu)成短信的文字本身來(lái)進(jìn)行判斷短信的過(guò)濾技術(shù).a(chǎn)基于關(guān)鍵詞的垃圾短信過(guò)濾是設(shè)置一些關(guān)鍵詞,只要具有這些關(guān)鍵詞的短信,就認(rèn)定為垃圾短信,并予以過(guò)濾,但這種方法存在大量的查找運(yùn)算以及會(huì)有許多的漏判等缺陷,準(zhǔn)確率不高.b基于內(nèi)容的垃圾短信過(guò)濾是采用文本區(qū)分的方法把短信自動(dòng)分為正常短信和垃圾短信.相比之下,后者的準(zhǔn)確率更高,但其運(yùn)算量也更大.</p><p>  (2) 手機(jī)終端的

23、過(guò)濾方式.這種技術(shù)的步驟如下:第一,預(yù)先設(shè)定包含手機(jī)和短信服務(wù)商號(hào)碼的黑名單,然后存儲(chǔ)到手機(jī)中;第二,在接收信息時(shí),對(duì)之前存儲(chǔ)的黑名單進(jìn)行攔截和過(guò)濾.然而這種方法也同樣存在局限性,通常我們會(huì)先采用預(yù)先設(shè)定的黑名單,但有時(shí)候在對(duì)不良信息進(jìn)行攔截時(shí)卻存在不足,因?yàn)楹芏嗖涣夹畔l(fā)送者會(huì)經(jīng)常變換手機(jī)號(hào)碼,他們往往以新號(hào)碼發(fā)送垃圾短信,這將使得原來(lái)的黑名單失效,而導(dǎo)致無(wú)法過(guò)濾.</p><p><b>  課題研

24、究的目的</b></p><p>  短消息過(guò)濾系統(tǒng)需要利用手機(jī)軟件集中管理而開(kāi)發(fā)的系統(tǒng)進(jìn)行過(guò)濾,其主要包括短消息發(fā)送、短消息過(guò)濾等工作,.根據(jù)短消息過(guò)濾系統(tǒng)的需求和特點(diǎn),該系統(tǒng)實(shí)施后,就應(yīng)達(dá)到以下目標(biāo):</p><p>  (1) 界面要清晰美觀,能夠友好地與用戶進(jìn)行交互;</p><p>  (2) 通過(guò)特征匹配實(shí)現(xiàn)高效快速的垃圾短信過(guò)濾;</

25、p><p>  (3) 用戶可以針對(duì)不良信息進(jìn)行添加和刪除;</p><p>  (4) 啟動(dòng)實(shí)時(shí)監(jiān)控后,系統(tǒng)應(yīng)對(duì)用戶操作進(jìn)行監(jiān)控并及時(shí)反饋監(jiān)聽(tīng)結(jié)果;</p><p>  (5) 系統(tǒng)運(yùn)行穩(wěn)定、安全可靠.</p><p><b>  課題的研究?jī)?nèi)容</b></p><p>  本課題的主要內(nèi)容是設(shè)計(jì)旨

26、在模擬一個(gè)垃圾短消息過(guò)濾系統(tǒng).該系統(tǒng)除了包含一般短信發(fā)送這一基本功能外,還要實(shí)現(xiàn)垃圾短信過(guò)濾功能.</p><p>  本系統(tǒng)可分為“服務(wù)器端”和“客戶端”兩個(gè)部分.</p><p>  下面模擬一個(gè)垃圾短消息過(guò)濾系統(tǒng)的步驟是:1)先在服務(wù)端和客戶端建立連接;2)再進(jìn)行信息發(fā)送(可以是服務(wù)器端發(fā)送給客戶端,也可以是客戶端發(fā)送給服務(wù)器端),3)最后將發(fā)送的信息與filter.txt里的關(guān)鍵字

27、進(jìn)行匹配,若匹配成功,即短消息里包含有不良信息,則過(guò)濾(用*代替).反之,進(jìn)行正常發(fā)送.</p><p><b>  課題的研究方法</b></p><p>  (1) 在學(xué)習(xí)和熟悉JAVA語(yǔ)言和關(guān)于JAVA多線程編程基礎(chǔ)上,從而掌握手機(jī)收發(fā)短信的方法.由于Eclipse及其它插件提供了一個(gè)開(kāi)發(fā)測(cè)試程序代碼的IDE集成開(kāi)發(fā)環(huán)境,因此本設(shè)計(jì)將以軟件的形式來(lái)完成,利用參考

28、文獻(xiàn)[2]中所講述的步驟來(lái)設(shè)計(jì)完成這個(gè)系統(tǒng).而系統(tǒng)設(shè)計(jì)所用的則是大家比較熟悉的java.因?yàn)閖ava具有面向?qū)ο?、分布式和多線程等特點(diǎn),所以本軟件的設(shè)計(jì)會(huì)涉及到j(luò)ava中數(shù)據(jù)結(jié)構(gòu)、集合架構(gòu)以及多線程和網(wǎng)絡(luò)編程等內(nèi)容.</p><p>  (2) 面向?qū)ο蠓椒?lt;/p><p>  面向?qū)ο蠓椒?Object-Oriented Method)是一種把面向?qū)ο蟮乃枷霊?yīng)用于軟件開(kāi)發(fā),也是一種指導(dǎo)開(kāi)

29、發(fā)活動(dòng)的系統(tǒng)方法,簡(jiǎn)稱(chēng)OO(Object-Oriented)方法,是建立在“對(duì)象”概念基礎(chǔ)上的方法學(xué).本文主要通過(guò)該方法,運(yùn)用面向?qū)ο缶幊坦ぞ?,?lái)完成短消息過(guò)濾系統(tǒng)的開(kāi)發(fā).</p><p><b>  論文的內(nèi)容組織</b></p><p>  論文共由七章組成.第1章緒論,主要介紹系統(tǒng)的研究背景、研究目的和意義、研究?jī)?nèi)容以及研究方法;第2章基礎(chǔ)知識(shí)簡(jiǎn)介,主要介紹系統(tǒng)

30、開(kāi)發(fā)過(guò)程中會(huì)用到的一些相關(guān)技術(shù)的概念,包括有系統(tǒng)的開(kāi)發(fā)平臺(tái)eclipse,系統(tǒng)開(kāi)發(fā)語(yǔ)言java,以及文本的過(guò)濾匹配技術(shù)等;第3章需求分析,主要是介紹明確項(xiàng)目開(kāi)發(fā)的目標(biāo)和需要達(dá)成的任務(wù);第4章可行性分析,主要分析項(xiàng)目達(dá)成的可行性,其包括技術(shù)可行性和實(shí)用性;第5章系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn),主要介紹系統(tǒng)的硬件軟件環(huán)境、界面設(shè)計(jì)、功能實(shí)現(xiàn)、主要技術(shù)難點(diǎn)等內(nèi)容;第6章系統(tǒng)測(cè)試與評(píng)價(jià),主要涉及系統(tǒng)的測(cè)試方法、數(shù)據(jù),結(jié)論以及對(duì)系統(tǒng)的性能進(jìn)行評(píng)價(jià);第7章總結(jié)與展

31、望,主要闡述了本課題所完成的研究工作和存在的不足,以及希望在今后可以完善的地方.</p><p><b>  基礎(chǔ)知識(shí)簡(jiǎn)介</b></p><p>  Eclipse平臺(tái)簡(jiǎn)介</p><p>  根據(jù)文獻(xiàn)[3]和文獻(xiàn)[4]對(duì)Eclipse的配置、項(xiàng)目、開(kāi)發(fā)等的詳細(xì)說(shuō)明,本節(jié)總結(jié)了這三者的主要內(nèi)容.</p><p>  配

32、置:Eclipse是一個(gè)開(kāi)放源代碼的、基于 Java 的可擴(kuò)展開(kāi)發(fā)平臺(tái).就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境.幸運(yùn)的是,Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括Java 開(kāi)發(fā)工具(Java Development Tools,JDT).同時(shí)Eclipse還是一個(gè)開(kāi)放源代碼的軟件開(kāi)發(fā)項(xiàng)目,專(zhuān)注于為高度集成的工具開(kāi)發(fā)提供一個(gè)全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺(tái).</p><p>  項(xiàng)

33、目:主要由Eclipse項(xiàng)目、Eclipse工具項(xiàng)目和Eclipse技術(shù)項(xiàng)目三部分組成.</p><p>  開(kāi)發(fā):具體包括四個(gè)部分組成——Eclipse Platform,JDT,CDT和PDE.JDT支持Java開(kāi)發(fā)、CDT支持C開(kāi)發(fā)、PDE支持插件開(kāi)發(fā).而Eclipse Platform則是一個(gè)開(kāi)放的可擴(kuò)展IDE,提供了一個(gè)通用的開(kāi)發(fā)平臺(tái).它提供建造塊和構(gòu)造并運(yùn)行集成軟件開(kāi)發(fā)工具的基礎(chǔ).</p>

34、<p><b>  Java語(yǔ)言的特點(diǎn)</b></p><p>  在參考了文獻(xiàn)[5]和文獻(xiàn)[6]中關(guān)于Java語(yǔ)言的基礎(chǔ)上,這一節(jié)主要概述了Java語(yǔ)言的最主要的六個(gè)特點(diǎn):</p><p><b>  (1) 平臺(tái)無(wú)關(guān)性</b></p><p>  Java的一個(gè)顯著優(yōu)點(diǎn)就是運(yùn)行時(shí)環(huán)境提供了平臺(tái)無(wú)關(guān)性,它利

35、用虛擬機(jī)原理,并在虛擬機(jī)中運(yùn)行,實(shí)現(xiàn)不同平臺(tái)之間的Java接口,同時(shí)Java的數(shù)據(jù)類(lèi)型與機(jī)器無(wú)關(guān),但其基本數(shù)據(jù)類(lèi)型的大小及其算法有明確的規(guī)定.因此,使用Java編寫(xiě)的程序能在不同的平臺(tái)運(yùn)行.</p><p><b>  (2) 安全性</b></p><p>  雖然Java的編程類(lèi)似C++,但Java舍棄了C++的指針對(duì)存儲(chǔ)器地址的直接操作.由于Java程序運(yùn)行時(shí),

36、內(nèi)存由操作系統(tǒng)分配,因此這樣就可以避免病毒通過(guò)指針入侵系統(tǒng),從而它提供了一個(gè)安全管理器,防止程序的非法訪問(wèn).</p><p>  (3) 面向?qū)ο笮?</p><p>  Java吸收了C++面向?qū)ο蟮母拍?,將?shù)據(jù)和操作封裝于類(lèi)中,實(shí)現(xiàn)了程序的簡(jiǎn)單性和便于維護(hù)性,使程序代碼可以只需一次編譯就可被反復(fù)利用.</p><p><b>  (4) 分布式<

37、/b></p><p>  Java建立在TCP/IP網(wǎng)絡(luò)平臺(tái)上,提供了用HTTP和FTP協(xié)議傳送和接收信息的庫(kù)函數(shù),使用其相關(guān)技術(shù)可以十分簡(jiǎn)便的構(gòu)建分布式應(yīng)用系統(tǒng).</p><p><b>  (5) 健壯性</b></p><p>  Java致力與檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤,并自動(dòng)回收內(nèi)存,大大減少了內(nèi)存出錯(cuò)的可能性.Java取消

38、了C語(yǔ)言的結(jié)構(gòu)、指針、#define語(yǔ)句、多重繼承、goto語(yǔ)句、操作符等不易被掌握的特性,提供垃圾收集器自動(dòng)回收不用的內(nèi)存空間.</p><p><b>  (6) 多線程</b></p><p>  多線程可以帶來(lái)更好的交互響應(yīng)和實(shí)時(shí)行為.適當(dāng)?shù)厥褂枚嗑€程可以更充分地利用系統(tǒng)資源,使程序的效顯著提升.Java對(duì)多線程的處理非常簡(jiǎn)單,在不同的平臺(tái)上,調(diào)用多線程的代碼

39、是完全相同的.</p><p><b>  分詞技術(shù)</b></p><p>  下面主要是在參考文獻(xiàn)[7]基礎(chǔ)上,總結(jié)了中文分詞技術(shù)的相關(guān)內(nèi)容,中文分詞技術(shù)是最重要的中文文本預(yù)處理技術(shù).其中自動(dòng)分詞就是從信息處理需求出發(fā),按照特定的規(guī)范,對(duì)漢語(yǔ)按分詞單位進(jìn)行劃分的過(guò)程.基于字符串匹配的、基于理解和基于統(tǒng)計(jì)的分詞方法是現(xiàn)在主要的三大算法.</p><

40、;p>  (1) 基于字符串匹配的分詞方法:按照一定的策略匹配待分析的漢字串與一個(gè)“充分大的”機(jī)器詞典中的詞條,如果在詞典中找到某個(gè)字符串,則匹配成功(識(shí)別出一個(gè)詞),反之,則失?。ヅ浞衷~方法可以分為正向匹配和逆向匹配(按照掃描方向的不同);又可以分為最大(最長(zhǎng))匹配和最?。ㄗ疃蹋┢ヅ洌ò凑詹煌L(zhǎng)度優(yōu)先匹配的情況);還可以分為單純分詞方法和分詞與標(biāo)注相結(jié)合的一體化方法(按照是否與詞性標(biāo)注過(guò)程相結(jié)合).此外,還可以將上述各種方法

41、相互組合,例如雙向匹配法,它將正向最大匹配方法和逆向最大匹配方法結(jié)合起來(lái). </p><p>  (2) 基于理解的分詞方法:是通過(guò)讓計(jì)算機(jī)模擬人對(duì)句子的理解,來(lái)達(dá)到識(shí)別詞的效果.其基本思想如下:首先,分詞的句法、語(yǔ)義分析同時(shí)進(jìn)行;然后,歧義現(xiàn)象利用其句法信息和語(yǔ)義信息來(lái)處理.它通常包括三大部分,分詞子系統(tǒng)、句法語(yǔ)義子系統(tǒng)、總控部分.在總控部分的協(xié)調(diào)下,分詞子系統(tǒng)可以獲得有關(guān)詞、句子等的句法和語(yǔ)義信息來(lái)對(duì)分詞歧義

42、進(jìn)行判斷.</p><p>  (3) 基于統(tǒng)計(jì)的分詞方法:這種方法只需對(duì)語(yǔ)料中的字組的頻度進(jìn)行統(tǒng)計(jì),我們可以對(duì)語(yǔ)料中相鄰共現(xiàn)的各個(gè)字的組合的頻度進(jìn)行統(tǒng)計(jì),計(jì)算它們的互現(xiàn)信息[7](即計(jì)算兩個(gè)漢字X、Y的相鄰共現(xiàn)概率.互現(xiàn)信息體現(xiàn)了漢字之間結(jié)合關(guān)系的緊密程度.當(dāng)緊密程度高于某一個(gè)閾值時(shí),便可以認(rèn)為此字組可能構(gòu)成了一個(gè)詞),并且不需要切分詞典,因而又叫做無(wú)詞典分詞法.但這種方法也有一定的局限性,一部分共現(xiàn)頻度高、但

43、并不是詞的常用字組會(huì)經(jīng)常被抽出,例如“你的”、“有的”、“我的”、“大多數(shù)的”等,并且還有兩個(gè)明顯的不足之處:一是常用詞的識(shí)別精度較差,二是時(shí)空開(kāi)銷(xiāo)較大. </p><p>  如今,中文分詞技術(shù)在文本短消息過(guò)濾中得到了十分廣泛的應(yīng)用,先分詞再匹配,使得文本過(guò)慮的精度得到了較大的提高.</p><p><b>  信息過(guò)濾技術(shù)</b></p><p

44、>  信息過(guò)濾的概念及特點(diǎn)</p><p>  信息過(guò)濾[8-9]的定義是指計(jì)算機(jī)根據(jù)用戶提供的一個(gè)過(guò)濾需求(user Profile),從動(dòng)態(tài)變化的信息流(比如Web)中自動(dòng)檢索出滿足用戶需求的信息.其應(yīng)用系統(tǒng)就是可以引用信息過(guò)濾技術(shù)從而處理相關(guān)信息,特點(diǎn)主要表現(xiàn)為以下幾點(diǎn):</p><p>  (1) 信息過(guò)濾系統(tǒng)的數(shù)據(jù)設(shè)計(jì)主要可以分為無(wú)結(jié)構(gòu)化設(shè)計(jì)和半結(jié)構(gòu)化設(shè)計(jì)兩種.比如電子郵件

45、,就是一類(lèi)典型的半結(jié)構(gòu)化數(shù)據(jù),它具有結(jié)構(gòu)化的郵件頭和無(wú)結(jié)構(gòu)的郵件正文.</p><p>  (2) 信息過(guò)濾系統(tǒng)主要是用來(lái)處理文本信息的.由于信息過(guò)濾系統(tǒng)處理的數(shù)據(jù)一般為輸入信息流,其中包括遠(yuǎn)程數(shù)據(jù)源以廣播的形式發(fā)送消息或者直接發(fā)送信息.</p><p>  (3) 信息過(guò)濾系統(tǒng)還需要包含一組對(duì)用戶過(guò)濾需求的描述.這種描述既可以用來(lái)屏蔽不良的信息,又可以用來(lái)收集有益的信息.</p&g

46、t;<p><b>  信息過(guò)濾系統(tǒng)的分類(lèi)</b></p><p>  下面主要從過(guò)濾操作的主動(dòng)性與被動(dòng)性、過(guò)濾系統(tǒng)運(yùn)行的位置、過(guò)濾策略、用戶信息獲取的方法這四個(gè)不同的角度來(lái)介紹信息過(guò)濾系統(tǒng)[9],如圖2-4-2所示.</p><p>  (1) 過(guò)濾系統(tǒng)主動(dòng)性與被動(dòng)性</p><p>  信息過(guò)濾可以分為主動(dòng)過(guò)濾和被動(dòng)過(guò)濾這兩類(lèi)

47、.對(duì)于主動(dòng)過(guò)濾系統(tǒng)而言,它是一種推送機(jī)制,步驟如下:首先,系統(tǒng)主動(dòng)收集信息;其次,將相關(guān)信息推薦給用戶.如果在信息超載的情況下,它還可以將更為精確以及用戶最需要的信息推薦給他們,其中不包含其他大規(guī)模噪聲信息.對(duì)于被動(dòng)過(guò)濾系統(tǒng)而言,其步驟如下:首先,系統(tǒng)被動(dòng)地等待信息的到來(lái);然后,對(duì)用戶收到的信息進(jìn)行判斷,保留相關(guān)信息;最后,過(guò)濾其它信息.</p><p>  (2) 過(guò)濾系統(tǒng)運(yùn)行的位置</p>&l

48、t;p>  信息過(guò)濾系統(tǒng)運(yùn)行的主要位置包括了信息源、服務(wù)器端和客戶端,這三部分在運(yùn)行中起到至關(guān)重要的作用.a(chǎn)信息源過(guò)濾是指將過(guò)濾模板提交給信息發(fā)布者;b服務(wù)器過(guò)濾是指把用戶需求模板放在服務(wù)器上;c客戶端過(guò)濾是指把用戶的需求模板放在客戶端.</p><p><b>  (3) 過(guò)濾策略</b></p><p>  過(guò)濾策略大致上包含了基于認(rèn)知的(也稱(chēng)為基于內(nèi)容的信

49、息過(guò)濾)策略和基于協(xié)作的(協(xié)作信息過(guò)濾)策略.其中基于認(rèn)知的過(guò)濾策略主要匹配文檔內(nèi)容和用戶profile;而基于協(xié)作的過(guò)濾策略是通過(guò)用戶之間的相似度和聚類(lèi)實(shí)現(xiàn)協(xié)作性過(guò)濾,對(duì)基于認(rèn)知的過(guò)濾策略的進(jìn)一步地補(bǔ)充.</p><p>  (4) 用戶信息獲取的方法</p><p>  用戶信息獲取的方法主要有以下三種形式:顯式獲取、隱式獲取、顯式和隱式并用.a(chǎn)顯式獲取一般是通過(guò)詢(xún)問(wèn)和填寫(xiě)表單的形式實(shí)

50、現(xiàn);b隱式獲取則是通過(guò)記錄用戶的行為實(shí)現(xiàn)的;c顯式和隱式并用的方法由文檔空間(基于案例的方法)和推理(預(yù)先定義默認(rèn)的profile,在掃描過(guò)程中再改變)這兩部分組成的.</p><p>  圖2-4-2信息過(guò)濾系統(tǒng)的分類(lèi)</p><p><b>  信息過(guò)濾系統(tǒng)的結(jié)構(gòu)</b></p><p>  信息過(guò)濾系統(tǒng)[10-11]主要由信息提供模塊、用

51、戶需求描述模塊、過(guò)濾模塊和學(xué)習(xí)模塊組成.</p><p>  下面主要介紹這四大模塊的主要內(nèi)容:</p><p>  (1) 信息提供模塊的核心是信息分析器,其主要任務(wù)是對(duì)輸入系統(tǒng)的信息建立起統(tǒng)一的分析和描述.①可以先將信息描述成向量空間模型(VSM)或布爾模型(Boolean model),②然后每個(gè)輸入的信息經(jīng)過(guò)提取的特征進(jìn)行描述后,再提供給過(guò)濾模塊,③再根據(jù)一定的過(guò)濾算法與用戶需求進(jìn)

52、行匹配. </p><p>  (2)用戶需求描述模塊的主要任務(wù)是在由2.4.3節(jié)(1)中的向量空間模型所對(duì)應(yīng)的特征空</p><p>  間這一描述方式的基礎(chǔ)上,建立一個(gè)反映用戶客觀需求的模型.其中獲得并且描述用戶的過(guò)濾需求在整個(gè)信息過(guò)濾系統(tǒng)中占有重要的地位,而過(guò)濾的效果取決于用戶需求文檔的優(yōu)劣.因此,通常情況下都會(huì)從關(guān)鍵詞和文檔集來(lái)表達(dá)用戶過(guò)濾的需求,但是它們也有著局限性.</p

53、><p>  (3) 過(guò)濾模塊采用的算法直接決定了過(guò)濾結(jié)果的好壞,是整個(gè)信息過(guò)濾系統(tǒng)的核心部分.它的主要任務(wù)是計(jì)算并且判斷信息與用戶需求的相關(guān)性.典型的過(guò)濾模型如下:布爾模型、向量空間模型、概率推理模型、隱性語(yǔ)義索引(LSI)模型等, </p><p>  (4) 學(xué)習(xí)模塊的主要任務(wù)是先通過(guò)學(xué)習(xí)的方式逐步改進(jìn)用戶需求模型,然后增強(qiáng)過(guò)濾系</p><p>  統(tǒng)的準(zhǔn)確性.

54、主要表現(xiàn)為①檢測(cè)用戶興趣是否發(fā)生變化;②更新系統(tǒng)用戶模型profile;③提高后續(xù)過(guò)濾效果.</p><p>  文獻(xiàn)[10]給出了較詳細(xì)的信息過(guò)濾系統(tǒng)結(jié)構(gòu)圖:</p><p>  圖2-4-3信息過(guò)濾系統(tǒng)結(jié)構(gòu)圖</p><p><b>  文本的過(guò)濾匹配技術(shù)</b></p><p>  在文本過(guò)濾中最關(guān)鍵的一步是匹配,

55、而匹配的精度將直接影響被過(guò)濾文本的準(zhǔn)確度.根據(jù)文獻(xiàn)[1]中的相關(guān)內(nèi)容,具體總結(jié)了一種模糊匹配算法.</p><p>  已知字符串t的長(zhǎng)度為n,模式串p的長(zhǎng)度為m,一個(gè)正整數(shù)k<m,找出t中所有字串s滿足ed(s,p)<=k.其中,ed(s,p)是指把p轉(zhuǎn)變成s需要的修改次數(shù).</p><p>  在此基礎(chǔ)之上,文獻(xiàn)[7]進(jìn)行了改進(jìn),并且提出了近似匹配,使得過(guò)濾更為精確:用t[

56、i]和p[j]來(lái)表示接受比較的一對(duì)字符,用wrong 表示允許產(chǎn)生誤差的個(gè)數(shù).對(duì)文獻(xiàn)[1]與文獻(xiàn)[7]中的匹配結(jié)果進(jìn)行比較,判斷t[i]是否是為漢字;若不是,則進(jìn)行下一個(gè)字符t[i+1]和p[j]的匹配,否則將按照是否找到第1個(gè)匹配位置的情況討論.重復(fù)該過(guò)程,直到i=m 或j=n 時(shí)結(jié)束.</p><p><b>  算法描述:</b></p><p>  輸入:文本

57、串t[1, m]和模式串p[1, n],num 為找到匹配的個(gè)數(shù),count為不匹配個(gè)數(shù).</p><p>  while i<m and j<n</p><p><b>  do</b></p><p>  if T[i] = = P[j] then</p><p>  num 加1,繼續(xù)比較T 和P 的下

58、一個(gè)字符</p><p><b>  else</b></p><p>  if T[i]不是漢字,而P[j]是漢字,then</p><p>  用T 的下一字符和P 比較</p><p><b>  else</b></p><p>  if num==0 then<

59、;/p><p>  if T[i+1] = = P[j+1] then</p><p>  num 加1 ,繼續(xù)比較T 和P 的后2 個(gè)字符</p><p>  else 用T 的下一字符和P 比較</p><p>  else count 加1,繼續(xù)比較T 和P 的下一個(gè)字符</p><p>  if count 的數(shù)目

60、超過(guò)允許的最大誤差數(shù)目</p><p>  wrong then</p><p>  count 清零 ,num 清零,j 回到第1 次</p><p>  改進(jìn)的算法中,1)當(dāng)兩個(gè)字符失配時(shí),不是立即回溯,而是作進(jìn)一步的判斷,若出現(xiàn)特殊符號(hào),則直接跳過(guò);2)若不存在特殊符號(hào),而文本中已經(jīng)找到了部分匹配,且不匹配個(gè)數(shù)在允許的范圍之內(nèi),后面字符繼續(xù)匹配,一直到誤差超出

61、范圍且循環(huán)沒(méi)有結(jié)束,進(jìn)行回退.</p><p>  為了避免只對(duì)文本串中的首個(gè)字符做替換,在沒(méi)有找到匹配前,會(huì)根據(jù)文本串和模式串中下一個(gè)字符是否匹配決定兩個(gè)字串的移動(dòng)情況.最后,根據(jù)返回的結(jié)果來(lái)求解相似度,即查找到的匹配字符的個(gè)數(shù)占模式串總長(zhǎng)度的百分比.相似度的定義如下:</p><p>  quote = num/n;</p><p>  若quote>閾值

62、,則return 是不良短消息.</p><p>  理論上該算法的比較次數(shù)不會(huì)超過(guò)文本串的長(zhǎng)度.</p><p><b>  正則表達(dá)式</b></p><p>  正則表達(dá)式是一種可以用于模式匹配和替換的強(qiáng)有力的工具.其中,一個(gè)正則表達(dá)式就是由普通的字符(例如字符 a 到 z)以及特殊字符(稱(chēng)為元字符)組成的文字模式,它描述在查找文字主體時(shí)

63、待匹配的一個(gè)或多個(gè)字符串.正則表達(dá)式作為一個(gè)模板,將某個(gè)字符模式與所搜索的字符串進(jìn)行匹配.正則表達(dá)式在字符數(shù)據(jù)處理中起著非常重要的作用,我們可以用正則表達(dá)式完成大部分的數(shù)據(jù)分析處理工作.</p><p><b>  需求分析</b></p><p><b>  提出問(wèn)題</b></p><p>  隨著手機(jī)功能的日漸豐富以

64、及手機(jī)日常生活的緊密聯(lián)系,手機(jī)信息安全問(wèn)題在2006年以“安全”為電信日主題的時(shí)節(jié)里,再一次成為人們關(guān)注的焦點(diǎn).廣大手機(jī)用戶的信息安全意識(shí)被迅速激發(fā)而形成明確需求,一直以來(lái),手機(jī)信息安全已經(jīng)成為了全社會(huì)所重點(diǎn)關(guān)注的問(wèn)題,而當(dāng)信息安全從“單向”變?yōu)椤半p向”的時(shí)候,毫無(wú)疑問(wèn)人們所關(guān)注的問(wèn)題將會(huì)得到更加嚴(yán)密的保護(hù).</p><p>  手機(jī)在人們?nèi)粘I钪械闹匾砸呀?jīng)不言而喻,但同時(shí)它給人們也帶來(lái)巨大的威脅.手機(jī)內(nèi)部信

65、息的泄露、遺失或被盜,已經(jīng)成為人們“不可承受之重”,特別是對(duì)于一些身份顯赫的人,一旦信息丟失,后果不堪設(shè)想.然而手機(jī)信息安全絕非僅僅是社會(huì)精英層次面臨的問(wèn)題,隨著手機(jī)用途的日趨廣泛,如手機(jī)付費(fèi)、手機(jī)聯(lián)網(wǎng)等,手機(jī)信息安全已經(jīng)成為一個(gè)社會(huì)性的普遍問(wèn)題[11].</p><p>  由于3G時(shí)代的來(lái)臨,人們正在期望著手機(jī)的智能化給我們帶來(lái)的種種遐想.這預(yù)示著一個(gè)以手機(jī)為載體的移動(dòng)業(yè)務(wù)時(shí)代的來(lái)臨.另一方面,手機(jī)的高普及率

66、使得手機(jī)與個(gè)人的生活隱私、商業(yè)活動(dòng)緊密相關(guān),手機(jī)的使用安全和隱私安全問(wèn)題已經(jīng)顯得十分重要.</p><p>  手機(jī)作為一個(gè)日益重要的信息載體,如何對(duì)其內(nèi)部及通訊過(guò)程中的敏感信息進(jìn)行有效保護(hù),已經(jīng)成為亟待解決的問(wèn)題.因此,開(kāi)發(fā)一套融合實(shí)時(shí)監(jiān)控、短信發(fā)送、短信過(guò)濾等功能的手機(jī)信息安全系統(tǒng)是非常重要的.</p><p><b>  項(xiàng)目開(kāi)發(fā)目標(biāo)</b></p>

67、<p>  短消息過(guò)濾系統(tǒng)包括短消息發(fā)送、短消息過(guò)濾等工作.根據(jù)短消息過(guò)濾系統(tǒng)的需求和特點(diǎn),該系統(tǒng)運(yùn)行后,應(yīng)該達(dá)到以下目標(biāo):</p><p>  (1) 界面清晰美觀,能夠友好地與用戶進(jìn)行交互;</p><p>  (2) 通過(guò)特征匹配實(shí)現(xiàn)高效快速的垃圾短信的過(guò)濾;</p><p>  (3) 用戶可以對(duì)不良信息進(jìn)行添加和刪除;</p>

68、<p>  (4) 啟動(dòng)實(shí)時(shí)監(jiān)控后,系統(tǒng)對(duì)用戶操作進(jìn)行監(jiān)控并反饋監(jiān)聽(tīng)結(jié)果;</p><p>  (5) 系統(tǒng)運(yùn)行穩(wěn)定、安全可靠.</p><p><b>  系統(tǒng)的開(kāi)發(fā)環(huán)境</b></p><p>  下載JDK和Eclipse(www.sun.com)</p><p>  安裝SUN JDK:jdk-1_5_

69、0_06-windows-i586-p.exe</p><p>  安裝 Eclipse:Eclipse3.2中文版(詳見(jiàn)參考文獻(xiàn)[3-4]).</p><p><b>  可行性分析</b></p><p><b>  技術(shù)可行性</b></p><p>  本系統(tǒng)是在Eclipse 集成開(kāi)發(fā)環(huán)境

70、下,使用Java語(yǔ)言設(shè)計(jì)完成的.下面主要來(lái)闡述一下技術(shù)可行性的相關(guān)內(nèi)容.</p><p>  技術(shù)上的可行性分析主要是考慮將來(lái)要采用的硬件和軟件技術(shù)能否滿足用戶提出的要求(如計(jì)算機(jī)的容量、速度等),隨著信息技術(shù)的發(fā)展,現(xiàn)在一般的電腦內(nèi)存都已達(dá)到1G,雙核處理器也很普遍,硬盤(pán)的存儲(chǔ)容量基本上在250G到1T的范圍.因此硬件技術(shù)能夠支持上述軟件的正常運(yùn)行.此外,還要考慮開(kāi)發(fā)人員的水平,作為計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)畢業(yè)的學(xué)

71、生,我們掌握了Java語(yǔ)言及其應(yīng)用技術(shù)、軟件工程、數(shù)據(jù)結(jié)構(gòu)、計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)等課程,對(duì)所開(kāi)發(fā)軟件的設(shè)計(jì)、應(yīng)用、維護(hù)有了深刻的認(rèn)識(shí)與一定的動(dòng)手實(shí)踐能力,從一定程度上具備了開(kāi)發(fā)一個(gè)小型系統(tǒng)的能力.</p><p>  Windows 2000/XP操作系統(tǒng)的穩(wěn)定性,安全性可滿足用戶的要求.關(guān)于本作品的開(kāi)發(fā)環(huán)境,就是JDK和Eclipse,JDK提供了虛擬機(jī)來(lái)運(yùn)行應(yīng)用程序,Eclipse及其它插件提供了個(gè)開(kāi)發(fā)測(cè)試程序代碼

72、的IDE集成開(kāi)發(fā)環(huán)境.具有良好的可移植性和可維護(hù)性[13].</p><p><b>  實(shí)用性</b></p><p>  隨著計(jì)算機(jī)技術(shù)日漸成熟和智能手機(jī)的迅猛發(fā)展,建立起手機(jī)信息安全系統(tǒng)是現(xiàn)在發(fā)展的必然要求,其強(qiáng)大的功能已被人們所深刻認(rèn)識(shí),使用這樣的手機(jī)安全管理方式提供的服務(wù)是有效的、規(guī)范的、統(tǒng)一的,它有著傳統(tǒng)手工信息管理所無(wú)法比擬的優(yōu)點(diǎn):①安全性能高、②保密性

73、好、③短信過(guò)濾迅速、④壽命長(zhǎng)、⑤成本低等.</p><p>  能夠十分有效地保護(hù)手機(jī)信息安全,使手機(jī)信息管理智能化、科學(xué)化,保證人們工作的簡(jiǎn)便化.另外,本系統(tǒng)界面友好,操作簡(jiǎn)單方便,不需要太多專(zhuān)業(yè)知識(shí),易被用戶接受.因此,本系統(tǒng)在操作上是可行的.</p><p><b>  系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)</b></p><p><b>  系統(tǒng)總

74、體設(shè)計(jì)</b></p><p>  本系統(tǒng)是在Eclipse集成開(kāi)發(fā)環(huán)境下,運(yùn)用Java語(yǔ)言設(shè)計(jì)完成的.短消息過(guò)濾系統(tǒng)實(shí)現(xiàn)了對(duì)手機(jī)的短信過(guò)濾功能.短消息過(guò)濾系統(tǒng)結(jié)構(gòu)圖如圖5-1所示.</p><p>  圖5-1短消息過(guò)濾系統(tǒng)結(jié)構(gòu)圖</p><p>  為了實(shí)現(xiàn)短消息過(guò)濾,下面運(yùn)用java網(wǎng)絡(luò)編程技術(shù)[14-15],實(shí)現(xiàn)代碼:</p>&l

75、t;p>  (1) 短信發(fā)送和接收模塊</p><p>  用戶按“確定”鍵可以接收短信和發(fā)送短信,按“取消”鍵可以修改短信內(nèi)容.其主要代碼為:</p><p>  private void communication() throws IOException {</p><p>  String message = "連接成功!";<

76、;/p><p>  sendData(message);</p><p>  // setTextFieldEditable(true);</p><p><b>  do {</b></p><p><b>  try {</b></p><p>  message = (St

77、ring) input.readObject();</p><p>  displayMessage("\n" + message);</p><p><b>  }</b></p><p>  catch (ClassNotFoundException classNotFoundException) {</p>

78、<p>  displayMessage("\n收到異常對(duì)象類(lèi)型");</p><p><b>  }</b></p><p>  } while (!message.equals("客戶端>>> stop"));</p><p><b>  }</b>

79、;</p><p>  (2) 短信過(guò)濾模塊</p><p>  當(dāng)用戶收到短信時(shí),系統(tǒng)會(huì)提取短信中的內(nèi)容與filter文檔里的關(guān)鍵字進(jìn)行匹配.匹配成功,則用*代替關(guān)鍵字;匹配失敗,進(jìn)行正常發(fā)送.主要代碼為:</p><p>  private void sendData(String message) {</p><p><b>

80、  try {</b></p><p>  String regEx = "[`~!@#$%^&*()+=|{}''\\[\\]<>/?~!@#¥%……&*()——+|{}【】‘;:”“’.、?]";</p><p>  Pattern p = Pattern.compile(regEx);</p>

81、<p>  Matcher m = p.matcher(message);</p><p>  message= m.replaceAll("").trim();</p><p>  for(int i=0;i<filterstr.size();i++){</p><p>  message=message.replaceAll

82、(filterstr.get(i),this.getStars(filterstr.get(i)));</p><p><b>  }</b></p><p>  output.writeObject(message);</p><p>  output.flush();</p><p>  //displayMe

83、ssage("\n服務(wù)器端>>> " + message);</p><p><b>  }</b></p><p>  catch (IOException ioException) {</p><p>  displayArea.append("\n發(fā)生寫(xiě)入錯(cuò)誤");</p&g

84、t;<p><b>  }</b></p><p><b>  }</b></p><p>  (3) 實(shí)時(shí)監(jiān)控模塊</p><p>  實(shí)時(shí)監(jiān)控模塊可由用戶自行決定啟動(dòng)或停止,此模塊可以監(jiān)聽(tīng)用戶的操作,同時(shí)會(huì)將結(jié)果反饋給監(jiān)聽(tīng)測(cè)試模塊,當(dāng)用戶點(diǎn)擊監(jiān)聽(tīng)測(cè)試時(shí),系統(tǒng)會(huì)顯示監(jiān)聽(tīng)結(jié)果.主要代碼為:</p>

85、<p>  public void init() {</p><p>  this.readTxt("c:/filter.txt");</p><p>  Container container = getContentPane();</p><p>  myPanel = new JPanel();</p><

86、p>  myPanel.setLayout(null);</p><p>  int x = 10, y = 10, width = 170, height = 100;</p><p>  String name = "";</p><p>  displayArea = new JTextArea(5, 20);</p>

87、<p>  JButton[] jb = new JButton[22];</p><p>  // this.setContentPane(myPanel);</p><p>  displayArea.setBounds(x, y, width, height);</p><p>  container.add(new JScrollPane(disp

88、layArea), BorderLayout.NORTH);</p><p>  container.add(myPanel);</p><p><b>  y += 0;</b></p><p>  width = 35;</p><p>  height = 20;</p><p>  //

89、確定鍵 取消鍵 接聽(tīng)鍵 掛機(jī)鍵</p><p>  name = "確認(rèn)";</p><p>  jb[10] = this.makebutton(name, x, y, width, height, myPanel);</p><p>  jb[10].addActionListener(new ActionListener() {<

90、/p><p>  public void actionPerformed(ActionEvent event) {</p><p>  sendData(displayArea.getText());</p><p>  displayArea.setText("");</p><p><b>  }</b&g

91、t;</p><p><b>  });</b></p><p><b>  x += 135;</b></p><p>  name = "取消";</p><p>  jb[11] = this.makebutton(name, x, y, width, height, my

92、Panel);</p><p>  jb[11].addActionListener(new ActionListener() {</p><p>  public void actionPerformed(ActionEvent event) {</p><p>  String str=displayArea.getText();</p><

93、p>  displayArea.setText(str.substring(0,str.length()-1));</p><p><b>  }</b></p><p><b>  });</b></p><p><b>  x = 10;</b></p><p>&l

94、t;b>  y += 25;</b></p><p>  width = 35;</p><p>  height = 20;</p><p>  name = "接聽(tīng)";</p><p>  jb[12] = this.makebutton(name, x, y, width, height, myPa

95、nel);</p><p><b>  x += 135;</b></p><p>  name = "掛機(jī)";</p><p>  jb[13] = this.makebutton(name, x, y, width, height, myPanel);</p><p>  jb[13].addAc

96、tionListener(new ActionListener() {</p><p>  public void actionPerformed(ActionEvent event) {</p><p>  disconnect();</p><p><b>  }</b></p><p><b>  });

97、</b></p><p><b>  // 1...9</b></p><p>  char c = 'a';</p><p><b>  x = 15;</b></p><p><b>  y += 20;</b></p><

98、;p>  width = 45;</p><p>  height = 45;</p><p>  for (int i = 1; i < 10; i++) {</p><p>  if (i == 9) {</p><p>  jb[i] = this.makebutton(i + "" + (c++) +

99、(c++), x, y, width,</p><p>  height, myPanel);</p><p><b>  } else {</b></p><p>  jb[i] = this.makebutton(i + "" + (c++) + (c++) + (c++), x, y,</p><p

100、>  width, height, myPanel);</p><p><b>  }</b></p><p>  if (i % 3 == 0) {</p><p><b>  x = 15;</b></p><p><b>  y += 55;</b>&l

101、t;/p><p><b>  } else {</b></p><p><b>  x += 55;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  // *

102、0#</b></p><p><b>  // x=15;</b></p><p><b>  // y+=55;</b></p><p>  jb[19] = this.makebutton("*", x, y, width, height, myPanel);</p>&l

103、t;p><b>  x += 55;</b></p><p>  jb[0] = this.makebutton("0", x, y, width, height, myPanel);</p><p><b>  x += 55;</b></p><p>  jb[20] = this.makeb

104、utton("#", x, y, width, height, myPanel);</p><p>  for(int i=0;i<10;i++){</p><p>  jb[i].addActionListener(new ActionListener() {</p><p>  public void actionPerformed(A

105、ctionEvent event) {</p><p>  String str=displayArea.getText();</p><p>  displayArea.setText(str+event.getActionCommand().substring(0,1));</p><p><b>  }</b></p>&l

106、t;p><b>  });</b></p><p><b>  }</b></p><p>  for(int i=19;i<21;i++){</p><p>  jb[i].addActionListener(new ActionListener() {</p><p>  publ

107、ic void actionPerformed(ActionEvent event) {</p><p>  String str=displayArea.getText();</p><p>  displayArea.setText(str+event.getActionCommand().substring(0,1));</p><p><b>  

108、}</b></p><p><b>  });</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  界面設(shè)計(jì)</b></p><p>  系統(tǒng)界面包括可視

109、化窗口,對(duì)手機(jī)信息的發(fā)送、接收、查看、刪除和設(shè)置等,具體功能如</p><p><b>  圖5-2所示.</b></p><p>  圖5-2短消息過(guò)濾系統(tǒng)界面</p><p><b>  系統(tǒng)流程分析</b></p><p>  所謂系統(tǒng)流程分析就是用戶在使用系統(tǒng)時(shí)的工作過(guò)程.系統(tǒng)流程圖如圖5-

110、3所示.</p><p>  圖5-3短消息過(guò)濾系統(tǒng)流程圖</p><p>  (1) 文本短消息發(fā)送功能</p><p>  當(dāng)運(yùn)行TalkServer.jar時(shí),界面會(huì)顯示“服務(wù)器已啟動(dòng),等待連接...”字樣;當(dāng)運(yùn)行TalkClient.jar后,界面會(huì)顯示“正在嘗試連接…”“連接成功”等字樣,說(shuō)明此時(shí)軟件已經(jīng)正常運(yùn)行,可以發(fā)送文本短消息.在服務(wù)器端窗口輸入任意

111、文字,并按下界面上的確認(rèn)按鈕,短消息即會(huì)發(fā)送,發(fā)送的短消息將顯示在客戶端窗口中.</p><p>  (2) 文本短消息過(guò)濾功能</p><p>  在“C:\”目錄下新建一個(gè)TXT文本文件,并重命名為Filter.txt,打開(kāi)文件,輸入希望過(guò)濾的敏感詞匯,例如“法輪功”、“邪教”、“明慧網(wǎng)”等.重新啟動(dòng)客戶端和服務(wù)器端.在服務(wù)器端輸入包含敏感詞的短信內(nèi)容,并按下確認(rèn)按鈕,短信將發(fā)送.本軟

112、件同時(shí)考慮到網(wǎng)上現(xiàn)在較為流行的一種規(guī)避過(guò)濾的方式,避免自己的短信息遭到過(guò)濾,在短消息敏感詞匯中添加符號(hào),使該敏感信息繞開(kāi)過(guò)濾軟件,發(fā)送到目的手機(jī)上.例如將“法輪功”寫(xiě)成“法@輪#功”.我們利用了正則表達(dá)式這一有力的工具,解決了這個(gè)比較棘手的問(wèn)題. </p><p><b>  系統(tǒng)測(cè)試與分析</b></p><p>  在完成了程序的編寫(xiě)工作后,接下來(lái)就是進(jìn)行軟件的測(cè)

113、試,這里說(shuō)的軟件并不單指程序本身還包括其他方面.測(cè)試和開(kāi)發(fā)一樣,也是一項(xiàng)技術(shù)性很強(qiáng)的工作,有著很多的技巧.軟件測(cè)試是軟件質(zhì)量保證的主要活動(dòng)之一,所以測(cè)試的質(zhì)量直接影響軟件的質(zhì)量.</p><p><b>  測(cè)試的過(guò)程及目標(biāo)</b></p><p>  軟件測(cè)試就是在軟件運(yùn)行前對(duì)軟件的需求分析、設(shè)計(jì)規(guī)格說(shuō)明和編碼的最終復(fù)審,是保證軟件質(zhì)量十分關(guān)鍵的步驟.如果要給軟件測(cè)

114、試下定義,那么軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程.</p><p>  因?yàn)檐浖e(cuò)誤具有復(fù)雜性、多樣性等特點(diǎn),軟件測(cè)試需要綜合應(yīng)用測(cè)試技術(shù),軟件測(cè)試分為單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試和系統(tǒng)測(cè)試.測(cè)試的目標(biāo)是以最少的時(shí)間和人力找出軟件中潛在的各種錯(cuò)誤和缺陷.</p><p>  短消息過(guò)濾系統(tǒng)的測(cè)試</p><p>  在完成編碼的工作以后,根據(jù)6.1節(jié)的方法進(jìn)行了

115、如下的測(cè)試:</p><p>  (1) 界面測(cè)試:在手機(jī)界面上反復(fù)點(diǎn)擊各個(gè)按鈕,測(cè)試其連接情況,直到所有的鏈接都達(dá)到預(yù)期的效果. </p><p>  發(fā)送文字: 接收成功:</p><p>  圖6-1 正常發(fā)送英文短消息</p><p>  發(fā)送中文:

116、 成功接收:</p><p>  圖6-2 正常發(fā)送中文短消息</p><p>  輸入內(nèi)容: 接收成功,并成功過(guò)濾:</p><p>  圖6-3 含有關(guān)鍵字的短消息過(guò)濾發(fā)送</p><p>  輸入帶有特殊內(nèi)容

117、的文本: 接收成功,并成功過(guò)濾:</p><p>  圖6-4 含有摻雜亂碼的關(guān)鍵字的短消息過(guò)濾發(fā)送</p><p>  (2) 需求測(cè)試:根據(jù)需求分析的內(nèi)容,測(cè)試需求是否和當(dāng)初的設(shè)計(jì)一樣.</p><p>  為了測(cè)試結(jié)果更加準(zhǔn)確,我在實(shí)驗(yàn)室做了一些實(shí)驗(yàn),共有107人參加,每人的實(shí)驗(yàn)短信條數(shù)為35-50條.他們的實(shí)驗(yàn)數(shù)據(jù)和實(shí)

118、驗(yàn)結(jié)果如圖6-5(分為實(shí)驗(yàn)者編號(hào)和過(guò)濾成功率)所示.</p><p>  圖6-5 短信消息過(guò)濾系統(tǒng)實(shí)驗(yàn)結(jié)果</p><p>  通過(guò)這幾方面的測(cè)試,我及時(shí)地修正了系統(tǒng)中存在的問(wèn)題,很好的提高了系統(tǒng)的性能,達(dá)到了預(yù)期目標(biāo).</p><p><b>  性能分析</b></p><p>  通過(guò)實(shí)際操作,發(fā)現(xiàn)本系統(tǒng)長(zhǎng)時(shí)間

119、不間斷連續(xù)運(yùn)行后也不會(huì)出現(xiàn)錯(cuò)誤,系統(tǒng)不會(huì)出現(xiàn)嚴(yán)重的錯(cuò)誤,并且由于有較高的容錯(cuò)技術(shù),能較快的糾正意外錯(cuò)誤,使系統(tǒng)穩(wěn)定可靠.</p><p>  本文講究的系統(tǒng)不僅能夠準(zhǔn)確、快速的處理短消息過(guò)濾所出現(xiàn)的問(wèn)題,還能夠基本滿足用戶的需求,使系統(tǒng)簡(jiǎn)單實(shí)用.然而經(jīng)過(guò)性能測(cè)試得出,短信消息過(guò)濾系統(tǒng)的功能還不是很完善,有一定的缺陷和限制,其界面設(shè)計(jì)還有些簡(jiǎn)單,樣式還不是特別美觀等不足,有待于進(jìn)一步的研究和設(shè)計(jì).不過(guò)具體功能能夠完

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論