当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP代码的对象化

ASP
ASP正则表达式技巧
ASP Access实现网站计数器(访问量)
ASP新闻分页,将一篇过长的文章分页,生成静态页面
一些关于asp 购物车的想法
一个sql查询器,自动画表格填字段
ASP实现文件直接下载的代码
把网页中的(电话,qq等数字)生成图片的ASP程序
asp长文章用分页符来分页显示
Asp函数介紹(37个常用函数)
ASP中的面向对象类
分页实现方法的性能比较
asp ajax跨域提交数据
asp修改文件和文件夹的名字的代码
ASP 多关键词查询实例代码
asp被杀毒软件误删的解决方法
asp 多关键词搜索的简单实现方法
asp 根据IP地址自动判断转向分站的代码
asp dictionary对象的用法
ASP 千万级数据分页的存储过程
ASP隐藏真实文件的下载功能实现代码

ASP代码的对象化


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 58 ::
收藏到网摘: n/a

提起ASP很多人就认为是一堆HTML脚本和被括在<%和%>之中的一些代码还有就是一些JAVASCRIPT脚本等筹在一起的一些代码的集合,这样的代码,再加上各类的不同格式的注释,看起来就一个字:乱。也不管别人能不能看得懂,只要是能实现自己的目的就可以了。
因为ASP的代码也是脚本,给了客户也不可能不被人看到其中的内容,经多包容在DLL中一部分业务逻辑,但是还是觉得ASP代码是最不值钱的代码,没有人回去购买,可以随时从别人的网站中查看源码的形式得到别人辛辛苦苦编写出来的独特风格的东东。这些原因使ASP的发展成为了一种编的快忘的也快的代码,可读性,维护性也是各种语言中最为差的代码。
其实,ASP代码也可以像其他语言一样的面向对象,模块化,将很多页面集成封装到一个类中,运用类中的不同方法来显示不同的页面,这样你可以将同一业务逻辑下的页面和逻辑封装到一个类里,用不同的方法来实现。说了这么多,可能大家的思路都乱了,赶快给大家一点范例来看看:
复制代码 代码如下:

<%
'****************************************
'* 类名:clsWebWorkFlowLog
'* 功能:工作流日志跟踪类
'* History:
'* 作成:doface
'* 日期:2003/10/24 Ver 1.0
'* 改动:
'* 日期:
'****************************************
class clsWebWorkFlowLog
'定义公开属性存放Connection对象
public ActiveConnection
private oResponse
'========================================
'= 过程名:main
'= 参 数:
'= 功 能:主调函数
'= 根据不同动作参数执行不同的操作
'= 返回值:
'========================================
sub main()
select case Request("act")
case "list"
list()
case else
list()
end select
end sub
'========================================
'= 过程名:list
'= 参 数:
'= 功 能:显示列表画面
'= 返回值:
'========================================
sub list()
dim oRs
set oRs = ActiveConnection.execute("select *,(select name from wf_config where id=w.wf_id) as wfname from wf_log w where step_id=1 and user_id=" & session("usr")("uid"))
'(select * from wf_log where id in (select max(id),wf_id,tab_id,rec_id from wf_log group by wf_id,tab_id,rec_id where wf_id= and tab_id=))
%> <p align="left"><img border="0" src="/upload/tech/20091012/20091012011821_3c59dc048e8850243be8079a5c74d079.gif" WIDTH="32" HEIGHT="32"><font color="#FF0000"><b>待办事宜:</b></font></p>
<center>
<table bgColor="#FFFFFF" border="1" borderColorDark="#ffffff" borderColorLight="#c0c0c0" cellSpacing="0" width="99%" height="25">
<tr>
<td bgColor="#808080" height="15"><font color="#FFFFFF">流程名称</font></td>
<td bgColor="#808080" height="15"><font color="#FFFFFF">申请人</font></td>
<td bgColor="#808080" height="15"><font color="#FFFFFF">申请时间</font></td>
<td bgColor="#808080" height="15"><font color="#FFFFFF">完成时间</font></td>
<td bgColor="#808080" height="15"><font color="#FFFFFF">状态</font></td>
<td bgColor="#808080" height="15"><font color="#FFFFFF">操作</font></td>
</tr><%
do while not oRs.eof
dim maxID,Next_id
if glbFunc.getMaxID(oRs("id").value,ActiveConnection,maxID,Next_id) then
%><tr>
<td bgColor="#ffffff" height="19"><%=oRs("wfname")%></a></td>
<td bgColor="#ffffff" height="19"><%=session("usr")("name")%> </td>
<td bgColor="#ffffff" height="19"><%=oRs("exetime")%> </td>
<td bgColor="#ffffff" height="19"> </td>
<td bgColor="#ffffff" height="19"><%=glbFunc.getCurZT(oRs("id").value,ActiveConnection)%></td>
<td bgColor="#ffffff" height="19"><p align="left"><a href="../PubExeTab/PubExeTab.asp?act=view&tab_id=<%=oRs("tab_id")%>&id=<%=oRs("rec_id")%>"><img src="/upload/tech/20091012/20091012011821_b86e8d03fe992d1b0e19656875ee557c.gif" border="0" alt="详细" WIDTH="16" HEIGHT="16"></a> <a href="javascript:newin('wfimage.asp?act=list&id=<%=oRs("wf_id")%>&bz=1&step_id=<%=next_id%>',true,false,false,false,true);"><img src="/upload/tech/20091012/20091012011822_1be3bc32e6564055d5ca3e5a354acbef.gif" border="0" alt="流程追踪" WIDTH="16" HEIGHT="16"></a> </p></td><%
end if
%></tr><%
oRs.movenext
loop
%></table>
</center>
<%
end sub
end class
'****************************************
'* 类结束
'****************************************
'****************************************
'ASP页面开始
'****************************************
'输出标准HTML头
glbFunc.writeHEAD
dim oWebWorkFlowLog
set oWebWorkFlowLog = new clsWebWorkFlowLog
set oWebWorkFlowLog.ActiveConnection = glbFunc.getADOConnection
oWebWorkFlowLog.main
glbFunc.writeTail()
%>

可以添加更多的方法,这样这一个类就能完成以前多个ASP文件的功能。访问的时候,在 .ASP之后加上参数(要访问哪个函数)即可区分出来。