zoukankan      html  css  js  c++  java
  • 在ASP.NET网站运行开始时载入全局数据

    在实现中文分词的过程中,利用ASP.NET网站展示的时候会涉及到一个问题就是:

      做网页端的时候,需要将分词词典预先载入内存,然后对用户的每一次查询都先进行分词处理,然后再提交数据库查询,这样能搜到更多的数据。
        向内存中载入词典大约需要2秒钟的时间,在服务器一直运行的时间只需载入一次,public void LoadWordandHash()函数负责载入,肯定不能是每次查询都得载入。另外基于ASP.NET的网站的web服务器是IIS7。
    解决方法:
    利用Global.asax文件
    void Application_Start(object sender, EventArgs e) 
    {
            //在应用程序启动时运行的代码
            WordDict my = new WordDict();
         //载入词典 my.LoadWordandHash(); }

    其中WordDictHash是全局的静态哈希表变量 ,以后访问哈希表时就可以直接访问了

    static public List<string> WordList = new List<string>();
    static public Hashtable WordDictHash = new Hashtable();

    这样在网站部署的时候只需要载入一次哈希词典,在网站的运行期间一直在内存中存在,供用户使用。

    执行效果:

    如图所示:用户提交查询字符串“中华人民共和国宪法”,服务器可以在很短的时间内进行中文分词,分割出“中华”“人民”“共和国”“宪法”

  • 相关阅读:
    ajaxpro.2.dll web.config配置
    .net中Cookie的用法
    js,cookies做悬浮购物车
    Request.UrlReferrer为空的解决
    repeater里添加序号的方法
    asp.net 母版页使用详解转
    js继承的几种实现方法
    .net用母版页和内容页实现动态Title(副标题_主标题)
    linux c数据库备份第一版
    关于sql多表去重问题
  • 原文地址:https://www.cnblogs.com/lijingpeng/p/2473645.html
Copyright © 2011-2022 走看看