脚本
• 在ASP程序行首使用Option Explicit
不声明VBScript的变量会加重了服务器的解析负担,进而影响服务器的响应请求速度。为加快速度和方便调试,建议强制进行变量声明。
• 多支选择尽量使用Select Case,避免使用If……ElseIf……ElseIF……End If。使用case语句,可以使程序流程化,执行起来也比if语句来
的快。
• 如果不是别无选择,否则不要使用strPage=Request("page")的这样的形式来获取参数,因为这将按顺序搜索全部的集合—QueryString、Form、Cookies、ClientCertificate、ServerVarible直到发现第一个匹配值的名称。这样做比直接访问适当的集合效率低,并且是不安全的,除非能绝对保证这个值不会出现在另外一个集合中。
例如,可能希望搜索满足客户请求的WEB服务器名称,这通过出现在每个查询中的Request.ServerVarables集合中寻找“SERVER_NAME”来实现
。然而,假如其他的集合也包含名为“SERVER_NAME”的值(键名不区分大小写),当使用Request("server_Name")时,就会得到错误的结果。
总而言之,应尽可能直接访问适当的集合。
• 在一个页里。如果要多处使用Request.Form("a"),应当把Request.Form赋给一个变量,在页面中多处引用这个变量而不是这个集合。同样,对于rs("a")这样的集合也应当如此。
[数据库]
• 仅选择所需的列。当打开记录集时,不要自动地使用表名(即Select *),除非需要获得所有的列。使用单独的列意味着将减少发送到服务器
或从服务器取出的数据的数量。即使需要使用全部列,单独地命名每个列也会获得最佳的性能,因为服务器不必再解释这些列是什么名字。
• 尽可能使用存储过程。存储过程是预先编译的程序,含有一个已经准备好的执行计划,所以比S Q L语句执行得更快。
• 使用存储过程更改数据。这总是比在记录集上使用A D O方法执行速度快。
• 除非必需否则不要创建记录集。运行操作查询时,要确定加入了adExecuteNoRecords选项,这样记录集就不会创建。当仅仅返回一个或两个
字段的单行记录时(比如I D值),也可以在查询状态下使用这种方法。在这种情况下,存储过程和输出参数将会更快。
具体语法:
conn.Execute Sql,,adCmdText + adExecuteNoRecords
• 使用适当的光标和锁定模式。如果所做的全部工作是从记录集中读取数据,并将其显示在屏幕上(比如,创建一个表),那么使用缺省的只能
前移的、只读的记录集。A D O用来维护记录和锁定细节的工作越少,执行的性能就越高。
• 当遍历记录集时一个保证能提高性能的方法是使用对象变量指向集合中的成员。
例如,
考虑下面的遍历记录集的例子。
可以用下面的方法加速代码执行,同时使其更易于理解。
Dim rs,Sql
Server.CreateObject("ADODB.RecordSet")
Sql = "Select a,b FROM db_name orDER BY a DESC"
rs.open Sql,conn,1,1
If rs.Eof and rs.Bof Then
Response.Write("无记录")
Response.End
Else
Dim a,b
Set a = rs(0)
Set b = rs(1)
Do While Not rs.Eof
Response.Write("a=" & a & ";b=" & b)
rs.MoveNext
Loop
End If
这里使用了两个变量,并指向记录集的rs集合中的特定字段。因为这里建立了一个对象的引用,所以可以使用对象变量而不是实际的变量,这意味着脚本引擎的工作减少了,因为在集合中进行索引的次数变少了。
关于ado常数
要在Asp中使用ado常数,有两种办法。
这种方法的缺点是会造成页面过大。
一个比较好的解决的方法是创建一个对类型库的引用,这种方法不需要将常数包含进ASP文件而直接可以引用常数:
或
打开记录集时,可以定义记录集打开的游标类型和锁定类型。在adovbs.inc文件中定义了一些常量来定义这些类型。adovbs.inc文件保存在
C:\ProgramFiles\Common Files\System\ado目录下面。
关于RS.OPEN SQL,CONN,A,B
A(游标类型):
ADOPENFORWARDONLY(=0)
只读,且当前数据记录只能向下移动
ADOPENKEYSET(=1)
只读,当前数据记录可自由移动
ADOPENDYNAMIC(=2)
可读写,当前数据记录可自由移动
ADOPENSTATIC(=3)
可读写,当前数据记录可自由移动,可看到新增记录
B(锁定类型):
ADLOCKREADONLY(=1)
缺省锁定类型,记录集是只读的,不能修改记录
ADLOCKPESSIMISTIC(=2)
悲观锁定,当修改记录时,数据提供者将尝试锁定记录以确保成功地编辑记录。只要编辑一开始,则立即锁住记录。
ADLOCKOPTIMISTIC(=3)
乐观锁定 ,直到用Update方法提交更新记录时才锁定记录。
ADLOCKBATCHOPTIMISTIC(=4)
批量乐观锁定,允许修改多个记录,只有调用UpdateBatch方法后才锁定记录。
当不需要改动任何记录时,应该使用只读的记录集,这样提供者不用做任何检测。
对于一般的使用,乐观的锁定可能是最好的选择,因为记录只被锁定一小段时间,
数据在这段时间被更新。这减少了资源的使用。
高级
为了代码重用和网站程序维护。尽量使用类和函数封装。在任何一个可能出现重复代码的地方,都可以考虑用类或函数来实现,而不是简单地Copy代码。
分享到:
相关推荐
在ASP编程中,代码优化是提升网站性能和用户体验的关键环节。以下是对ASP编程基础语法和优化策略的详细阐述: 一、基础语法 1. **响应对象Response**:ASP中的Response对象用于向客户端发送数据,例如输出HTML文本...
"ASP.NET中错误处理代码优化--vs2003"这个主题主要关注如何在ASP.NET环境中,特别是在Visual Studio 2003下,对错误处理代码进行优化,提高应用的健壮性。 1. 错误处理的重要性:错误处理是程序开发的关键环节,...
ASP.NET优化技巧主要聚焦于提升ASP.NET应用程序的性能和效率,这是开发过程中至关重要的一环,因为性能直接影响到用户体验和系统可扩展性。以下是一些关键的优化策略: 1. **性能概述**:在设计阶段就要考虑性能,...
15. **代码优化工具**:利用Visual Studio或其他ASP代码分析工具检查代码,找出潜在的性能瓶颈并进行优化。 通过上述这些ASP编码优化技巧,可以显著提升你的ASP应用的运行效率和响应速度,降低服务器负载,从而为...
总结,ASP的高级技巧和应用涉及数据处理、代码优化、缓存策略、模板引擎、性能监控、安全防范以及AJAX等多个方面。熟练掌握这些技巧,可以让你的ASP应用程序更加高效、稳定且安全。实例01可能包含了这些概念的实际...
这可能涉及到数据库查询优化、减少服务器响应时间、缓存策略等技巧。 9. **安全防护**:防止SQL注入、跨站脚本攻击(XSS)等网络安全问题是每个Web开发者都需要关注的。理解如何编码以确保用户输入的安全性,是保障...
通过分析和学习这个"ASP代码生成工具源代码",开发者不仅可以掌握ASP编程的基本技巧,还能深入理解代码生成器的设计思想。这对于提升开发效率,特别是对于需要大量重复编写相似代码的项目,具有显著的帮助。此外,...
以下是这些优化技巧的详细解析: 1. **缓存数据**:将频繁使用的数据存储在Web服务器的内存或磁盘上,以减少对数据库的访问。这包括静态HTML、常量数据、组合框列表等。 2. **应用和Session对象的使用**:避免将非...
ASP编程常用的代码 Asp编码优化技巧8则 asp的19个基本技巧 一些Asp技巧和实用解决方法 ASP中正则表达式的应用 防止从外部提交数据的方法 ASP数据库语法总结
ASP(Active Server Pages)是一种由微软开发的服务器端脚本环境,用于生成动态网页或Web应用程序...对于初学者,这是一个很好的实践项目,而对于经验丰富的开发者,也可以从中借鉴和学习到不同的设计思路和优化技巧。
在这个ASP上传源代码中,通常会包含处理文件上传的ASP页面和一些辅助函数,用于验证文件类型、大小,以及将文件保存到服务器的指定位置。 在源代码中,开发者可能会遇到以下几个关键知识点: 1. **表单提交方式...
- 错误处理和调试技巧,如何在ASP代码中捕获和处理错误,以及利用Visual Studio或记事本等工具进行调试。 - ASP的内置对象和函数,如Session和Application对象用于处理用户会话和全局变量,以及日期时间函数、字符串...
7. **性能优化**:源代码可能包含了一些性能优化技巧,如减少不必要的数据库查询、缓存常用数据等。 8. **安全性**:通过源代码,我们可以学习到如何防止SQL注入、XSS攻击等常见的Web安全问题。 9. **版本控制**:...
- **代码优化**:遵循最佳编码实践,避免冗余代码,使用高效的算法,减少循环和递归。 综上所述,ASP.NET性能优化是一个多方面的过程,涉及数据库操作、数据访问策略、数据绑定效率以及服务器和代码层面的优化。...
ASP源代码可能包含了一些提高用户体验的技巧,如缓存机制、错误处理、页面加载优化等。这些都是构建高效、稳定的在线教育平台所必需的。 7. **课程管理和内容发布** ASP源代码会展示如何实现课程的创建、编辑、...
ASP的性能可以通过缓存、减少数据库访问和优化代码等方式提升。实例78可能会介绍如何使用Response对象的Buffering特性来提高页面生成速度。实例79和80则可能涵盖如何正确地处理运行时错误,通过设置合适的错误处理...
这100个ASP技巧实例可能会涵盖以上提到的一些或全部知识点,每个例子都是一个具体的编程实践,帮助初学者快速掌握ASP编程,提升网页开发能力。对于网页爱好者来说,通过这些实例,不仅可以学习到ASP的基本用法,还能...
这个压缩包文件“asp.net常用一些方法”显然包含了关于ASP.NET开发的一些实用技巧和常见方法,对于初学者或者想要深入理解ASP.NET的开发者来说非常有价值。 1. **ASP.NET基础** ASP.NET的核心是.NET Framework,它...
开发者可能使用了嵌入式的ASP代码来动态生成这些内容。 6. **购物车功能**:如果这是一个在线图书商城,购物车功能是必不可少的。ASP可以用来处理添加到购物车、查看购物车、结算等操作。 7. **会话管理**:为了...
通过对“103244823bianchen_asp”文件的深入研究,你可以更全面地掌握ASP编程技巧,提升自己的Web开发能力。同时,这样的课程设计也提供了实践机会,帮助你在理论知识和实际应用之间建立起桥梁。