05 2013 档案

摘要:time和date两个函数在Lua中实现所有的时钟查询功能。函数time在没有参数时返回当前时钟的数值。(在许多系统中该数值是当前距离某个特定时间的秒数。)当为函数调用附加一个特殊的时间表时,该函数就是返回距该表描述的时间的数值。这样的时间表有如下的区间:yeara full yearmonth01-12day01-31hour01-31min00-59sec00-59isdsta boolean,trueif daylight saving 前三项是必需的,如果未定义后几项,默认时间为正午(12:00:00)。如果是在里约热内卢(格林威治向西三个时区)的一台Unix计算机上(相对时间为... 阅读全文
posted @ 2013-05-31 16:15 李秋 阅读(1218) 评论(0) 推荐(0) 编辑
摘要:一部分的table函数只对其数组部分产生影响, 而另一部分则对整个table均产生影响. 下面会分开说明.table.concat(table, sep, start, end) concat是concatenate(连锁, 连接)的缩写. table.concat()函数列出参数中指定table的数组部分从start位置到end位置的所有元素, 元素间以指定的分隔符(sep)隔开。除了table外, 其他的参数都不是必须的, 分隔符的默认值是空字符, start的默认值是1, end的默认值是数组部分的总长.sep, start, end这三个参数是顺序读入的, 所以虽然它们都不是必须参数. 阅读全文
posted @ 2013-05-29 16:54 李秋 阅读(335) 评论(0) 推荐(0) 编辑
摘要:第19章 Table库 table库由一些操作table的辅助函数组成。他的主要作用之一是对Lua中array的大小给出一个合理的解释。另外还提供了一些从list中插入删除元素的函数,以及对array元素排序函数。19.1 数组大小 Lua中我们经常假定array在最后一个非nil元素处结束。这个传统的约定有一个弊端:我们的array中不能拥有nil元素。对大部分应用来说这个限制不是什么问题,比如当所有的array有固定的类型的时候。但有些时候我们的array需要拥有nil元素,这种情况下,我们需要一种方法来明确的表明array的大小。 Table库定义了两个函数操纵array的大小:g... 阅读全文
posted @ 2013-05-29 16:41 李秋 阅读(1273) 评论(0) 推荐(0) 编辑
摘要:构造器是创建和初始化表的表达式。表是Lua特有的功能强大的东西。最简单的构造函数是{},用来创建一个空表。可以直接初始化数组:days = {"Sunday", "Monday", "Tuesday", "Wednesday","Thursday", "Friday", "Saturday"}Lua将"Sunday"初始化days[1](第一个元素索引为1),用"Monday"初始化days[2]...print(d 阅读全文
posted @ 2013-05-29 16:14 李秋 阅读(927) 评论(0) 推荐(0) 编辑
摘要:string和其他对象一样,Lua自动进行内存分配和释放,一个string可以只包含一个字母也可以包含一本书,Lua可以高效的处理长字符串,1M的string在Lua中是很常见的。可以使用单引号或者双引号表示字符串。1 a = "a line"2 b = 'another line'为了风格统一,最好使用一种,除非两种引号嵌套情况。对于字符串中含有引号的情况还可以使用转义符\来表示。Lua中的转义序列有: 1 \a bell 2 \b back space -- 后退 3 \f form feed -- 换页 4 \n newline -- 换行 5 \r 阅读全文
posted @ 2013-05-29 15:50 李秋 阅读(3412) 评论(0) 推荐(0) 编辑
摘要:一、概述顾名思义,tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。[root@mail ~]# tcpdump -vvtcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes13:43:13.225632 IP (tos 0x10, ttl 64, id 280, offset 0, flags [DF], proto: TCP (6), length: 172) 1. 阅读全文
posted @ 2013-05-24 14:27 李秋 阅读(986) 评论(0) 推荐(0) 编辑
摘要:以前的章节已经介绍过了FORM传输表单的形式,但是在使用过程中仍然有很多问题,这里再向大家详细介绍一下。Multipart/form-data是上传文件的一种方式。Multipart/form-data其实就是浏览器用表单上传文件的方式。最常见的情境是:在写邮件时,向邮件后添加附件,附件通常使用表单添加,也就是用multipart/form-data格式上传到服务器。具体的步骤如下:1、客户端和服务器建立链接(TCP协议)2、客户端可以向服务器发送数据3、客户端按照符合Multipart/form-data的格式发送数据POST /top/router/rest?timestamp=2013- 阅读全文
posted @ 2013-05-24 10:53 李秋 阅读(8835) 评论(0) 推荐(0) 编辑
摘要:服务器返回的消息服务器返回的HTTP消息也分为消息头和消息体两部分。前面连载的第二篇里已经介绍了返回消息中常见返回代码的含义。对于非正常的返回代码的处理比较简单,只要照着要求去做就好了,而对于正常的返回代码(200),其处理方式就多种多样了。1、Content-TypeContent-Type是返回消息中非常重要的内容,它标识出这个返回内容的类型,其值为“主类型/子类型”的格式,例如最常见的就是text/html,它的意思是说返回的内容是文本类型,这个文本又是HTML格式的。原则上浏览器会根据Content-Type来决定如何显示返回的消息体内容。常见的内容类型有:1 text/html HT 阅读全文
posted @ 2013-05-23 14:26 李秋 阅读(531) 评论(0) 推荐(0) 编辑
摘要:客户端发送的内容这一次主要来观察HTTP消息头中客户端的请求,从中找到一些有意思的内容。1、HTTP_REFERER写两个简单的网页:a.htm:<a href=b.htm>to page b</a>b.htm:haha内容很简单,就是网页A中有一个到B的链接。把它们放到IIS上,并访问网页A,从中再点击到B的链接,于是看到了B页的“haha”。那么这两次请求有什么不同吗?观察它们所发送的HTTP消息头,最明显的区别就是访问B页时比访问A页时多了一行:Referer:http://localhost/a.htm这一行就表示,用户要访问的B页是从A页链接过来的。服务器端要 阅读全文
posted @ 2013-05-23 14:20 李秋 阅读(4466) 评论(0) 推荐(0) 编辑
摘要:常见的HTTP返回码上一篇文章里我简要的说了说HTTP消息头的格式,注意到在服务器返回的HTTP消息头里有一个“HTTP/1.1 200 OK”,这里的200是HTTP规定的返回代码,表示请求已经被正常处理完成。浏览器通过这个返回代码就可以知道服务器对所发请求的处理情况是什么,每一种返回代码都有自己的含义。这里列举几种常见的返回码。1 403 Access Forbidden如果我们试图请求服务器上一个文件夹,而在WEB服务器上这个文件夹并没有允许对这个文件夹列目录的话,就会返回这个代码。一个完整的403回复可能是这样的:(IIS5.1)1 HTTP/1.1 403 Access Forbid 阅读全文
posted @ 2013-05-23 13:54 李秋 阅读(703) 评论(0) 推荐(0) 编辑
摘要:但凡搞WEB开发的人都离不开HTTP(超文本传输协议),而要了解HTTP,除了HTML本身以外,还有一部分不可忽视的就是HTTP消息头。做过Socket编程的人都知道,当我们设计一个通信协议时,“消息头/消息体”的分割方式是很常用的,消息头告诉对方这个消息是干什么的,消息体告诉对方怎么干。HTTP传输的消息也是这样规定的,每一个HTTP包都分为HTTP头和HTTP体两部分,后者是可选的,而前者是必须的。每当我们打开一个网页,在上面点击右键,选择“查看源文件”,这时看到的HTML代码就是HTTP的消息体,那么消息头又在哪呢?IE浏览器不让我们看到这部分,但我们可以通过截取数据包等方法看到它。下面 阅读全文
posted @ 2013-05-23 13:39 李秋 阅读(461) 评论(0) 推荐(0) 编辑
摘要:开发的作者是:Yichun "agentzh" Zhang (章亦春)agentzh@gmail.com文件在:https://github.com/agentzh/lua-resty-upload----------------------------------------------------------------------------------------废话少说,具体步骤如下:1、上传upload.lua到指定的目录,我的是_services/upload/conf2、配置上传的SERVER(域名自己配制)location = /upload { clie 阅读全文
posted @ 2013-05-21 11:42 李秋 阅读(2422) 评论(0) 推荐(0) 编辑
摘要:大部分人应该回答是LinkedList快一些,实际却不然。import java.util.*;public class Test{ public static void main(String[] args) { ArrayList List = new ArrayList(); long start=System.currentTimeMillis(); for( int i=0;i LList = new LinkedList(); long startL=System.currentTimeMillis(); ... 阅读全文
posted @ 2013-05-07 17:46 李秋 阅读(4435) 评论(0) 推荐(0) 编辑
摘要:概论1、ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 2、对于随机访问get和set,ArrayList优于LinkedList,因为ArrayList可以随机定位,而LinkedList要移动指针一步一步的移动到节点处。(参考数组与链表来思考) 3、对于新增和删除操作add和remove,LinedList比较占优势,只需要对指针进行修改即可,而ArrayList要移动数据来填补被删除的对象的空间。ArrayList和LinkedList是两个集合类,用于存储一系列的对象引用(references)。例如我们可以用ArrayList来存储一系.. 阅读全文
posted @ 2013-05-06 23:10 李秋 阅读(3918) 评论(0) 推荐(0) 编辑
摘要:在window的Preferences中的Java->Code Style->Formatter到了这一步就是找到Ctrl+Shift+F的格式化模板了,这里不能直接修改。因为是eclipse默认的模板,是只读的。我们可以new 一个Formatter,然后点击edit就可以修改模板。我修改模板主要就是修改那个Ctrl+Shift+F后,把我的代码换多行了。修改选项卡中的Line Wrapping选项卡, 有一个Maximum line with: 80(默认);这里默认是80我们可以把它修改成120(19寸可以考虑150)的,那样不超过120个字符就不会被换行了!其他自己需要的格 阅读全文
posted @ 2013-05-03 10:19 李秋 阅读(1491) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示