2012年5月11日
摘要: 1.设置VirtualBox数据空间2.在Linux中使用命令挂载mount -o iocharset=gb2312 -t vboxsf H_DRIVE /mnt/windowsH3.卸载此分区umount -l /mnt/windowsH 阅读全文
posted @ 2012-05-11 22:29 ZimZz 阅读(787) 评论(0) 推荐(0) 编辑
摘要: 首先明确一下PHP的输出顺序1.打开了php输出缓存: echo,print -> php output_buffring -> server buffering -> browser buffering -> browser display2.未打开php输出缓存: echo,print -> server buffering -> browser buffering -> browser display另外明确一下浏览器的输出缓存:IE为256Bytes, Chrome与FireFox为1000Bytes,只有输出数据达到了这个长度或者脚本结束浏览 阅读全文
posted @ 2012-05-11 02:54 ZimZz 阅读(11448) 评论(1) 推荐(0) 编辑
  2012年5月10日
摘要: 本机环境:Apache+PHP+MySQL先了解一下背景知识,Apache采用父进程调度多个子进程模式处理请求,每当客户端向父进程提出请求时,该请求会被传递给还没有被其它的客户端请求占用的子进程。相同的客户端第二次向服务端提出请求时,它将有可能被一个不同的子进程来处理。在使用了MySQL持久连接后,子进程会持有一个数据库持久连接,持久连接在脚本运行结束后不会关闭,可以通过mysqladmin -uroot -ppass processlist命令查看.如果在查询时Apache分配了持有这个持久连接的子进程来处理请求,则不需要重新建立新连接,否则新的子进程重新建立持久连接来处理数据库查询.下面说 阅读全文
posted @ 2012-05-10 01:52 ZimZz 阅读(844) 评论(0) 推荐(0) 编辑
  2012年5月9日
摘要: 问题背景:有一个用户留言板,留言在100字内,另外有一个滤词表,现在需要对用户留言进行过滤,清楚留言中出现并且出现在滤词表中的单词针对留言长度相对于滤词表单词而言较短,可采用如下滤词法1.构建滤词表的HashMap(filterMap)对滤词表中的每个单词做一次Hash,以Hash散列值作为Key,单词内容作为Value2.构建滤词表单词的起始符表和结束符表2.1起始符表将滤词表中每个单词的起始字符构建成一个表,作为起始符表(startList)2.2结束符表将滤词表中每个单词的结束字符构建成一个表,作为结束符表(endList)3.搜索留言敏感词1)从留言第一个字开始,与startList中 阅读全文
posted @ 2012-05-09 17:31 ZimZz 阅读(1241) 评论(0) 推荐(0) 编辑
  2012年5月8日
摘要: 1 <html> 2 <body> 3 <?php 4 #数据库连接 5 $dbtype = 'mysql'; 6 $host = 'localhost'; 7 $db = 'test'; 8 $user = 'root'; 9 $psw = 'china0913';10 11 $dsn = $dbtype . ':host=' . $host . ';' . 'dbname='... 阅读全文
posted @ 2012-05-08 23:18 ZimZz 阅读(16343) 评论(0) 推荐(1) 编辑
摘要: 对于JAVA的跨平台和C的可移植性,一直存在疑惑,这里说说个人理解1.C的可移植性需要在不同的操作系统上多次编译成不同的目标代码,甚至需要为不同的操作系统编写不同的代码,而JAVA因为有JVM的支持,就免去了这个麻烦2.JAVA的跨平台是一次编译,依托JVM可以到处运行引用在论坛上看到一位仁兄的发言,觉得很有道理在java之前,跨平台是很痛苦的事情,主要是因为所有对于系统的调用,在不同的操作系统下结果都不一样,简单的来说,int的长度在不同操作系统里面就不一样,甚至于连字节排列的顺序都不同。调用同一个函数返回的格式也不同,因此,写程序的人自己要对不同的系统非常了解,如果真的需要对不同操作系统进 阅读全文
posted @ 2012-05-08 00:04 ZimZz 阅读(742) 评论(0) 推荐(0) 编辑
  2012年5月7日
摘要: Vector与ArrayList本质上都是一个变长数组,实现变长的方法是当长度不够时,在内存区新开辟一块更长的内存,并将原来的的元素Copy到新内存区.因为本质上是数组,所以对于查找和尾部插入与删除,相对于链表而言有优势,时间可以控制在O(1)内,所以两者的适用适用都是在对数据有多数的查找和表尾部操作的时候.不同点在于:Vector是线程安全的,也就是内部实现用了Synchronized,不能多线程同时操作Vector,这样会影响性能,而ArrayList则不是,具体使用哪个就依照具体情况而定了Vector每次扩容变为2倍内存,而ArrayList每次扩容变为1.5倍内存 阅读全文
posted @ 2012-05-07 12:20 ZimZz 阅读(256) 评论(0) 推荐(0) 编辑
  2012年5月5日
摘要: <html> <body> <?php function sum_n($a1, $d, $an) { //$a1为首项,$d为公差,$an为最大项 $sum = 0; $i = $a1; a: $sum += $i; $i += $d; if($i <= $an) goto a; return $sum; } ... 阅读全文
posted @ 2012-05-05 22:45 ZimZz 阅读(2686) 评论(0) 推荐(0) 编辑
摘要: 字符编码在内存中的存储字符编码在内存中存储决定于文件保存的格式,如UTF-8或ANSI对于UTF-8,在内存中每个中文字符占3个字节,每个英文字符占1个字节对于ANSI,在内存中每个中文字符占的字节数是变长的(中文在ANSI里代表GB2312编码),每个英文字符占1个字节字符编码在程序中的处理参看如下代码,这个文件保存的格式是UTF-8,也就是说$str在内存中占了15个字节,而$str2在内存中占 5个英文*1字节+1个中文*3字节=8字节 这是背景如图: 1 <html> 2 <body> 3 <?php 4 $str = '我擦了个去'... 阅读全文
posted @ 2012-05-05 22:19 ZimZz 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 问题背景:数据库内有两个表,user,message,message表中含有useId外键,现在需要统计发的message超过2条的user,并按发的消息条数从高到低排序SELECT user.userId, COUNT(msg.messageId) FROM user JOIN message as msg ON user.userId = msg.userId GROUP BY user.userId HAVING COUNT(msg.messageId) > 2ORDER BY COUNT(msg.messageId) DESC显示结果 阅读全文
posted @ 2012-05-05 20:55 ZimZz 阅读(420) 评论(0) 推荐(0) 编辑