- 浏览: 235474 次
- 性别:
- 来自: 上海
最新评论
-
清林小篆:
引用[/col[size=xx-small][/size]or ...
tomcat ssl配置以及CAS单点登录探究 -
cyxy99:
u012534143 写道我用同样的方法,同样的节点关系,为什 ...
PageRank算法java实现版本 -
cyxy99:
schaha123 写道楼主还有一个问题想请教一下,下面这2段 ...
PageRank算法java实现版本 -
njthnet:
Participle 和 IkParticiple 这2个类找 ...
贝叶斯文本分类 java实现 -
u012534143:
我用同样的方法,同样的节点关系,为什么的得到的结果与您不一样呢 ...
PageRank算法java实现版本
文章列表
到年尾了,整理了一下我Evernote藏的各种文档,打算把ystyle(一款小的mvc框架)的开发文档发出来,觉得自己对mvc玩的太熟了的可以略过,觉得对mvc原理不是太清楚的是可以看看的。
下面不是打广告时间,但是做任何事情得有个目的,后面几篇文章的的目的是做这样一款MVC:
1,实现跳转常用配置 (xml)
2,实现请求属性自动注入,支持文件自动上传(注解,如@UploadFile)
3,实现各层级注入(@Autowired),业务层注解注入(@service),事务注解(@Transactional),自定义注解(包括各种自定义jdk动态代理注解,如@Proxy),单例注解(Sin ...
注解注入
我们知道,Spring只有一个角色:工厂。这个工厂可以生产出任何你想要的对象或依赖,并且在出厂前后可以无限制的增强功能。
Spring最基础的功能就是注入,其中注解注入的方式消除了文件配置的繁琐,让人爱不释手。我们做的这个小框架虽然没法完全依照
它的实现,但是我们可以发挥小而精的特色,做好同样的功能。
首先新建注入注解Autowired
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD )
public @interface Autowired {
/**
* 注入依赖的类 必须 ...
当表单提交的内容过多 ,让懒惰的程序员一个个getParameter()是很让人抓狂的,所以自动注入表单域是mvc不可或缺的功能,另外,文件上传也是一个特殊的表单域,你想看到程序员发觉上传只需要注入就能完成功能时的那种欣喜吗 ? 我们一起做做看。
我们依然从最简单的开始做,慢慢的润色。
注入表单的思路比较简单:
1,在form里面的name需要设置成诸如userinfo.username这类的,userinfo表示注入的目标对象,username表示userinfo对象的属性。这个对象必须是Action里面声明的
2,MainServlet在接收表单时,从g ...
mvc框架最基础的功能就是跳转,struts2支持注解+xml配置跳转,我个人认为用注解来配置跳转不是一个好的做法,看似比较简单,但是action多了之后查找起来比较不方便,而且把配置信息放在类里面实际上跟解耦理念是相悖的(不过每个人有自己喜好),所以在这里我打算把跳转层设计成xml配置的,其他层设计成注解的。
配置跳转需要用到的知识有:反射,xml读取。反射是实现动态装配的基础,它使我们的程序更具动态性,可扩展性,几乎所有流行的框架都以它为基础实现。xml读取基本都会采用dom4j完成。
mvc实现跳转的过程:xml配置命名空间,Action处理类,请求的ac ...
linux下安装配置svn服务
- 博客分类:
- 技术杂文
今天在阿里云架了一个svn,打算放平时的代码片段,还是记下过程吧。
centos上安装:yum install subversion
安装成功 键入命令 svnserve --version
有版本信息则进行下一步
1,新建版本库目录 mkdir -p /opt/svndata/repos
2,设置此目录为svn版本库 svnadmin create /opt/svndata/repos
3,修改svnserve.conf,把anon-access,auth-access,password-db,authz-db的注释去掉(注意前面不能有空格,下同),另外现在yum最新的sv ...
整合了一个小的爬取流程框架
- 博客分类:
- java综合
弄了一个小的爬取流程框架,把之前工作中用到的一些小经验整合在这个框架里面,代码方面稍显简陋,但是易用性还可以,至少满足之前工作上遇到的各种状况,这段时间还是有点忙的,以后用到再改进吧 地址:
http://code.google.com/p/ycrawl/
Mahout有很多推荐的实现,各有特点,在这里一并记录。
GenericUserBasedRecommender: 基于用户的推荐,用户数量相对较少时速度较快。
GenericItemBasedRecommender:基于物品的推荐,物品数量较少时速度较快,外部提供了物品相似度数据后会更加有效率。
SlopeOneRecommender:基于slope-one算法(想想那个填空的表格吧)的推荐,在线推荐或更新比较快,需要先下大量的预处理运算。物品数量相对较少时使用比较合适。
SVDRecommender:效果不错,和slope-one一样,事先需要大量的预 ...
在大规模检索中,我们怎样通过已经的词频得到词频的排序? 通俗点讲,就是当我知道“java”这个词的频率是x,那么"java"到底在排在第几位呢?
大规模数据中,有一个重要的法则叫“齐普夫法则”,它描述为第k个出现次数最多的词汇,它的词频与1/k成正比。这个法则的发现过程一点都不科学,齐普夫是这样干的:找到一本大部头的书籍,统计不同词汇出现的次数并排序,发觉词频的排序乘以出现的次数等于一个常数。然后这个常数乘以10,就得到了书籍的总词数。多么荒诞的事情啊,这比牛顿被苹果砸了更坑爹啊有木有。
但是,这个法则竟然是正确的(没什么道理啊,我想起了黄 ...
最近做财务相关的积分规则,由于这个功能以后涉及到方方面面,所以想尽可能做的可维护,可扩展,平台其他人调用起来更加方便,联想到财务相关的功能会更多的规则配置,在这里打算用drools规则引擎来实现。
规则引擎说起来比较简单,当你的功能有很多未知条件需要判断或需要遵循很多业务规则时,就可以采用。
首先看看规则文件大大致样子,
rule "testDrools"
when
...各种条件
then
...执行业务
end
看起来比较像if else,但是切忌,我们应该用一个业务人员的视角而不是一个程序员的视 ...
昨天实现了一个基于贝叶斯定理的的文本分类,贝叶斯定理假设特征属性(在文本中就是词汇)对待分类项的影响都是独立的,道理比较简单,在中文分类系统中,分类的准确性与分词系统的好坏有很大的关系,这段代码也是试验不同分词系统才顺手写的一个。
试验数据用的sogou实验室的文本分类样本,一共分为9个类别,每个类别文件夹下大约有2000篇文章。由于文本数据量确实较大,所以得想办法让每次训练的结果都能保存起来,以便于下次直接使用,我这里使用序列化的方式保存在硬盘。
训练代码如下:
/**
* 训练器
*
* @author duyf
*
*/
class Tra ...
今天是8月15,抗战胜利纪念日 ,为什么腾讯新闻里面一个字都没有,再不宣传就被遗忘了。
勿忘国耻!
这几个是我自写的常用的js组件,包含自动补全,js字典,table动态增减,使用比较方便,代码清晰,虽然本人js水平不高,但是这几个是在实际工作中用的较多的,可信赖。
在介绍最小生成树算法(MST)之前,简单说一下平均链接算法(average-link)的实现过程,平均链接聚类算法和单链接类似,多了计算聚类之间距离矩阵的步骤
实现步骤如下:
1,将元素各成一组,把这些组放入容器H
2,循环元素距离数组,根据两层下标得到将要比较的两个元素A,B
3,在H中分别查找含有A,B的组AH,BH。假如AH不等于BH(也就是A,B不同组), AH和BH的距离累加A,B的距离。
4,得到组间距离数组后,循环比较组间距离与阀值,小于阀值,则此两组合并成一组,合并之前把H中的两个作为比较的原始组删除。
...
聚类算法中基于链接的算法大致有三种:单链接算法(single link),平均链接算法(average link),最小生成数算法(minimum spanning tree)。现在实现单链接算法,其他算法以后再续吧。
单链接算法的过程是 首先生成各个元素的距离矩阵,根据距离和阀值的比对来控制生成的聚类个数,阀值越大,生成的聚类越少,直到同属一类。
下面例子实现了根据经纬度来实现城市的聚类。
package singlelink;
import java.util.ArrayList;
import java.util.H ...
PageRank算法是Google的核心搜索算法,在所有链接型文档搜索中有极大用处,而且在我们的各种关联系统中都有好的用法,比如专家评分系统,微博搜索/排名,SNS系统等。
PageRank算法的依据或思想:
1,被重要的网页链接的越多(外链) ,此网页就越重要
2,此网页对外的链接越少越重要
这两个依据不能是独立的,是需要一起考虑的。但是问题来了,我们怎样判断本网页的外链是很重要的呢?循环判断?那不死循环了?
解决办法是:给定阀值,让循环在此临界处停止。
首先,我们准备了7个测试网页,这几个网页的链接情况如下:
i\j test ...