电子商务网站开发技术PPT课件_第1页
电子商务网站开发技术PPT课件_第2页
电子商务网站开发技术PPT课件_第3页
电子商务网站开发技术PPT课件_第4页
电子商务网站开发技术PPT课件_第5页
已阅读5页,还剩107页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章电子商务网站开发技术,4.1动态网站开发技术概述,4.1.1动态网页技术概述4.1.2几种动态网页技术的比较,4.1.1动态网页技术概述,动态网页是指网页中包含需要在Web服务器上执行的代码。当客户端向Web服务器请求动态网页时,Web服务器需要在服务器上执行动态网页的代码,然后将执行的结果连同HTML代码一起发送给客户端浏览器。由于浏览器不能识别和显示动态代码,所以不论以何种语言编写的动态网页都只是在服务器端执行并生成相应的HTML代码传给客户端,到达浏览器时都是HTML代码。,4.1.2电子商务系统的组成,(1)CGI(2)ASP(3)PHP(4)JSP,1CGI,CGI(CommonGatewayInterface,公用网关接口)主要是早期动态网页采用的技术。CGI技术早已发展成熟并且功能很强大,但由于其具有编程困难、效率低下、修改复杂等各种缺陷,正在逐渐被其它新技术所取代。,2ASP,ASP(ActiveServerPages,活动服务页)是微软公司于1996年11月推出的Web应用程序开发技术。ASP具有很多的优点,但是ASP技术局限于微软的操作系统平台,主要的工作环境是微软的IIS应用程序结构,又因ActiveX对象具有平台特性,所以ASP技术不易实现跨平台的Web服务器工作。,3PHP,PHP(ProfessionalHypertextPreprocessor)是基于GNU协议的自由软件。是内嵌于HTML中的,当今Internet上应用最为广泛的服务器脚本编程语言。PHP的语法借鉴了C、Java及Perl语言,只需要很少的编程知识就能使用标准的PHP建立一个真正交互的Web站点。,4JSP,JSP(JavaServerPages,服务器系统页面)是由SunMicrosystems公司倡导的、许多公司参与,共同建立的一种动态网页技术标准,其在动态网页的创建中有强大而特殊的功能。由于应用最广泛的Web服务器Apache能够支持JSP,并且由于Apache广泛应用在NT、Unix和Linux上,因此JSP有极为广泛的执行平台。,4.2ASP.NET技术基础,4.2.1ASP.NET的特点4.2.2ASP.NET的运行环境4.2.3安装.NETFramework4.2.4在IIS上配置ASP.NET,4.2.1ASP.NET的特点,ASP.NET其实不是一门编程语言,而是一个统一的Web开发模型。ASP.NET是.NETFramework的一部分,在ASP.NET中可以利用.NETFramework中的类进行编程。在ASP.NET中可以用VB.NET、C#、J#和JScript.NET等编程语言来开发Web应用程序。并且,ASP.NET支持以可视化的方式创建企业级网站。,1简单易学,ASP.NET把一些常用的任务,如表单的提交、客户端的身份验证等变得非常简单。而且ASP.NET页面构架允许你建立自己个性化的用户界面,使其不同于常见的界面。,2执行效率高,ASP.NET把程序在服务器端首次运行时进行编译,因此,它的执行效率比解释执行的效率高很多。,3管理高效,ASP.NET使服务器环境和应用程序的设置更加简单而高效。ASP.NET的配置信息都保存在简单文本中,更新设置甚至都不需要启动本地的管理员工具就可以实现。一个ASP.NET的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,不需要重新启动系统。,4强大的适应性,由于ASP.NET是基于通用语言的编译运行的程序,这使它可以运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库、消息机制和数据接口等都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也与编写语言无关,所以,可以用任何语言来编写程序,或者把程序用很多种语言来写,现在已经支持的有VB,C#和Jscript等。,5自定义性和可扩展性,ASP.NET具有很强的可扩展性,它可以让网站开发人员在自己的代码中定义自己的plug-in的模块。由于ASP.NET可以加入自己定义的如何组件,使得网站程序的开发具有前所未有的扩展性。,6安全性,ASP.NET的基于Windows认证技术的安全措施,可以保护源程序的安全。,7自动适应多处理器环境,ASP.NET被设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,可以极大地提高运行速度。即使你现在的ASP.NET应用软件是在单处理器环境下开发的,在多处理器运行时也不需要做任何改变就能提高他们的效能。,4.2.2ASP.NET的运行环境,4.2.3安装.NETFramework,安装部署ASP.NET网站时,需要.NET的运行环境.NETFramework。.NETFramework类似于Java的JDK,包含有.NET程序运行环境和命令行编译工具。如果服务器上没有安装.NETFramework,这就需要从微软网站下载,下载网址是:,需要注意的是,如果先安装.NETFramework再安装IIS的话,就需要运行一个命令向IIS注册.NETFramework。假如操作系统安装在C盘并且安装的.NETFramework的版本为2.0或更高版本,那么这个文件的路径就是:C:WINDOWSMicrosoft.NETFrameworkv2.0.50727aspnet_regiis.exe在“运行”窗口输入:“C:WINDOWSMicrosoft.NETFrameworkv2.0.50727aspnet_regiis.exei”,4.2.4在IIS上配置ASP.NET,在.NETFramework安装完成后,还需要进行相应的配置。点击【开始】【程序】【管理工具】【Internet信息服务】,运行IIS,打开【Internet信息服务】窗口进行配置。,4.3ASP.NET的开发应用,4.3.1ASP.NET基础4.3.2ASP.NET的内置对象4.3.3ASP.NET的表单验证4.3.4ASP.NET的数据绑定4.3.5ASP.NET的数据库操作,4.3.1ASP.NET基础,(1)ASP.NET入门(2)第一个ASP.NET程序(3)ASP.NET的HTML控件(4)ASP.NET的Web控件(5)HTML控件和WEB控件的异同(6)自定义修饰控件(7)注意事项,1ASP.NET入门,ASP.NET页面的后缀名是.aspx,在安装完ASP.NET时,IIS会自动把Default.aspx作为你的默认首页。ASP.NET把WEB页面当做一个窗体,这一点与面向对象编程的VB、VC、BC、Dephi等程序语言类似。ASP.NET是编译运行的,在第一次运行时编译,所以,ASP.NET以后的运行速度比ASP执行快。,2第一个ASP.NET程序,ASP.NET的程序可以用任何编辑器书写,甚至是Windows的记事本。下面就是一个ASP.NET的程序例子,值得注意的是,Response.Write语句,在asp中写成Response.WriteHelloWorld!也是正确的,但在.net中,必须用(和)括起来。,3ASP.NET的HTML控件,ASP.NET框架中的第一组控件称为HTML控件。这些控件位于System.Web.UI.HtmlControls命名空间中,是从HtmlControl基类中直接或间接派生出来的。如果要把现有的ASP程序向ASP.NET移植,那么,HTML控件将发挥非常重大的作用。,4ASP.NET的Web控件,(1)文本显示Label控件用于在页面中显示只读的静态文本或数据绑定的文本:,(2)输入控件TextBox控件用于提供文本编辑能力。与Label控件相似,这里的文本也可以是数据绑定的。TextBox控件支持多种模式,可以用来实现单行输入、多行输入和密码输入。如单行输入为:,(3)复选框控件CheckBox控件用于生成能够在选中和清除这两种状态间切换的复选框,如:,(4)单选控件RadioButton控件与CheckBox控件相似,但使用时通常会与其它RadioButton控件组成一组,以提供一组互斥的选项,如:,(5)下拉列表控件DropDownList控件提供了将选项显示为下拉式列表,并从中进行单项选择的能力,如:,(6)滚动列表控件ListBox控件能够以可滚动列表的形式显示选项,并允许从中选择单个或多个选项,如:,(7)多列复选控件CheckBoxList控件用于创建一组显示为一列或多列的Checkbox控件,如:,(8)多列单选控件RadioButtonList控件与CheckBoxList控件非常相似。不同之处在于,它使用的是一组RadioButton控件以创建一组互斥的选项,如:,(9)按钮提交控件Button控件可以生成一个能够将页面再提交给服务器的三维按钮,如:,(10)超级链接提交控件LinkButton控件的行为与Button控件相同。但它在页面上会显示为一个超级链接,如:,(11)图像提交控件ImageButton控件也用于提交页面。它会显示为一幅图像,并且能够提供用户单击位置的x坐标和y坐标,如:,(12)文本超级链接控件HyperLink控件用于生成能够跳转到其它URL的链接,如:,(13)图像显示控件Image控件能够在页面上显示图像:,(14)版面控件Panel控件常用作简单的组合控件以及动态创建的控件的容器。通常,Panel控件不可见。,(15)表格控件Table控件与相关的TableRow和TableCell控件相结合,可以用来以编程的方法创建表或表式版面布局,如:0,00,1,1,01,1,(16)日历控件Calendar控件能够让用户浏览日期并进行日期选择(包括选择日期范围),如:.,(17)列表绑定控件列表绑定控件用于显示与其相关联的数据源或列表的内容。它提供了创建多种自定义及标准版式的能力。,(18)多列绑定控件DataList控件也使用模板来显示与之绑定的数据源的内容。此外,它还提供了自定义外观格式和布局的功能,如:.,(19)表格绑定控件DataGrid控件能够创建格式丰富的列表版式,用来显示与之绑定的数据源的内容。它可提供对排序、编辑和分页的支持,如:.,(20)广告控件AdRotator控件用于显示广告或横幅。广告的有关信息(包括其图像的URL)使用XML文件来定义,如:,(21)其他控件Validation控件简化了对用户输入的内容进行验证的工作。RequiredFieldValidator控件用于确保用户填写了必须输入的内容。RangeValidator控件用于检查用户输入的内容是否在有效取值范围之内。这对于数字或日期类型的输入内容十分有用。,CompareValidator控件用于对比一个控件中的输入内容与另一个控件中的输入内容RegularExpressionValidator控件能够检查用户输入的内容是否符合标准的规范表达式(或字符串模式)。CustomValidator控件允许用户提供自定义的服务器端和客户机端验证逻辑。ValidationSummary控件能够提供由验证控件生成的所有错误信息的概要。,5HTML控件和WEB控件的异同,(1)控件的抽象能力(2)对象模型(3)检测浏览器(4)控制生成的HTML,(1)控件的抽象能力HTML控件不具备任何抽象能力。每种控件都与HTML标记一一对应。Web控件则创建了更高级别的抽象。Web控件没有任何对应的HTML标记(如Calendar和DataGrid),这是因为它们并不直接映射为HTML标记。Web控件还能够在适当的场合起到合并功能的作用(例如用一个TextBox控件来代替多个标记)。Web控件的这种抽象能力,为使用其他种类丰富的第三方控件工具箱打开了方便之门。,(2)对象模型HTML控件提供了以HTML为中心的对象模型。每种控件都包括一个属性集,可以用来控制标记的属性。该属性集使用了字符串名/值对,并且不是强类型的。Web控件则提供了基于表单的、类似于VisualBasic的编程模式。Web控件也提供了属性集,但它们的主要目标在于提供一种格式丰富、类型安全且具有一致性的对象模型。,(3)检测浏览器HTML控件不具有检测请求页面的浏览器的能力,也不会修改它们提供的HTML。在使用这组控件时,编程者需要自己确保页面能同时在高级和低级浏览器上工作。Web控件则能够针对不同的浏览器提供不同的行为,从而充分发挥浏览器的潜力。Web控件还能够自动对它们生成的结果进行调整,例如,validation控件还可以通过客户端的脚本来创建用于高级浏览器的具有高度交互性的页面。,(4)控制生成的HTMLHTML控件允许您完全控制所显示的内容以及发送到客户机浏览器的内容。Web控件则提供了更为丰富的对象模型,以及可以自动适应多种浏览器的能力。,6自定义修饰控件,自定义修饰控件就是对控件的修饰,修饰的作用,就是让Web窗体更漂亮。Thisissomeliteraltextinsideastyledspancontrol,7注意事项,在使用ASP.NET编程的时候,应该注意,.net支持的语言不是VBScript而是VB,所以声明变量的时候,不能使用简单的Dim。由于ASP.NET默认的字符集不是中文字符,因此需要自己修改字符集。,4.3.2ASP.NET的内置对象,(1)Response对象(2)Request对象(3)Application对象(4)Session对象(5)Server对象(6)Cookie对象(7)Cache对象(8)Global.aspx,1Response对象,(1)Response对象的属性BufferOutput指示是否缓冲输出Cache获取Web页的缓存策略Charset获取或设置输出流的HTTP字符集IsClientConnected指示客户端是否仍连接在服务器上,(2)Response对象的方法Write()向客户端发送字符串信息End()终止当前页的运行Clear()清除缓存Flush()强制输出缓存的所有数据Redirect()网页转向地址WriteFile()读取一个文件,2Request对象,(1)Request对象的属性QueryString获取HTTP查询字符串变量集合Path获取当前请求的虚拟路径UserHostAddressBrowser获取客户端的浏览器信息Form属性QueryString属性ServerVariables属性,(2)Request对象的方法BinaryRead执行对当前输入流进行指定字节数的二进制读取MapPath为当前请求将请求的URL中的虚拟路径映射到服务器上的物理路径,3Application对象,(1)Application对象的属性AllKeys获取HttpApplicationState集合中的访问键Count获取HttpApplicationState集合中的对象数,(2)Application对象的方法Add新增一个新的Application对象变量Clear清除全部的Application对象变量Get使用索引关键字或变数名称得到变量值GetKey使用索引关键字获取变量名称,Lock锁定全部的Application变量Remove/RemoveAll使用变量名称删除一个Application对象/删除全部的Application对象变量Set使用变量名更新一个Application对象变量的內容UnLock解除锁定的Application变量,(3)Application用法使用Application对象保存信息多用户同时存取同一个Application对象使用Application事件,4Session对象,(1)Session对象的属性Count获取Session对象的个数TimeOut设置会话状态的超时期限SessionID获取会话IDItem按名称获取会话状态中的值,(2)Session对象的方法Add将新的项添加到会话状态中Clear清除会话状态中的所有值Remove删除会话状态集合中的项RemoveAll清除会话状态中的所有值abandon取消当前会话,5Server对象,(1)Server对象的属性MachineName获取服务器的计算机名称ScriptTimeout获取和设置请求超时,(2)Server对象的方法CreateObject创建COM对象的一个服务器实例CreateObjectFromClsid创建COM对象的服务器实例,该对象由对象的类标识符(CLSID)标识Execute执行当前服务器上的另一个aspx页,执行完该页后再返回本页继续执行,Transfer终止当前页的执行,并为当前请求开始执行新页HtmlDecode对HTML编码的字符串进行解码,并返回已解码的字符串。HtmlEncode对字符串进行HTML编码并返回已编码的字符串。MapPath返回与Web服务器上的指定虚拟路径相对应的物理文件路径,UrlDecode对已被编码的URL字符串进行解码,并返回已解码的字符串。UrlEncode将代表URL的字符串进行编码,以便通过URL从Web服务器到客户端进行可靠的HTTP传输。UrlPathEncode对URL字符串的路径进行URL编码,并返回已编码字符串。,6Cookie对象,(1)Cookie对象的属性Name获取或设置Cookie的名称Value获取或设置Cookie的ValueExpires获取或设置Cookie的过期时间Version获取或设置此Cookie符合的HTTP状态维护版本,(2)Cookie对象的方法Add新增一个Cookie变量Clear清除Cookie集合内的变量Get得到Cookie的变量值GetKey以索引值来获取Cookie的变量名称Remove通过Cookie变量名来删除Cookie变量,7Cache对象,(1)Cache对象的属性Count获取存储在缓存中的项数。Item获取或设置指定键处的缓存项,(2)Cache对象的方法Add将指定项添加到Cache对象Get从Cache对象检索指定项Remove从应用程序的Cache对象移除指定项Insert向Cache对象插入项。,8Global.aspx对象,ASP.NET中,为了突出和ASP的区别,将Global.asp改成Global.aspx但功能没有很大的变化。,4.3.3ASP.NET的表单验证,(1)表单验证(2)ASP.NET的表单验证(3)ASP.NET的表单验证的实例(4)一个完整的案例,1表单验证,商业网站常常有客户调查、用户注册之类的信息收集任务,这就必然会用到表单的验证。,2ASP.NET的表单验证,与以前的表单验证不同,ASP.NET的表单验证分为以下几个步骤:1.aspx文件被编译,运行2.用户输入数据3.触发Page_Load事件4.更改Web控件属性,提示哪里没有输入5.将页面用Html重新输出给用户6.再次提醒用户输入,3ASP.NET的表单验证实例,请输入新的用户ID和口令用户ID口令,请重新输入口令,4.3.4ASP.NET的数据绑定,(1)DataBind简介(2)DataBind的建立(3)简单的数据绑定(4)数组的绑定和显示(5)DataBind的高级应用定义栏目,1DataBind简介,数据绑定是ASP.NET处理数据的核心部分,ASP.NET的服务器控件,数据库操作等所有涉及操作数据的控件都会用到DataBind。DataBind包括三大方法,Repeater,DataList和DataGrid。这些方法都是通过HTML来显示数据的内容。,2DataBind的建立,所有的DataBind都应该用DataBind()函数来建立数据绑定,他可以被所有的控件使用。建立数据绑定的时候,DataBind可以作为控件的一个子项,比如DataList1.DataBind(),或者Page.DataBind(),会绑定整个页面。DataBind常在页面载入时就被绑定。,下面代码给出了一个DataBind的例子。ProtectedSubPage_Load(SrcAsObject,EAsEventArgs)DataBind()EndSub,3简单的数据绑定例子,SubSubmitBtn_Click(senderAsObject,eAsEventArgs)Page.DataBindEndSub请选择您的发卡行,工商银行农业银行您选择的发卡行是:runat=server/,此代码中,在选择发卡行的地方没有使用什么控件,但是他却能正确的显示我们的选择结果,这个是就捆绑的结果,注意这行代码,正是它取得了捆绑的数据。,4数组的绑定和显示,除了简单的数据绑定,还可以绑定一个数组,并且把他们排列显示出来,5DataBind的高级应用定义栏目,DataBind提供了下列可以自己定义的栏目:Bound用来控制数据命令和读出HyperLink让数据以超链的形式显示Button建立动态的数据按钮Template样本模板方式输出数据,4.3.5ASP.NET的数据库操作,(1)关于ADO.net(2)数据库连接的例子(3)操作数据库(4)数据的显示(5)数据的添加、修改和删除(6)分页显示,1关于ADO.NET,当前的ADO.NET提供了两种托管提供程序:一种用于SQLServer7.0或更高版本,另一种用于其他所有您可能已经安装的OLEDB提供程序。在这两种情况下分别使用不同的类,但遵循相似的命名规则。除前缀外,名称都是相同的。前一种情况前缀为SQL,后一种情况则是ADO,代码分别如下:,如果使用SQLServer表,则应该使用SQL类进行访问,因为它们可以直接进入数据库服务器的内部API,跳过了由OLEDB提供程序表示的中间层。而ADO类是OLEDB提供程序上的.NET接口,它们使用COMInterop桥进行工作。,2数据库连接的例子,下面代码给出了一个数据库链接的例子:DimmyConnectionAsNewSQLConnection(server=localhost;uid=sa;pwd=;database=pubs)DimmyCommandAsNewSQLDataSetCommand(select*fromAuthors,myConnection),或者SQLConnectionmyConnection=newSQLConnection();myConnection.DataSource=localhost;myConnection.UserID=sa;myConnection.Password=;myConnection.ConnectionTimeout=30;myConnection.Open();myConnection.Database=pub;myConnection.IsolationLevel=IsolationLevel.ReadCommitted,Connection的方法和属性简述如表所示:,3操作数据库,通过一个Command对象才可以对数据库进行操作,代码如下:DimmyConnectionAsSQLConnection=NewSQLConnection(server=localhost;uid=sa;pwd=;database=pubs)DimmyCommandAsSQLCommand=NewSQLCommand(select*fromAuthors,myConnection)myConnection.Open()DimdrAsNewSQLDataReadermyCommand.Execute(dr).myConnection.Close(),或者采用如下代码:DimmyConnectionAsNewSQLConnection(server=localhost;uid=sa;pwd=;database=pubs)DimmycommandAsNewSQLCommand(_UPDATEAuthorsSETphone=(800)555-5555WHEREau_id=123-45-6789,_myConnection)myCommand.ActiveConnection.Open()myCommand.ExecuteNonQuery()myCommand.ActiveCon

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论