@祁俊辉,2017年6月22日测试。
1 说明
- 本程序以为基础,利用JSP添加JavaBean接口,改为网页版;
- 因为在网页版比较相似度时,生成txt文档会耗费一定的时间,而且在Tomcat发布后路径不方便控制,所以取消txt文档的输入输出,全程以字符串形式输入和返回;
- 目前文档库中有100篇txt现代小说,若后期需要增加,直接复制到该路径下,然后在程序“TF_IDF”中把“TextNum”变量改为文档库中小说的个数即可。
制作过程中遇到的问题:
- Tomcat发布程序后,不能使用相对路径,需使用绝对路径(计算TF-IDF值),目前路径为“E:\SimHash文档库”;
- 分词包一定要复制到Tomcat安装路径下,才能正常使用,否则会报错;
- CSS表格显示的“table-cell”一定要是块元素。
目前存在的问题:
- HTML页面分辨率变化时,如窗口化,格式会乱(因为CSS中有些布局用的绝对布局,可能是这个原因)。
以下为本项目的流程示意图:
2 程序
程序分为Java程序、HTML程序和CSS程序。
java程序含有“FenCi”、“TF_IDF”、“SimHash128Web”、“Main”四个类,前三个类对应三个主要步骤,最后一个类主要为javaBean接口类提供服务。
本次程序不再提供源码,若有需要请联系作者:qce.hui@qq.com。
3 结果展示
第一次进入网页时展现为:
若两个文本框什么都不输入,点击“检测”,则不会有结果,仍然显示以上。
若两个文本框其中一个输入字符,另一个不输入,则会显示“检测无效”,如图:
若两个文本框都正常输入,点击“检测”,则会显示相应结果。
若海明距离在40以内,则会显示海明距离及相似度,如图:
后台数据会将分词结果、计算TF-IDF值得结果以及生成的SimHash指纹显示,如图:
若若海明距离超过40,说明两个文本完全不相似,会出现如下图结果:
经测试,显示结果与没有使用网页时相同,说明网页版程序正确。