不帅 发表于 2015-1-16 22:03:40

ASP网页设计asp也来玩三层?

ActiveServerPage技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。比来想玩玩asp,吊唁一下,想到在asp里用javascript的剧本,js的一些器材仿佛对照风趣。实践上也就写了两个复杂的类,一个DbHelper,一个BusinessRules,分得不是那末明白。
  DbHelper中实践上只要5个办法:
  Open(connectionString);//翻开数据毗连。connectionString:数据库毗连字符串(可略,略则挪用类中指定的默许毗连字符串)。
  Close();//封闭数据毗连。
  ExecuteNonQuery(sql);//实行SQL语句,[前往受影响的行数](中括号中的内容没完成,仿佛有些成绩)。
  ExecuteReader(sql);//前往一个数据纪录集,固然,是与数据源断开的。
  ExecuteScaler(sql);//实行SQL语句,前往第一行第一列的数据。
  BusinessRules也只要几个复杂的办法:
  GetEntity(conditions);//依据指定的查询前提获得单个实体。
  Insert(entity, identity);//将单个实体拔出数据库。identity:假如传进主键列名,则拔出数据后实体的主键属性会失掉数据库中对应的主键值。
  Update(entity, conditions);//将单个实体更新到数据库,conditions:更新前提。
  Delete(conditions);//按指定的前提删除数据。(参数略则删除全体数据)
  GetList(num, conditions, sortOrder);//获得数据列表。num:指定命量,0暗示取切合前提的全体数据。conditions:查询前提,sortOrder:排序体例。(一切参数可略)
  GetPageList(pageIndex, pageSize, conditions, sortOrder);//获得分页数据列表。conditions:查询前提(可为空),sortOrder:排序体例(必需)。
  要用的时分间接就能够了。
  怎样用呢:
  假定我们有一个批评表Comment。
  有以下字段:
  ID:int,自增字段。
  Title:nvarchar,题目。
  Body:nvarchar,内容。
  UserID:int,宣布批评的用户ID。
  State:bit,形态。
  CreateTime:DateTime,宣布工夫。
  示例代码:

<@LANGUAGE="JAVASCRIPT"CODEPAGE="65001"%>
<%
varCommentBLL=newBusinessRules("Comment");//参数Comment是表名.
varentity=CommentBLL.GetEntity("id=1");//如许就失掉了一个ID为1的批评纪录了.
for(varxinentity)//打印出实体的一切属性和值.
{
Response.Write(x+":"+entity+"<br>");
}
//固然js有良多种取值体例:
Response.Write("Title:"+entity.Title);//遗憾的是没有智能感知,怎样点也点不出属性来,呵呵.
Response.Write("UserID:"+entity["UserID"]);
//拔出:
varcomment={
Title:"JavascriptDemo",
Body:"Hello,Robot!",
UserID:1,
State:false,
CreateTime:newDate().toLocaleString()
}
if(CommentBLL.Insert(comment,"ID"))
{
Response.Write("success!"+comment.ID);//拔出数据后comment的ID就会失掉数据库中主动递增的值.
}
//更新:持续用下面的实体吧
with(comment)
{
ID=undefiend;//这个是主动递增的列,不克不及赋值,以是要删失落.
Title+="-->update";
State=true;
}
if(CommentBLL.Update(entity,"ID=1"))//假定要更新的ID为1.
{
Response.Write("success!");
}
//删除:
if(CommentBLL.Delete("ID=1"))//删除ID为1的批评.
{
Response.Write("success!");
}
//获得数据列表:
varlist=CommentBLL.GetList(0,"Bodylike%博客园%","CreateTimeDesc");//获得内容中包括"博客园"的数据列表.
for(varx=0;x<list.length;x++)//打印列表.
{
Response.Write(x+"-->"+"Title:"+list.Title+"<br>");
Response.Write(x+"-->"+"Body:"+list["Body"]+"<br>");
}
//获得分页数据列表:
varpageList=CommentBLL.GetPageList(1,10,null,"CreateTimeDesc");//获得一切数据的第一页数据列表.
//这里前往的数据会比GetList前往的数据多一个RecordCount属性.
Response.Write("切合前提的纪录总数:"+pageList.RecordCount+"<br>");
//打印数据同上,略...
%>

  只完成了一些复杂的功效,估量成绩也多多,只是乐趣来了任意写写,我对照火星,见得器材少,人人见责不要怪。呵呵。GetPageList用的是MSSQL2005里的Row_Number()来分页的,不克不及通用,mssql2k/access改一下就好了。
  固然也能够弄得更壮大,好比弄几个类来映照数据表/字段等等,不外没工夫写那末多,偶然间拿来做个复杂的项目玩玩还能够。仍是有些吊唁asp的复杂,固然我asp对照菜。

ASP一般认为只能运行在IIS上,正如前面所提到的,这并不是十分正确,事实上,ASP也能运行在Apache上。ApacheASP可在任意Apache服务器上运行有限的ASP功能,所需做的,只需打开mod_perl。

若天明 发表于 2015-1-20 17:59:20

不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍

因胸联盟 发表于 2015-1-29 13:50:05

没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。

只想知道 发表于 2015-2-6 01:41:52

Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write

冷月葬花魂 发表于 2015-2-14 20:57:55

如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:

灵魂腐蚀 发表于 2015-3-4 10:30:19

没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。

乐观 发表于 2015-3-11 18:21:10

学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:

小魔女 发表于 2015-3-19 07:06:42

在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。

再现理想 发表于 2015-3-27 13:07:48

Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
页: [1]
查看完整版本: ASP网页设计asp也来玩三层?