第12章 Web数据库
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
以数据为中心的XML文档实例
<SalesOrder SONumber="12345"> <Customer CustNumber="543"> <CustName>ABC Industries</CustName> <Street>123 Main St.</Street> <City>Chicago</City> <State>IL</State> <PostCode>60609</PostCode> </Customer> <OrderDate>981215</OrderDate> <Item ItemNumber="1"> <Part PartNumber="123"> <Description> <p><b>Turkey wrench:</b><br />Stainless steel, one-piece construction,lifetime guarantee.</p> </Description> <Price>9.95</Price> </Part> <Quantity>10</Quantity> </Item> </SalesOrder>
JSP技术
• JSP(Java Server Pages)是由Sun Microsystems公司倡导并 由许多公司参与共同建立的一种动态网页技术标准。 • JSP特点:
– JSP技术以Java语言作为脚本语言;
– JSP编译器负责JSP的编译,它可以把JSP编译成 Java代码写的Servlet。Servlet是运行在服务器端 的Java类,主要处理Web请求,动态产生HTML 页面; – Servlet基于一种请求/应答的工作模式:浏览器 向Web服务器发出页面请求,Web服务器启动
Web数据库访问模式
Web浏览器与服务器之间的交互
• Web浏览器、Web服务器和Web数据库中间件之间的 交互过程大致如下:
– 客户浏览器向Web服务器发送一个页面请求;
– Web服务器接收并验证该请求,然后把请求传 递给Web服务器中间件处理。通常所请求的网 页中包含某种类型的脚本语言,该脚本将启动 数据库交互。
– VBScript由操作系统,而不是由网页浏览器解释,它的 文件比较小 – VBScript具有VB语言容易学习的特性 – VBScript还可以直接制作Windows之上的可执行程序
脚本语言
• JavaScript是另一种常用的脚本语言
• JavaScript与Java:
– JavaScript和Java除了语法上有一些相似之处,以及都能 够当作网页开发的语言以外,两者是完全不相干的 – Java程序被编译成字节码文件再解释执行,客户端要有 相应平台的解释器,而JavaScript则是将字符正文传递 给客户端并由客户端浏览器解释执行 – JavaScript是由网景(Netscape)公司研发的,后来提交給 ECMA制定为标准,它的正式名称是ECMAScript
XML与数据库
• 数据和文档 (data vs. documents)
– 以文档为中心的XML文档:
• 结构不太规则或根本不规则、数据粒度大、混合内 容多,兄弟元素或PCDATA出现的次序一般来说非常 重要; • 以文档为中心的XML文档通常是按照XML格式手写, 或从其他格式(如RTF、PDF、SGML)转换到XML; • 这种XML文档通常是供人阅读的。
– 以数据为中心的XML文档:
• 结构相当规整、数据粒度细、很少或没有混合内容。 除了对文档进行验证的时候之外,兄弟元素或
以文档为中心的XML文档实例
<Product> <Intro> The <ProductName>Turkey Wrench</ProductName> from <Developer>Full Fabrication Labs, Inc. </Developer> is <Summary>like a monkey wrench, but not as big.</Summary> </Intro> <Description> <Para>The turkey wrench, which comes in <i> both right- and left-handed versions (skyhook optional) </i>, is made of the <b> finest stainless steel </b>. The Readi-grip rubberized handle quickly adapts to your hands, even in the greasiest situations. Adjustment is possible through a variety of custom dials. </Para> <Para>You can:</> <List> <Item><Link URL="Order.html">Order your own turkey wrench</Link></Item> <Item><Link URL="Wrenches.htm">Read more about wrenches</Link></Item> <Item><Link URL="Catalog.zip">Download the catalog</Link></Item> </List> <>The turkey wrench costs <b>just $19.99</b> and, if you order now, comes with a <b>handcrafted shrimp hammer</b> as a bonus gift. </> </Description> </Product>
Web数据库
– 只需使用浏览器访问数据库,无需开发数据库前端, 统一了界面,也减少了培训费用,能使广大用户很 方便地访问数据库信息。 – 标准统一,开发过程简单:HTML是Web信息的组织 方式,是一种国际标准,开发者甚至只需学习HTML 一种语言,大大简化了学习过程和开发过程。 – 多平台支持:由于Web标准在各种设备上都得到了 支持,因此可以通过各种设备如手机等来访问数据 库,实现了跨平台操作。
– Web服务器中间件读取、验证和执行脚本。在 这里,它将与数据库连接,查询数据库,动态 地生成HTML格式的网页,然后将网页发送给
Web服务器接口
• 两个明确的服务器接口:
– CGI(Common Gateway Interface,公共网关接口) – API(Application Programming Interface,应用编 程接口)
Web基础
• Web (WWW, 万维网)本质上是Internet上运行的一种服务。在通 常意义上,Web可理解为一个由许多互相链接的超文本文档组 成的系统,是在Internet上可以访问到的所有网站的集合。 • Web的基本概念:HTML、URL、浏览器 • Web文档的访问原理:
– 当客户在Web浏览器中输入网络地址或者URL,或者客 户点击一个超链接时,Web浏览器通过连接协议HTTP 连接目的网站的Web服务器,并提交URL,发出一个网 页请求,当服务器收到该网页请求后,它取到该网页, 并将它发给Web浏览器,Web浏览器接收网页,并根据 HTML标记将该网页显示在浏览器中
– ASP程序中表单状态的维护十分困难,必须完全由 开发人员手工进行。
• 的特点:
– 可以采用与.NET 兼容的大多数语言编写ASP .NET 应用程序,包括Visual Basic、C#和J#等; – ASP .NET页面(Web Forms)要经过编译,与使用脚 本编写语言相比,具有更好的性能;
XML数据库
• XML应用场景:
– 数据交换:用XML在应用程序和公司之间进行数据 交换;
– 存储数据; – 结构化文档; – 标记诸如小说、非文学类书籍和戏剧之类的文档结 构; – 创建新的语言:XML为用户提供了定义本行业本领 域的标记语言的最好工具; – Web服务:Web服务器用XML在系统之间交换数据;
• ASP的局限性:
ASP .NET
– ASP页面中HTML标记和服务器端脚本并存,封装 性差,难于管理和继承,其编程技术没有实现完 全的面向对象;
– 没有好的调试功能;
– 能够使用的语言有限,主要是VBScript和JavaScript, 而这两种语言均不提供类型安全;
– 每次访问ASP页面时,其中的脚本均需重新解释后 执行,效率不高;
• CGI:
– 使用脚本文件来执行特定的函数
– 使用Web服务器传递的参数,脚本文件的内容 可以用来连接数据库并从数据库检索数据 – 脚本文件为每个用户请求分别执行,大大降低
• API:
– API的代码是常驻内存的,不用为每个请求运行
外部程序,而是服务于所有的请求
– API可以使用共享的数据库连接而不是像CGI脚本
服务器端脚本与客户端脚本
• 使用VBScript和JavaScript脚本语言,既可以 编写服务器端脚本,也可以编写客户端脚 本
• 服务器端脚本和客户端脚本的主要区别是:
– 服务器端脚本在Web服务器上执行,Web服务 器根据脚本的执行结果生成相应的HTML页面并 发送到客户端浏览器中进行显示。只有服务器 端脚本才能真正实现“动态网页”。 – 客户端脚本由浏览器解释执行,它随着HTML页
脚本语言
• HTML是一种简单的语言,它很难满足用户和Web页面之间的交 互需要,在Web开发中使用了大量的脚本代码 • 常见的脚本语言有:VBScript和JavaScript • VBScript是Microsoft公司推出的一种脚本语言,是Microsoft Visual Basic语言的Script版本,也是ASP(Application Service Provider)的缺省语言 • VBScript的特点:
那样每次创建一个新的数据库连接 – API与Web服务器共享一个内存空间,一个API错 误可能导致服务器故障 – API特定于具体的Web服务器和操作系统
Web数据库访问技术
• ASP(Active Server Pages)技术
– ASP是基于微软Windows平台的动态页面开发技 术,它的运行环境是Microsoft的IIS 或者PWS
• PHP(PHP Hypertext Preprocessor)是一种HTML内嵌式语言, 可以在多种平台上运行。 • PHP的工作原理和ASP有些类似,它们最大的区别在于:
写的,而ASP脚本程序 一般是用VBScript或者JavaScript编写的; – 另外,PHP是开源的,完全免费的,使用PHP不需 要任何费用,官方组织PHP Group提供了完整的程 序源代码,允许使用者修改、编译、扩充来使用; – PHP是真正跨平台的,可以在Unix、Linux、 Windows等各种平台上运行,也可以在Apache、IIS 等各种Web服务器上运行,具备良好的可移植性。
第12章 Web数据库
目 录
12.1
什么是Web数据库 Web基础 脚本语言
12.2
12.3 12.4 12.5 12.6
Web数据库访问模式
Web服务器接口 Web数据库访问技术 XML数据库
12.7
• Web数据库技术是指从Web访问数据库的技术,它是一种新 的数据访问模式,而不是一种新的数据库 • Web数据库的特点:
• ASP工作原理:
① 用户浏览器向Web服务器(IIS/PWS)发出ASP网 页请求,Web服务器会判断ASP文件中是否含有 脚本程序,如有,则加以解释执行,否则直接 传给浏览器。 ② 若执行中的脚本程序使用了ADO对象,则Web 服务器会根据ADO对象所设置的参数来启动对 应的ODBC驱动程序,访问相应的数据库,进而
– Web Forms允许构建强大的基于窗体的Web页面。
• ASP .NET提供了新的应用模型,包括:
– XML Web Services:它允许应用程序通过Internet 共享数据,而不用考虑所在平台和使用的编程语 言; – 支持移动Web设备:ASP .NET的移动控件支持的 移动Web设备超过80种,只需要使用ASP .NET编