千家信息网

学习日志---打造搜索引擎搜索提示

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,打包过程将网站程序打成war包,使用clean package;将war包放到服务器的tomcat上的webapps中;在conf的目录下更改server.xml文件:加上如下编码,更改编码方式,防止
千家信息网最后更新 2024年09月22日学习日志---打造搜索引擎搜索提示

打包过程

将网站程序打成war包,使用clean package;

将war包放到服务器的tomcat上的webapps中;

在conf的目录下更改server.xml文件:

加上如下编码,更改编码方式,防止乱码

URIEncoding="UTF-8"

logs目录下有tomcat的访问记录,如下:

[root@hadoop11 logs]# lscatalina.2015-08-14.log  host-manager.2015-08-14.log  localhost_access_log.2015-08-14.txtcatalina.out             localhost.2015-08-14.log     manager.2015-08-14.log
localhost_access_log.2015-08-14.txt

这个是记录的访问,里面有输入的记录值,用于分析。

为了方便统计,要改server.xml里的,修改的是日志文件,如下:

 

prefix是前缀,suffix是后缀,fileDataFormat是频率



使用ajax触发异步请求,如下:

使用的是jquery的autocomplete的插件,会在后台向uri发送请求,服务器会返回一个json结构数据的信息到前台,在页面上展示。

public class SearchAction extends ActionSupport {    String text;    String query;    Set result;        public Set getResult() {        //this.result = RedisTool.zrevrange(query, 0, 5);        result = new HashSet();        result.add("aaa");        result.add("子");        return result;    }    。。。。。。    。。。。。

这里的类对应上面的result。

需要的脚本

ui又依赖于:



在使用redis时,使用sort排列来插入索引;

hGetAll 键,这个是列出该键下的所有值。

通过query传过去一个值:由redis去查询后返回一个set集合。

public static Set zrevrange(String text, int i, int j) {        // TODO Auto-generated method stub        try{            CreateJedisObj();            //hadoop_users                        return jedis.zrevrange(text, 0, 5);                        }catch(Exception e){                e.printStackTrace();                jedis = null;                return null;            }    }


redis的操作可以熟悉下。

在实际开发中,redis数据库的更新可以逐个更新,在reduce的过程中去删除redis原有的数据记录。

0