2007年4月10日
很多人都分不清GET与POST的区别,以及什么时候用GET?什么时候用POST?
GET和POST两种方法都是将数据送到服务器,但你该用哪一种呢?
HTTP标准包含这两种方法是为了达到不同的目的。POST用于创建资源,资源的内容会被编入HTTP请示的内容中。例如,处理订货表单、在数据库中加入新数据行等。
当请求无副作用时(如进行搜索),便可使用GET方法;当请求有副作用时(如在数据库添加数据行),则用POST方法。一个比较实际的问题是:GET方法可能会产生很长的URL,或许会超过某些浏览器与服务器对URL长度的限制。
若符合下列任一情况,则用POST方法:
请求的结果有持续性的副作用,例如,数据库内添加新的数据行。
若使用GET方法,则表单上收集的数据可能让URL过长。
要传送的数据不是采用7位的ASCII编码。
若符合下列任一情况,则用GET方法:
请求是为了查找资源,HTML表单数据仅用来帮助搜索。
请求结果无持续性的副作用。
收集的数据及HTML表单内的输入字段名称的总长不超过1024个字符。
本文来自: 中国自学编程网(www.zxbc.cn) 详细出处参考:http://www.zxbc.cn/html/article/aspprog/0916120715029.html
posted @
2008-02-26 09:57 MyBox 阅读(631) |
评论 (0) |
编辑 收藏
J2EE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。
posted @
2008-02-25 16:10 MyBox 阅读(229) |
评论 (0) |
编辑 收藏
web.xml文件的格式-必须注意顺序
由于Web程序开发中各种人员有不同分工,而Web程序的部署描述文件是程序构件提供者、程序组装者和程序部署者之间的沟通机制;Servlet 2.4之前的版本规定了在Web服务器中使用DTD格式的web.xml,而Servlet 2.4将依照XML schema格式定义web.xml;实际上这两种格式的web.xml只是在头部有区别,其内容都是描述Web程序的部署信息。在web.xml中出现的部署元素主要包含以下信息:
ServletContext的初始化变量(Init Parameters);
交互会话(Session)的设置;
Servlet的声明定义;
Servlet和网址URL的映射(Mapping);
应用程序生命周期的监听器(Application Lifecycle Listener);
过滤器声明;
过滤器和网址URL或Servlet/JSP的映射;
MIME类型;
欢迎文件(Welcome File);
错误网页(Error Pages);
安全设置信息;
taglib配置;
JNDI对象(env-entry,ejb-ref,ejb-local-ref,resource-ref,resource-env-ref)。
在web.xml中具体标识为:
icon?,
display-name?,
description?,
distributable?,
context-param*,
filter*,
filter-mapping*,
listener*,
servlet*,
servlet-mapping*,
session-config?,
mime-mapping*,
welcome-file-list?,
error-page*,
taglib*,
resource-env-ref*,
resource-ref*,
security-constraint*,
login-config?,
sec..............
其中taglib配置与JNDI对象这两项是支持J2EE的Web服务器必须要求的。对于不支持J2EE的servlet/JSP服务器,不需要这两项;在web.xml中的元素需要按照规定的大小写和顺序出现。
posted @
2007-07-12 09:52 MyBox 阅读(1232) |
评论 (1) |
编辑 收藏
用JBoss 3.2.1架站以来,始终是一个大问题。不大的站点,1G的内存都不够用,经常要消耗500Mb的交换内存(swap)。
JAVA_OPTS(bin/run.conf)写法: -Xms 520m -Xmx 1220m -Xss 15120k +XX:AggressiveHeap
这个JAVA_OPTS犯了2个致命的错误:
1. +XX:AggressiveHeap会使得 Xms 1220m没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。
另外Xmx作为允许jvm使用的最大内存数量,不应该超过物理内存的90%。
而之所以使用了这个参数,是因为不加的话,JBoss会在运行一天左右的时间后迅速崩溃,上机课是,甚至出现过半个小时就崩溃的情况。
之所以要用这个参数,用swap支持服务器运行,是因为犯了下面的错误:
2. -Xss 15120k
这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512k.
这就是JBoss刚启动时,还有200Mb内存富余,但会在一个小时内迅速用完,因为服务器的threads在迅速增加。前3天,每天都多吃80Mb左右的swap.在第四天开始稳定下来。今年春节在外度假,观察到了这个现象,却不理解其原因:服务器在线程到达100之后,一般不再增加新的线程,新增加的在用完之后,会被迅速destroy,1.25-2.10所使用的线程基本是1.21- 1.23创建的,因此没有再消耗新的内存。服务器持续运行时间,也因此大大超乎我5天的预期,到达了20天。
修改:
1.修改JAVA_OPTS,去掉+XX:AggressiveHeap,修改Xss。现在的JAVA_OPTS为:
-Xms 520m -Xmx 900m -Xss 128k
2.修改deploy/jbossweb-tomcat55.sar/service.xml
将maxThreads根据目前的访问量由默认的250降为75,并使用jboss 4默认未写在标准service.xml里面而jboss 3写入了的2个参数: maxSparseThreads=55,minSparseThreads=25
3.修改了oracle-ds.xml将最大连接数有150降为50.
4.去掉了一些不用的服务。
posted @
2007-05-30 11:01 MyBox 阅读(792) |
评论 (0) |
编辑 收藏
oracle number类型的数值存储空间是几个字节?
其实有公式可以计算:
number(p,s)占用得空间为:
length = floor((p+1)/2) + 1
备注:如果该数值为负数,需要再加一个字节。
----------------
例如:NUMBER(14,4)的类型数值,存储空间为
select floor((14+1)/2) + 1 from dual
结果输出为: 8
posted @
2007-04-10 14:43 MyBox 阅读(3652) |
评论 (0) |
编辑 收藏