- 博客(137)
- 资源 (3)
- 收藏
- 关注
翻译 ALS-WR算法原文译文
经过3个晚上的翻译,终于把ALS-WR算法的介绍论文翻译完成。此次翻译目的是加强对ALS-WR算法的理解和练习自己对专业性英文的能力,由于本人英文水平有限并且该算法使用到了多个高数甚至超越高数和线性代数的一些知识,所以如哪里翻译不对或理解有误,望英语强人,数学高人,算法牛人给个纠正,先于此谢过。原文见:http://link.springer.com/chapter/10.1007%2F978-3
2013-03-21 22:09:15
5567
原创 复制Iterator元素给数组并保证数组长度等于Iterator元素个数
需求如题,iterator没有size()方法,获取不到元素的个数,所以就想无论你有多少个元素就按你有10个元素来处理,放了10个元素之后发现还有元素没有放入,这时候就想对数组进行扩容并将旧数组复制给新数组。但是扩容之后可能会有很多空位置出现,所以在iterator.hasNext()时我们需要使用临时变量来记录iterator循环了多少次,这个临时变量就是iterator的元素个数,有了这个个数
2013-02-28 17:23:04
1932
原创 有趣的jquery.data
刚在看jquery.data方法这个方法,其官网http://api.jquery.com/jQuery.data/上对其有多种不一样的评价,有考虑$.data的速度和el.data的速度谁更快的,有考虑.data能够存储多少数据的,有考虑是否垃圾回收器能够回收这些.data的数据等等。关于$.data()和el.data()速度的说法在http://jsperf.com/jquery-dat
2012-08-26 00:28:35
1477
原创 jquery UI draggable学习
jquery UI组件中的draggable是个很强大的工具,能够对元素进行各种方式的拖动。在其官网http://jqueryui.com/demos/draggable/上只是对一些参数和事件进行了介绍,没有具体的例子进行说明。下面我就对平常使用率较高的一些选项进行讲解:1.axis:设置拖动的方向,值有‘x’,'y'两个。x表示在水平位置上拖动,y表示在垂直方向上拖动。2.cancel
2012-08-25 22:07:36
1550
原创 重构http请求
下午对公司中http请求的代码进行了重构,之前的每个请求都需要写一个post方法,不相同的只是请求的参数.而且代码中有很多累赘的代码,比如每次请求都需要重新new一个DefaultHttpClient,在finally中每次都需要shutdown一下.之前看过的一本重构书籍中也提到了对于这样的代码存在的臭味.所以下午就对之前的代码进行了重构并根据apache httpclient官网重新写了一个单
2012-08-24 17:02:55
2974
原创 express.js初体验
由于自己的兴趣爱好,想充实一下自己的前端知识,最近看到了express.js这个工具.它是基于node.js的web框架.下面就来创建一个这样的应用,由于是初步接触,下面的东西都是根据其官网http://expressjs.com实现的.首先在http://nodejs.org/#download中下载node.js,点击install按钮即可下载msi安装程序.安装好之后在任何一个地方创建目
2012-08-24 14:27:40
1702
原创 防止用户恶意刷新过滤器
为了防止用户对网站页面刷新过于频繁,需要对这种恶意操作进行判断并且屏蔽.虽然公司要有这样的一个功能,但是我觉得太没有必要了.只要你服务器够好,你何必需要这样的功能呢?下面是全部代码(仅供大家参考,我觉得实际意义不是很大):import java.io.IOException;import java.util.Map;import java.util.concurrent.Concurren
2012-08-14 16:23:07
1641
原创 jquery实现产品比较器
这两天在搞一个产品比较的选择器功能,就像很多电商页面上对两个或者两个以上的产品的一些属性进行比较,从中挑选一个更适合我们的产品的这样的一个玩意,效果图如下:当我们点击红叉或者清除所有品种的时候会将比较栏中的产品清除掉,当点击对比所选品种时就会向后台发送请求然后返回一些数据(一般都是所选产品共有的一些属性)给我们,当点击收起时这个比较栏就会缩小成如下形式:这时候点击展开的时候
2012-08-07 21:50:49
2555
原创 python学习第十九章——好玩的编程
1.原型设计:在项目中会使用原型设计,而不是先进行详细的分析和设计。2.配置:提取常量,和java中一样将使用场合多的一些常量定义为static final。在python中可以使用标准库模块configparser进行操作:配置文件使用[numbers],[messages](名字任意)这样的数据头将配置文件划分为几个区段。使用configparser的程序如下:3.
2012-07-31 08:11:33
1185
原创 python学习第十八章——程序打包
1.Distutils:它可以用来建立简单的windows安装程序,再加上扩展程序py2exe,就能建立独立的windows可执行程序了。下面是一个简单的Distutils安装脚本:将上面的脚本存储为setup.py(Distutils按章脚本的惯例),并确保在同一个目录下存在名为hello.py的模块文件。现在就可以使用这个脚本了,执行命令:python setup.py build
2012-07-27 08:07:44
1501
转载 Mysql分页查询通用存储过程
前段时间没有给出SQLServer转到Mysql的通用存储过程,本着共享的精神,为大家奉献这段Mysql分页查询通用存储过程,假设所用数据库为guestbook: use guestbook;delimiter $$drop procedure if exists prc_page_result $$create procedure prc_page_result (in
2012-07-26 22:36:19
913
原创 python学习第十七章——扩展python
1.使用Jython:编写好的一个java类,编译完成之后,可以启动Jython(并且把.class文件放到当前目录中或者放到配置的java classpath中):CLASSPATH=JythonTest.class jython。Jython起作用的地方就是classpath中最后的那个jython参数。之后就可以直接在python中导入这个java类了:2.SWIG:作用:为代码
2012-07-24 07:56:16
962
原创 python学习第十五章——python和万维网
1.屏幕抓取:可以使用urllib获取网页的HTML源代码,然后使用正则表达式提取信息即可。下面是一个例子:这种方法有至少3个缺点:如果HTML代码比较复杂,则表达式会乱七八糟不可维护。程序对于CDATA部分和字符实体(比如&)之类的HTML特性是无法处理的。正则表达式被HTML源代码约束,而不是取决于更抽象的结构,这就意味着网页结构中很小的改变就会导致程序中断。接下来会有两种
2012-07-16 08:19:37
1402
转载 截取字符串(处理汉字一半情况)
Web应用程序在浏览器中显示字符串时,由于显示长度的限制,常常需要将字符串截取后再进行显示。 但目前很多流行的语言,如C#、Java内部采用的都是 Unicode 16(UCS2)编码,在这种编码中所有的字符都是两个字
2012-07-13 15:04:42
1999
转载 Freemarker的内置函数及用法
在我们应用Freemarker过程中,经常会操作例如字符串,数字,集合等,却不清楚Freemrker有没有类似于Java一样有相关的类及方法。在本文当中,我将向大家详细的介绍Freemarke的内置函数及用法,以便能帮助大家更熟练的应用Freemarker完成项目开发。 一、 Sequence的内置函数 1. sequence?first 返回sequence的第一个值。
2012-07-12 10:28:09
882
原创 htmlparser lexer解析网页源代码
有时候我们在解析网页源代码时需要的不是整个页面的源代码,而是其中的文本内容,这时可以使用htmlparser这个开源工具来进行相应的操作。下面是一个例子,这个例子比较简单,主要是理解这个工具中的一些类的作用:public static String html2Text() { ConnectionManager manager; Lexer lexer; Node node;
2012-07-11 10:03:16
1204
原创 python学习第十四章——网络编程
1.套接字:一个套接字就是一个socket模块中的socket类的实例,它的实例化需要3个参数:第一个参数是地址族(默认是socket.AF_INET);第二个参数是流(socket.SOCK_STREAM,默认值)或数据报(socket.SOCK_DGRAM)套接字;第三个参数是使用的协议(默认是0,使用默认值即可)。对于一个普通的套接字,不需要提供任何参数。服务器端套接字使用bind方法后,再
2012-07-10 16:30:32
1005
原创 python学习第十三章——数据库支持
1.数据库连接:使用connect函数,该函数有多个参数,比如dsn表示数据源名称,给出该参数表示数据库依赖,user表示连接的用户名,password表示连接的密码,host表示数据库所在的主机名,database表示需要连接的数据库名。connect函数返回连接对象,这个对象表示目前和数据库的会话,它具有close(),commit(),rollback()和cursor()四个方法。游标的方
2012-07-08 22:05:57
1227
原创 python学习第十二章——图形用户界面
1.下载和安装wxPython:访问http://wxpython.org/download.php即可。需要注意的是选择的wxpython版本需要和python的版本相对应。具体的安装过程就不赘述了。2.使用wxPython进行GUI应用程序的创建:开始需要导入wx模块:import wx。编写wxPython程序的方法很多,但不可避免的事情是创建应用程序对象。基本的应用程序类叫做ex.Ap
2012-07-04 21:42:33
1593
原创 js正则表达式验证各类需求(整数,实数,小数,时间,URL等)
function validateNum(val){//验证整数var patten = /^-?\d+$/;return patten.test(val); }function validateRealNum(val){//验证实数 var patten = /^-?\d+\.?\d*$/; return patten.test(val); }funct
2012-07-03 09:37:03
7160
3
原创 document.layer,document.all,document.getElementById区别与作用
document.layers可以用来判断是否是netscape4之前的浏览器,document.all可以用来判断是否是ie4之后的浏览器,document.getElementById&&!document.all可以用来判断是否是netscape6之后的浏览器。
2012-07-02 21:29:08
1545
转载 怎样使用Sencha Touch 2中的类
ST2 采用跟Ext JS 4一样的类系统。这使得我们可以很轻松地在JavaScript中创建或继承新的类。类系统提供了继承,依赖加载,mixin,强大的配置选项等内容。简单来说,类是一个拥有一些属性和方法的对象。例如:定义一个动物类,定义其名称和功能,使得它能说话,我们只需这样做:1234567
2012-06-30 18:15:51
720
原创 python学习第十一章——文件和素材
1.打开文件:open函数,它接受一个文件名作为唯一的强制参数。如果只提供一个参数的话,那么我们可以获得能获取文件内容的文件对象。如果要向文件内写入内容,则必须提供一个模式参数,open函数中的模式参数只有几个值,如下图:其中b模式表示可以处理二进制文件,比如rb可以用来读取一个二进制文件。open函数的第3个参数控制着文件的缓冲,如果参数是0或者是false,IO就是无缓冲的(所
2012-06-25 22:02:58
845
原创 设为首页js代码
function SetHome(obj, vrl) {try {obj.style.behavior = 'url(#default#homepage)';obj.setHomePage(vrl);} catch (e) {if (window.netscape) {try {netscape.security.PrivilegeManager.enablePri
2012-06-24 22:29:47
1189
转载 jquery超强插件-颜色获取,右键菜单,图片展示
Farbtastic是一个color picker插件。它能够在一个页面中加入多个颜色选择控件,然后每个控件关联到页面中的一个元素比如:文本输入框。Farbtastic jQuery Color Picker 一个简单的颜色选择控件。操作方式与Adobe Photoshop中颜色选择操作置。jQuery Color Picker iColorPick
2012-06-13 16:30:29
1761
原创 IE6下PNG图背景透明解决办法(IE6解决PNG透明)
IE6下PNG背景透明或者图片透明一直让人很伤脑筋,以前的解决办法也不尽完好。最近在项目中,发现了一种几乎完美的解决办法。用JS在IE6下面实现png图和背景PNG透明。不敢独享,写下这篇文章,也好为自己以后查阅,利人利己啊。并且,可以解决a:hover 背景png的问题。下面开始,三步即可搞定IE6下PNG透明问题。第一步:下载JS文件DD_belatedPNG_0.0.8a
2012-06-11 21:35:18
1420
2
原创 netty初步使用2
Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序[官方定义],整体来看其包含了以下内容:1.提供了丰富的协议编解码支持,2.实现自有的buffer系统,减少复制所带来的消耗,3.整套channel的实现,4.基于事件的过程流转以及完整的网络事件响应与扩展,5.丰富的example。本文并不对Netty实际使用中可能出现的问题做分析,只是从
2012-06-02 22:02:49
1919
转载 java direct buffer VS non-direct buffer
在java NIO中,有两种不同的buffer:direct buffer和non-direct buffer。所谓direct buffer,就是指直接在底层分配的缓存(比如操作系统内核缓存),而non-direct buffer就是在java堆中分配的缓存,即heap buffer。1、 劣势:创建和释放Direct Buffer的代价比Heap Buffer得要高2、 区别:Dire
2012-06-02 20:45:07
1652
原创 netty初步使用
1、简介Java1.4提供了NIO使开发者可以使用Java编写高性能的服务端程序,但使用原生的NIO API就像Linux C中网络编程一样,还是需要做IO处理、协议处理等低层次工作。所以,就像C服务端程序大量使用libevent作为网络应用框架一样,Java社区也不断涌现出基于NIO的网络应用框架。在这其中,Jboss出品的Netty就是个中翘楚。Netty是个异步的事件驱动网络应用框架
2012-06-01 22:46:19
1989
转载 线程池理解
服务器程序利用线程技术响应客户请求已经司空见惯,可能您认为这样做效率已经很高,但您有没有想过优化一下使用线程的方法。该文章将向您介绍服务器程序如何利用线程池来优化性能并提供一个简单的线程池实现。线程池的技术背景 在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾
2012-05-30 21:51:49
692
原创 开始使用nutz
Nutz 的使用非常简单,这里Nutz.Dao做一下说明: 1. 首先,你必须安装 JDK1.5 或者以上版本。 如果你直接使用编译好的 jar 包,请保证你的 JDK是1.6 的,因为 Nutz 的jar包是在 1.6.0_11 上编译的。 JDK1.5 的需要重新从源码编译。 好在 Nutz 的源码不依赖任何第三方jar 文件,你拿下来就能编译。 2. 其次,为了运行 Nut
2012-05-29 20:08:32
1708
原创 document.location.protocol与谷歌分析
对象属性document.title //设置文档标题等价于HTML的title标签document.bgColor //设置页面背景色document.fgColor //设置前景色(文本颜色)document.linkColor //未点击过的链接颜色document.alinkColor //激活链接(焦点在此链接上)的颜色document.vlinkColor //
2012-05-04 10:38:53
8570
原创 网页中播放FLV文件的代码
使用方法:方法一、js嵌入直接copy下面代码,修改其中红色部分,即:swf_width、swf_height、texts、files参数var swf_width=240var swf_height=240var texts=’幸福的脚丫预告片’var files=’http://www.ruochi.com/product/vcastr/flv/
2012-05-03 23:10:38
1342
原创 eclipse各种常用插件在线安装
一,反编译插件:A、Jadclipse1、打开eclipse增加站点:http://jadclipse.sf.net/update,在线安装好JDT Decompiler 3.4.02、http://nchc.dl.sourceforge.net/sourceforge/jadclipse/net.sf.jadclipse_3.3.0.jar将 jad
2012-04-30 22:47:46
4546
1
原创 python学习第十章
1.模块:如果自己写的一个python程序需要作为模块导入,则在使用的时候需要首先import sys,然后sys.path.append("c:/python"),c:/python是程序所在目录。意思就是告诉解释器除了从默认的目录中寻找之外,还需要从目录c:\python中寻找模块。这样之后就可以使用import hello(hello是自己编写的程序的名字)导入自己的模块了。2.将模块放
2012-04-28 13:29:53
943
原创 python学习第九章
1.构造方法:只要把init方法的名字从简单的init修改为__init__即可:def __init__(self):。2.子类调用超类的构造方法:在自己的构造方法内添加:SuperClass.__init__(self)。在调用一个实例的方法时,该方法的self参数会被自动绑定到实例上。但如果直接调用类的方法(比如上面的那句代码),那么就没有实例会被绑定。这样就可以自由地提供需要的self
2012-04-28 12:19:22
782
原创 python学习第八章
1.自定义异常类:class SelfException(Exception):,即继承Exception这个异常基类即可。2.捕捉异常:try/except,和java中try/catch一样使用。有些情况中,一些坏事发生时执行一段代码是很有用的,可以像对条件和循环语句那样,给try/except语句加个else子句。finally子句和java里也是一样的。3.引发异常:可以使用rai
2012-04-26 16:44:45
666
原创 python学习第七章
1.创建类:class 类名:。类中的self是对对象自身的引用。实例化类:foo=类名()即可。2.私有化:为了让方法或者特性(属性)变为私有(从外部无法访问),只要在它的名字前面加上双下划线即可,这样方法或属性从外界是无法访问的,但是通过将这样的私有方法或属性放在一个外界可以访问的方法里最后还是会被访问的。但是在私有化方法或属性的前面加上下划线和类名这样也可以被访问到的。比如s._S__p
2012-04-26 16:14:57
685
原创 python学习第六章
1.创建函数:def functionname:functionbody。2.当两个变量引用一个列表的时候,它们的确是同时引用一个列表,这时对任何一个列表中的值进行修改都会影响到另外一个列表。如果使用切片将一个列表复制给另外一个列表,那么就不会出现这种情况,因为操作的只是列表的副本。3.关键字参数:使用参数名提供参数。可以明确每个参数的作用。不会被参数的顺序所影响。还可以在函数定义的时候就
2012-04-25 16:42:22
642
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人