- 浏览: 211655 次
- 性别:
- 来自: 深圳
最新评论
-
totzc:
厉害了。算法永不过时
笛卡尔积算法的Java实现 -
calosteward:
感谢博主对二维码的介绍。________________tag ...
二维条形码 -
butata:
哈哈 在这看到谢工
在eclipse中配置tomcat,不用经常重启Tomcat -
cfanllm:
xiemingmei 写道jisuanjixuezi 写道你好 ...
Memcached GetAndTouch延长过期时间用法 -
xiemingmei:
jisuanjixuezi 写道你好 我用了Memcache ...
Memcached GetAndTouch延长过期时间用法
文章列表
一说起要写技术方案文档,大家恐怕就有点发愁。不是因为技术方案本身难,而是因为大家不知道怎样用文字来描述技术方案。
我以前在blog上读到的一篇文档,建议把技术方案文档按如下的结构来写。
(1)用户核心需求;
(2)实现起来的技术难点;
(3)技术选型;
(4)2种以上解决方案(必须有备选方案)。
按这样的结构写方案,我们思路就比较清晰了。然后,读者看这个结构的方案文档,也比较容易明白。
在cmd上执行java类的命令格式是:
用法: java [-options] class [args...]
eclipse的run configration中有两种参数:
Program arguments: 用来传进main中的args
VM arguments: 相当于java options
代码:
public static void main(String[] args) throws Exception {
System.out.println(System.getProperty("appHome"));
System.out.printl ...
Java BitSet 数据结构及用处
BitSet用来保存大量的开关信息,数据结构如下:
private long[] words = long[n];
long是4个字节长,64位,如果需要使用64个开关的话,n为1就可以了;
一般用开关数除64就可以得出n。
BitSet可以用于接口的报文通讯中,如ISO 8583协议是全世界银行通用的通讯协议,共有128个域,如果只传其中几位,就可以传BitSet来表示,下标index为1的,表示位于index处的参数有值出过来,为0的,表明让服务忽略掉该参数。
1、到http://code.google.com/p/kaptcha/ 下载jar文件到 WEB-INF/lib目录下
2、在web.xml中配置servlet:
<servlet>
<servlet-name>Kaptcha</servlet-name>
<servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class>
<init-param>
<pa ...
互联网服务切忌以功能来划分系统,有程序架构如下。
项目构架结构:
memberService: 会员中心服务
--client
--common
--parent
--server
memberWeb: 会员前台网站
memberAdmin: 会员后台管理系统
类实现接口的规范:
A:common/**Service.java
B:client/**ServiceClient.java
C:service/**ServiceImpl.java
B和C都实现**Service接口,同时**Service ...
在cmd上使用脚本把当前目录下的文件文件名:
@echo off
set m=1
for %m in ("*.*") do (
echo.
echo %m
ren "%m" "认字-%~m"
)
有了这样的脚本,就不用费力写java程序来做同样的操作了。
这里只是举个例子,意在说明cmd脚本功能非常强大,很实用。
目前,大部分视屏网站都使用FLV格式来播放视屏。大家需要观看还尚未传过来的部分,只需把进度条拖曳到指定时间点就可以观看了。
首先,大部分的视屏格式需要转换成FLV格式。
Flash 8 Video Encoder支持转换的视频格式相当广泛,如:AVI、WMV、MPEG、ASF、MOV等常见视频格式。
然后,需要把时间点的Meta信息写入到FLV文件中去。
我们可以使用FLV工具如FLVTool2来实现。
用户在Flash视屏播放器中把进度条拖到未缓冲过的点,这时,浏览器重新请求视屏,把时段的参数(Offset)传过去,视频服务器获取到时段Offset,从该Offset后开始传输视屏的字节。 ...
笛卡尔积算法的Java实现:
(1)循环内,每次只有一列向下移一个单元格,就是CounterIndex指向的那列。
(2)如果该列到尾部了,则这列index重置为0,而CounterIndex则指向前一列,相当于进位,把前列的index加一。
(3)最后,由生成的行数来控制退出循环。
public class Test {
private static String[] aa = { "aa1", "aa2" };
private static String[] bb = { "bb1", "bb2&quo ...
JAVA的内省(introspector)与反射(reflection)
内省是 Java 语言对 Bean 类属性、事件的一种缺省处理方法。例如类 A 中有属性 name, 那我们可以通过 getName,setName 来得到其值或者设置新的值。通过 getName/setName 来访问 name 属性,这就是默认的规则。 Java 中提供了一套 API 用来访问某个属性的 getter/setter 方法,通过这些 API 可以使你不需要了解这个规则(但你最好还是要搞清楚),这些 API 存放于包 java.beans 中。
一般的做法是通过类 Introspector ...
客户端实现多个Memcached服务集群
Memcached服务器之间是独立的,没有任何关联,不能进行集群,Memcached集群是从客户端实现的。
应用系统使用统一的访问Memcached配置,在调用client包来set(key,value), get(key)时,使用相同选取服务器节点的算法,这样就实现了取到先前存入的对象。
选取服务器节点的算法思路是key的哈希值与节点数取模,比如,有Memcached服务器n0,n1,n2,n3,n4,key为"user_name",那么就是 hash(username)%5,如果结果为0就选取n0,依次类推。
选取服务器接 ...
什么是二维码?说起二维码,大家估计比较陌生,有可能用过它,但是对它理解却比较朦胧。
相信大家对条形码(barcode)都是很熟悉的了,因为它的用途太广泛,最常见就是超时里的商品和书籍上,条形码扫描器扫描条形码将条形符号换成相应的数字、字符信息。
二维码 (dimensional barcode) ,又称二维条码,是在一维条码的基础上扩展出的一种具有可读性的条码。它也是条形码的一种,只是大家习惯把一维的称为条形码,二维的叫二维码,二维码比一维码保存的信息量更大,便于更多类型的设备来阅读。
为什么手机客户端软件趋向使用二维码呢?因为手机输入字符、数字比较麻烦,一般用户不愿意手敲大量的按键。而二 ...
大家都知道网页中的组件css,script可以有内联、外联之分,如:
网页中内联css\script:
<style>
.WdateFmtErr{
font-weight:bolder;
color:red;
}
</style>
<script type="text/javascript">
$('blog_title').focus();
new Validation("blog_form");
</script>
网页中外联css\script:
<link hr ...
大家(至少是我)习惯这么写js吗? 这样暴露了变量作用域成为整个页面,扩大了变量冲突的可能:
<script language="javascript">
var t =1;
alert(t);
var t = 2;
alert(t);
var t;//全局变量
alert(t);
</script>
为限制JS变量作用域在防范内,防止方法中变量与全局变量冲突而导致的影响,改成:
<script language="javascript">
(function(){
var ...
AJP是Apache JServ Protocol的缩写,是Web服务器与java应用服务器之间的通信协议。
The Apache JServ Protocol (AJP) is a binary protocol that can proxy inbound requests from a web server through to an application server that sits behind the web server. It also supports some monitoring in that the web server can ping the applica ...
什么是SSI呢?SSI是静态文件包含,它属于web服务器,依赖web服务提供的机制来实现,无须通过CGI程序提供其整个页面。目前流行的web服务器如Apache,Nginx,Tomcat(同时也是应用服务器)等,都支持SSI,而且SSI配置也相当简单。
静态页面中的SSI例子:
<!--#include virtual="head.shtml"-->
<!--#include virtual="foot.shtml"-->
This document last modified <!--#flastmod file=" ...