基于jquery+raphael实现的可拖动树形图
基于jquery+raphael实现(矩形+线条)可拖动的树形图或流程图,支持各种浏览器,适合需按树形结构展示的流程图,可用于工作流,以及信用分险行业的决策流展示
flex+java+tomcat实现socket通信及安全策略
/**********
本例子是本人参考网上的例子,重新整理和修改的例子,非常简单和具有针对性****/
1.背景:Flex Socket通信及安全策略,使用flex实现客户端,java实现服务端;
2.重点解决安全策略问题:将flash发布为html格式后,本地访问页面后,一般可以与服务器进行socket通信;但是部署到tomcat服务器上后无法通信,这是因为flex安全策略引起的;需要在java服务端开通843权限策略,具体看例子源码
在线文档库(参考百度文库和豆丁网实现的)
附件是myeclipse开发的整个工程,包含源码和数据库表结构(已运行在tomcat+oracle上,其它数据库自己修改配置),另外项目相关openOffice、swftools的安装软件请到网上下载;
系统参考百度文库和豆丁网等网站实现的在线文档库系统,主要提供了一种功能,即在线查看doc、xls、ppt等office格式文档;用户上传的文档无需下载就可以在线查看了,同时用户本地无需安装office软件,真的是非常方便。它的工作原理是先用openOffice软件把ppt、word、excel、txt等ms office格式文档转换成pdf,然后用swftools软件转换成swf,最后通过FlexPaper实现在线播放;而这个过程并无需在客户端安装WORD、PDF等office办公软件环境;另外还有基于lucene实现的搜索功能
用flexpaper实现的在线文档库(类似百度文库和豆丁网)
附件是myeclipse开发的整个工程,包含源码和数据库表结构(已运行在tomcat+oracle上,其它数据库自己修改配置),另外项目相关openOffice、swftools的安装软件请到网上下载;
本系统参考百度文库和豆丁网等网站实现的在线文档库系统,主要提供了一种功能,即在线查看doc、xls、ppt等office格式文档;用户上传的文档无需下载就可以在线查看了,同时用户本地无需安装office软件,真的是非常方便。它的工作原理是先用openOffice软件把ppt、word、excel、txt等ms office格式文档转换成pdf,然后用swftools软件转换成swf,最后通过FlexPaper实现在线播放;而这个过程并无需在客户端安装WORD、PDF等office办公软件环境的支持。
flex4.0+hibernate+spring项目
博客项目,采用flex4.0+hibernate+spring+mysql实现;是本人在网上下载的,并经过整理了;下载后创建数据库,部署到tomcat上就可以运行;项目的功能不重要,重要的是参考这个框架在可以开发flex+spring+hibernate项目了;在查看代码前,请先安装下载地址Flash Builder 4 Beta2的序列号: 1424-4008-9664-3602-3439-1711
https://freeriatools.adobe.com/flashbuilder4beta/
关于linux环境下误以为文件乱码的问题
1.文件无法下载
2.在linux硬盘中看到创建的文件夹及文件名称为乱码,数据库中存储的文件夹及文件名称没有乱码
基于lucene的搜索引擎总结
浅谈网络搜索引擎的实现
知识管理系统网络搜索模块开发实践交流
功能需求
可自定义要搜索的网站列表(以下简称目标列表)
可对目标列表网站的网页内容进行检索
可对目标列表网站的网页内容进行自动分类处理
可自定义更新周期及一些相关性能参数
系统主要功能模块
网络蜘蛛
采集、解析并保存目标列表网站的内容(网页)
全文索引/检索
为目标列表网站内容建立索引
提供内容的全文检索
自动分类
对目标列表网站内容进行分类
基本流程
网络蜘蛛
功能概要
目标文档地址队列 w/r
目标文档(网页)获取
目标文档保存
文档解析并得到新的目标文档地址队列和文档正文内容
网络蜘蛛
当前版本的实现
多线程
Apache HttpClient
Hsql
HTML Parser
全文索引/搜索
什么是全文索引?
为了快速搜索大量的文本文件
为一本书建立关键词的索引“书签”
什么是全文搜索?
在索引中查找关键字的过程,找到关键字在哪些地方出现
全文索引/搜索
Lucene简介
高性能、可扩展的信息检索工具库
为应用程序添加索引/搜索功能
一个典型的应用:
全文索引/搜索
全文索引/搜索
Lucene索引过程的核心类
IndexWriter :提供对索引的写入操作
Directory:描述了索引存放的位置
Analyzer:对文本进行分析,提取词汇(token),剔除无用的信息
Document:虚拟的文档
Field:每个Document包含一个或多个不同命名的Field,每个Field对应一段数据,这些数据在搜索过程中可能会被查询或在索引中被检索
全文索引/搜索
Lucene索引代码示例:
Directory dir = FSDirectory.getDirectory(indexDir);
Analyzer anlyzer = new SimpleAnalyzer();
IndexWriter writer = new IndexWriter(dir, analyzer, true);
Document doc = new Document();
doc.add(Field.Keyword(“id”, “1000”);
doc.add(Field.UnIndexed(“name”, “Yao Ming”);
doc.add(Field.UnStored(“intro”, “Yao Ming is a player of Houseton Rockets.”);
writer.addDocument(doc);
writer.close();
全文索引/搜索
Lucene搜索过程的核心类
IndexSearcher:用于搜索IndexWriter创建的索引
Term:用于搜索的一个基本单元包括了一对字符串元素,与Field相对应
Query :抽象的查询类
TermQuery:最基本的查询类型,用来匹配特定Field中包含特定值的文档
Hits:存放有序搜索结果指针的简单容器
全文索引/搜索
Lucene搜索代码示例:
IndexSearcher searcher = new IndexSearcher(directory);
Term t = new Term(“intro”, “Yao”);
Query query = new TermQuery(t);
Hits hits = searcher.search(query);
assertEquals(“JUnit test”, 1, hits.length());
Lucene的线程安全性
不允许使用多个IndexWriter或IndexReader实例同时对一个索引进行修改
IndexWriter和IndexReader是线程安全的,可以被多线程共享
全文索引/搜索
中文分词器
最大匹配法(机械分词):按照一定的策略将待分析的汉字串与一个“充分大的”机器词典中的词条进行配,若在词典中找到某个字符串,则匹配成功。
二元分词
一元分词
自动分类
向量距离分类算法
根据算术平均,为每类文本集生成一个代表该类的特征向量
提取待分类文本的特征向量
计算该向量与每类特征向量之间的相似度
判定文本属于与文本距离最近相似度最大的类别
自动分类
相似度计算公式:
系统基础类图
Road map
自动分类学习
中文分词算法改进
支持多种格式的文档(doc, pdf…)
海量网站搜索的支持(分布式处理)
系统框架的优化和迭代改进