《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于Java編程的校內(nèi)搜索軟件的設(shè)計
基于Java編程的校內(nèi)搜索軟件的設(shè)計
來源:微型機(jī)與應(yīng)用2012年第23期
孫文華
(南昌工程學(xué)院 網(wǎng)絡(luò)信息中心,江西 南昌 330099)
摘要: 如何在各高校內(nèi)部成百上千個資源站點(diǎn)中,快速有效地查找到所需信息成為網(wǎng)絡(luò)用戶面臨的一個突出問題。為此提出了一款校內(nèi)搜索引擎軟件的設(shè)計,解決了當(dāng)前各高校大學(xué)生對本校信息難于快速有效獲取的問題。
Abstract:
Key words :

摘  要: 如何在各高校內(nèi)部成百上千個資源站點(diǎn)中,快速有效地查找到所需信息成為網(wǎng)絡(luò)用戶面臨的一個突出問題。為此提出了一款校內(nèi)搜索引擎軟件設(shè)計,解決了當(dāng)前各高校大學(xué)生對本校信息難于快速有效獲取的問題。
關(guān)鍵詞: Java;校內(nèi);搜索引擎;設(shè)計

 當(dāng)前,面對浩瀚的網(wǎng)絡(luò)資源,搜索引擎為所有網(wǎng)上沖浪的用戶提供了一個入口,所有的用戶都可以借助于搜索引擎到達(dá)自己想去的網(wǎng)上任何一個地方。隨著Internet的快速發(fā)展,海量信息和人們獲取所需信息能力之間的矛盾日益明顯,在信息海洋里查找信息,如同大海撈針一樣,而搜索引擎的出現(xiàn)正好解決了這一難題。
目前高校校內(nèi)信息量的不斷增加,面對浩瀚的網(wǎng)絡(luò)信息,選擇資源范圍廣而針對性不強(qiáng),很難搜到符合自己的資源。針對這種情況,本文提出了一款校內(nèi)搜索軟件的設(shè)計與實(shí)現(xiàn)方法。該軟件采用Java語言開發(fā),是一款簡易且實(shí)用的校內(nèi)搜索引擎軟件。
1 設(shè)計原理
 搜索引擎系統(tǒng)[1]通常是指互聯(lián)網(wǎng)信息檢索系統(tǒng)。本系統(tǒng)是建立在通過網(wǎng)絡(luò)爬蟲軟件抓取大量的網(wǎng)絡(luò)資源的基礎(chǔ)上進(jìn)行開發(fā)設(shè)計的,系統(tǒng)通過對抓取的網(wǎng)頁文件進(jìn)行智能提取、去標(biāo)注、內(nèi)容分析等處理,再經(jīng)過索引加載建立索引數(shù)據(jù)庫。用戶可以通過搜索頁面查詢索引數(shù)據(jù)庫,返回包含所有匹配查詢關(guān)鍵詞的網(wǎng)頁[2]。
校內(nèi)搜索引擎軟件的設(shè)計原理如圖1所示,其原理如下:(1)通過網(wǎng)絡(luò)爬蟲軟件抓取網(wǎng)頁內(nèi)容;(2)從抓取的網(wǎng)頁文件中獲取索引表,索引表內(nèi)容為每個文件的序號與網(wǎng)址信息,得到網(wǎng)頁文件庫里面的內(nèi)容即為網(wǎng)頁文件;(3)對得到的網(wǎng)頁文件庫進(jìn)行處理,使用正則表達(dá)式去除網(wǎng)頁標(biāo)注信息,得到的新內(nèi)容存放在一個新的文件夾中,作為內(nèi)容信息庫;(4)根據(jù)網(wǎng)頁文件庫和索引表,得到一個新的文件(也稱為標(biāo)題和網(wǎng)址信息庫),其里面的內(nèi)容為每個文件的序號、標(biāo)題和網(wǎng)址等信息;(5)當(dāng)用戶需要查找自己需要的信息時,只要輸入關(guān)鍵詞,搜索引擎軟件根據(jù)用戶輸入的關(guān)鍵詞在內(nèi)容信息庫中進(jìn)行查找[3],如果內(nèi)容信息庫中存在用戶查找的內(nèi)容,軟件將根據(jù)給內(nèi)容所在的文件序號,在標(biāo)題和網(wǎng)址信息庫中提取出該內(nèi)容所在的標(biāo)題與網(wǎng)址等信息,最后再加上內(nèi)容信息庫中與關(guān)鍵詞相關(guān)的內(nèi)容信息作為查找的結(jié)果顯示出來。

2 具體算法實(shí)現(xiàn)
 搜索引擎軟件開發(fā)環(huán)境:Myeclipse平臺,使用Java語言。首先可以Myeclipse平臺新建一個java project,在新建的project中需要導(dǎo)入下面一些相關(guān)的文件:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
 搜索引擎軟件中獲得搜索結(jié)果的搜索函數(shù)核心代碼如下:    
    //根據(jù)用戶輸入的關(guān)鍵詞,在相應(yīng)的庫中進(jìn)行搜索,并返回搜索結(jié)果信息
    private static String search(String[] str, int n, String filepath)
    {
        String all=null;
        File file=new File(filepath);
        try{
            String[] filelist=file.list();
            for(int i=0,flen=filelist.length;i<flen; i++)
            {
                File readfile=new File(filepath+"\\"+
 filelist[i]);
                String upname=readfile.getName();
                upname=upname.substring(0,upname.length
()-4);//去掉文件名中的.txt用于后面找網(wǎng)址
                BufferedReader br=new BufferedReader
(new FileReader(
                            readfile));
                String s="", ss=br.readLine();
                while (ss != null)
                {
                    s=s+ss;//s中存放文件內(nèi)容的信息
                    ss=br.readLine();
                }
                //判斷當(dāng)前讀入的記錄行中是否有
      //輸入的關(guān)鍵詞,輸入了幾個關(guān)鍵詞
                switch (n)
                {
                    case 1://1個關(guān)鍵詞的情況
                        int end=s.indexOf(str[0]);
                        if (end != -1)
                        {
                            upname=Url(upname);
//獲取存標(biāo)題與網(wǎng)址信息
                            s=s.substring(end, 20);
//取關(guān)鍵字后的20個字符
                            all=all+"\n"+upname+"
關(guān)鍵字內(nèi)容:"+s;
                                flag=1;
                                break;
                            } else
                                break;
                    case 2://2個及多個關(guān)鍵詞的情況
                            ......
                }
                br.close();//一定要關(guān)閉資源
            }
    } catch (FileNotFoundException e)
    {
        e.printStackTrace();
    } catch (IOException e)
    {
        e.printStackTrace();
    }
    return all;
 }
 搜索函數(shù)中調(diào)用的其他主要函數(shù)代碼如下:
    // 通過傳遞的文件名參數(shù),在文件TitleInfo中查找得到與此文件名對應(yīng)的標(biāo)題信息+網(wǎng)址信息
    public static String Url(String filename)
    {
        String filepath="D:\\test\\TitleInfo\\TitleInfo.txt";
        File file=new File(filepath);
        String url="";
        try
        {
            BufferedReader br=new BufferedReader(new
 FileReader(file));
            String s=br.readLine();//讀入第一行信息
            while (s !=null)
            {
             if(s.indexOf(filename)!=-1)
                {
            url=s.substring(s.indexOf("標(biāo)題"),s.length());
              //取該行標(biāo)題后的信息
                    break;
                } else
                s=br.readLine();//讀入下一行的信息
            }
            br.close();//一定要關(guān)閉資源
        } catch (FileNotFoundException e)
        {
            e.printStackTrace();
        } catch (IOException e)
        {
            e.printStackTrace();
        }
        return url;
    }
 至此,完成了搜索引擎軟件代碼的編寫工作,接下來可以進(jìn)行run操作(即可以在指定內(nèi)容信息庫與標(biāo)題和網(wǎng)址信息庫中進(jìn)行操作),返回用戶查找的相關(guān)網(wǎng)頁文件的序號、標(biāo)題、網(wǎng)址和主要內(nèi)容等信息的結(jié)果。
3 實(shí)驗(yàn)結(jié)果分析
 內(nèi)容信息庫的存放路徑為D:\test\ContentInfo;內(nèi)容信息庫中的內(nèi)容如圖2所示。標(biāo)題和網(wǎng)址信息庫的存放路徑為D:\test\TitleInfo;文件庫中存放了標(biāo)題和網(wǎng)址信息文件,文件名為TitleInfo.txt,其內(nèi)容如圖3所示。

 運(yùn)行該搜索引擎軟件,得出的輸出結(jié)果如圖4所示。

 由圖4可以看到,通過該系統(tǒng)可以把待測文件中臟字及臟詞組出現(xiàn)的次數(shù)全部顯示出來,其結(jié)果與實(shí)際情況完全一致。
 針對當(dāng)前網(wǎng)絡(luò)在高校的應(yīng)用越來越普及,校內(nèi)網(wǎng)絡(luò)中的資源也越來越多,而目前市場上的搜索軟件(如百度、谷歌的)又難以滿足實(shí)踐的需要,并且有些搜索軟件比較昂貴。本文在基于這些問題的情況下進(jìn)行研究 與分析,提出了校內(nèi)網(wǎng)絡(luò)資源搜索軟件的設(shè)計方法,并在Myeclipse環(huán)境下通過Java語言實(shí)現(xiàn)了這種方法,為高校校內(nèi)網(wǎng)絡(luò)資源的搜索提供了一種方法。另外,可以在此基礎(chǔ)上進(jìn)行二次開發(fā),作者就在此基礎(chǔ)上完成了Web界面上的搜索(類似百度的功能)。本軟件在南昌工程學(xué)院已開始試用,如圖5所示。

 根據(jù)本文的設(shè)計原理,用戶可以根據(jù)自己的實(shí)際需要,在界面上改進(jìn)與調(diào)整。
參考文獻(xiàn)
[1] 梁斌.走進(jìn)搜索引擎[M].北京:電子工業(yè)出版社,2007.
[2] 宋春陽.Web搜索引擎技術(shù)綜述[J].現(xiàn)代計算機(jī),2008(5).
[3] 徐寶文.搜索引擎與信息獲取技術(shù)[M].北京:清華大學(xué)出版社,2003.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久噜噜噜精品国产亚洲综合| 欧美成人免费大片| 久久精品日韩欧美| 亚洲一区二区免费| 99精品福利视频| 亚洲免费高清| 亚洲精品中文字幕女同| 亚洲欧洲日韩在线| 亚洲激情综合| 亚洲国产精品成人| 亚洲欧洲综合另类| 亚洲精品久久久蜜桃| 91久久极品少妇xxxxⅹ软件| 亚洲高清视频一区二区| 亚洲国产成人久久| 亚洲精品孕妇| 一区二区三区毛片| 亚洲一级电影| 午夜国产不卡在线观看视频| 性娇小13――14欧美| 午夜久久tv| 久久国产精品99久久久久久老狼| 欧美与欧洲交xxxx免费观看 | 欧美电影在线播放| 欧美成人精品不卡视频在线观看| 免费视频亚洲| 欧美日韩精品一二三区| 欧美午夜片在线观看| 国产精品亚洲不卡a| 国产婷婷色综合av蜜臀av | 狠狠色综合日日| 亚洲成人资源| 99热精品在线| 午夜精品久久久久影视| 亚洲成人在线网站| 亚洲精品国偷自产在线99热| 在线亚洲+欧美+日本专区| 亚洲黑丝在线| 香蕉久久夜色精品国产使用方法| 亚洲一区二区三区在线播放| 欧美专区日韩视频| 亚洲每日在线| 午夜精品999| 免费不卡视频| 欧美日韩亚洲成人| 国产婷婷色一区二区三区四区 | 亚洲黄色有码视频| 一区二区三区视频观看| 欧美一区二区视频观看视频| 蜜桃av噜噜一区| 欧美色综合网| 黄色亚洲大片免费在线观看| 日韩视频精品在线| 亚洲免费视频一区二区| 亚洲国产另类精品专区| 中国av一区| 久久久久久9| 欧美黄免费看| 国产日韩一区二区| 亚洲毛片在线观看| 久久精品日产第一区二区三区| 一区二区三区免费观看| 亚洲欧美国产高清va在线播| 久久综合色影院| 国产精品久久久久99| 樱桃国产成人精品视频| 99国产精品久久久久老师| 欧美一区二区视频免费观看| avtt综合网| 久久亚洲电影| 国产精品女人久久久久久| 亚洲国产成人午夜在线一区| 亚洲香蕉视频| 日韩午夜免费| 久久久久欧美| 国产精品久久久久毛片大屁完整版| 依依成人综合视频| 亚洲欧美在线观看| 亚洲少妇中出一区| 猛男gaygay欧美视频| 国产乱码精品| 一本色道久久综合亚洲精品小说 | 亚洲欧美综合精品久久成人| 一区二区毛片| 欧美成人免费在线视频| 国产乱码精品一区二区三区五月婷 | 欧美亚洲在线| 欧美性色综合| 亚洲激情中文1区| 亚洲高清在线观看| 久久成人综合网| 国产精品进线69影院| 日韩一级免费| 99国产精品国产精品毛片| 久久天堂av综合合色| 国产精品夜夜夜| 一区二区三区日韩精品| 日韩午夜黄色| 欧美精品videossex性护士| 尤物在线精品| 久久精品国产999大香线蕉| 久久福利一区| 国产精品视频午夜| 洋洋av久久久久久久一区| 亚洲香蕉在线观看| 亚洲视频电影在线| 欧美久久一级| 亚洲欧洲视频| 日韩亚洲欧美成人| 欧美激情一区二区三区蜜桃视频| 精品电影在线观看| 亚洲高清久久网| 狂野欧美一区| 在线视频成人| 亚洲黑丝在线| 麻豆9191精品国产| 在线日韩中文字幕| 日韩亚洲成人av在线| 欧美精品在线免费观看| 亚洲日韩视频| 中文亚洲欧美| 国产精品免费看片| 亚洲欧美成人| 久久久久国产成人精品亚洲午夜| 国产女优一区| 亚洲大胆av| 欧美韩日一区二区| 亚洲精品一区二区三区婷婷月 | 久久人人爽爽爽人久久久| 国产主播精品| 亚洲欧洲免费视频| 欧美区在线播放| 一级日韩一区在线观看| 午夜精品区一区二区三| 国产亚洲精品综合一区91| 久久国产欧美日韩精品| 久久亚洲综合网| 亚洲精品1234| 亚洲一区二区三区在线观看视频| 国产精品区一区二区三区| 亚洲欧美日韩综合国产aⅴ| 久久九九精品99国产精品| 激情久久综艺| 夜夜狂射影院欧美极品| 国产精品国产三级国产专区53| 亚洲欧美日韩精品久久| 老牛影视一区二区三区| 亚洲日韩欧美视频一区| 午夜精品www| 影音先锋久久资源网| 一区二区三区四区精品| 国产日本亚洲高清| 亚洲日本久久| 国产精品chinese| 欧美一区二视频| 欧美二区在线| 亚洲欧美成人一区二区三区| 久久久久五月天| 亚洲日本黄色| 久久精品国产99国产精品| 尤物yw午夜国产精品视频明星| 亚洲网站在线观看| 国产综合久久久久影院| 一区二区激情视频| 国产一区二区三区观看 | 欧美精品粉嫩高潮一区二区| 亚洲少妇一区| 久久夜色精品国产| 99这里只有精品| 久久久久久一区二区三区| 亚洲精品在线观看视频| 欧美在线视频一区| 亚洲欧洲精品一区二区三区波多野1战4| 午夜国产欧美理论在线播放 | 99re6这里只有精品| 国产美女诱惑一区二区| 亚洲欧洲精品一区二区三区不卡| 国产精品九九| 亚洲精选国产| 国产一区二区三区在线免费观看| 中日韩男男gay无套| 一色屋精品视频在线观看网站| 亚洲午夜激情| 亚洲国产成人久久| 欧美在线亚洲综合一区| 亚洲美女黄色片| 久久综合九色综合欧美就去吻| 一本到12不卡视频在线dvd| 久热精品视频在线观看| 亚洲天堂网在线观看| 男女精品视频| 性欧美xxxx视频在线观看| 欧美日韩一区二区在线| 久久精品一区二区三区不卡牛牛| 国产精品高清网站| 日韩一二三在线视频播| 伊人伊人伊人久久| 久久国产成人| 亚洲一区bb| 欧美极品一区|