问答题
【说明】
某公司计划建立一个商务网站,该网站主要面对消费者,功能是完成网上购物、信息查询、广告宣传、用户需求调查等。该公司服务器采用Windows Server 2003+IIS5.0,使用ASP和XML相结合的网页编程语言,数据库采用SQL Server,数据库名为TEST,数据库管理员的用户名为sa,密码为test_test,
问答题
【问题1】
该商务网站有一个购物车模块,购物车模块中自定义了两个session属性如下。
①CID用来记录用户选择的商品;
②CNUM用来记录相应商品的数量。
请根据表7-4所列的购物情况,将(1)~(3)空缺处对session对象处理方式的内容填写完整。
表7-4 Session对象处理方式表 购物情况 | Session对象处理方式 |
| 用户订购商品且购物车为空时 | (1) |
| 购物车非空,购物车中没有当前订购的商品 | (2) |
| 购物车非空,购物车中已有当前订购的商品 | (3) |
【正确答案】(1) 直接将CID与CNUM加入Session
(2) 直接将CID与CNUM加入Session
(3) CID保持不变,修改CNUM值
【答案解析】这是一道要求读者掌握ASP中session对象使用常识的综合分析题。本题的解答思路如下。
由试题关键信息“该网站主要面对消费者,功能是完成网上购物、信息查询、广告宣传、用户需求调查等”可知,该商务网站采用BtoC的电子商务模式。企业对消费者(BtoC,Business to Consumer)的电子商务模式是指商业机构利用因特网或各种商务网络向供应商(企业或公司)订货或付款等。
ASP中session对象可以存储特定用户会话所需的信息。当用户在应用程序的Web页之间跳转时,存储在session对象中的变量将不会丢失,而是在整个用户会话中一直存活下去。session对象所具有的这种特性,常被应用于购物车程序中。
当用户订购商品且购物车为空时,此时session对象中没有该商品的任何属性,因此需要创建对应的 CID(记录用户所选择的商品),并根据用户订购数量创建对应的CNUM。
当用户订购商品,但购物车中没有当前订购的商品时,此时session对象中也没有该商品的任何属性,因此也需要创建对应的CID,并根据用户订购数量创建对应的CNUM。
当用户订购商品,且购物车上已有当前订购的商品时,此时session对象中已有该商品的CID和CNUM属性值,因此需要保留当前的CID,但是需要根据用户订购数量修改对应的CNUM值。
问答题
【问题2】
以下是该商务网站中数据库连接程序conn.inc的代码,请将(4)~(8)空缺处的程序代码填写完整。
<%
set conn=server. (4) ("adodb.connection")
conn.provider="sqloledb"
provstr="server=127.0.0.1; databas= (5) ;uid= (6) ;pwd= (7) "
conn.open (8)
%>
【正确答案】(4) CreateObject (5) TEST
(6) sa (7) test_test
(8) provstr
【答案解析】这是一道要求读者掌握使用ASP语句进行SQL数据库连接的分析理解题。本题的解答思路如下。
ASP是通过一组被称为ADO(ActiveX Data Objects)的对象模块来对后台数据库进行操作。无论后台数据库采用何种形式,只要该数据库具有对应的ODBC或OLEDB驱动程序,ADO对象就能对该数据库进行操作。
ASP在存取数据库之前,先要利用Server对象的CreateObject方法来创建ADO对象模块的Connection对象以建立数据库的连接。因此(4)空缺处所填写的内容是CreateObject。
由试题中关键信息“数据库采用SQLServer,数据库名为TEST,数据库管理员的用户名为sa,密码为test_test可知,程序中设置的数据库连接文本provstr应该为“server=127.0.0.1;database=TEST;uid=sa; pwd=test_test”.最后,可利用Connection对象实例conn的open方法打开连接文本provstr。
问答题
【问题3】
使用XML语言实现了一个简易的图书信息显示网页,其文件名为“book.xml”,用IE浏览器打开该网页后的显示效果如图7-16所示。book.xsl文件是book.xml文件的一个样式单文件。请将这两个文件中的(9)~(12)空缺处的程序代码填写完整。
【正确答案】(9) book.xsl (10) </xsl:for-each>
(11) test/book (12) </xsl:stylesheet>
【答案解析】这是一道要求读者掌握XML标记语言进行网页设计的编程题。本题所涉及的知识点如下。
XML文档本身不含有样式信息,通常是引用外部的样式单文件来显示,从而将数据与显示格式分开。具体实现方法是在XML文档开头给出关于样式单文件的声明语句。在本试题中,book.xsl文件引用 book.xml文件的样式单语法格式如下。
<?xml-stylesheet type="text/xsl" href="book.xsl"?>
如果在声明部分引用了多个XSL样式单,则只有第一个样式单会生效,其余的都会被忽略掉。
XSL文档的标准格式如下。
<xsl:stylesheet xmlns: xsl="http://www.w3.org/TR/WD-xsl">
template rule i
output template
</xsl:stylesheet>
由于XSL文档本身是格式良好的XML文档,因此在书写时要注意标签的匹配问题。<xsl:stylesheet>既是XSL的声明语句,也是根元素,必须位于文件的首部。通常要利用xmlns属性指明XSL的名称空间。由XSL文档的标准格式可知,(12)空缺处所填写的内容是:</xsl:stylesheet>。
样式单中所有的模板规则都由标签<xsl:temlplate>标明。模板规则可以说明处理的对象(元素/属性)、处理的方式或是转换的结果。
XSL的逻辑语法结构包括循环和条件判断。这两种结构使用尸能够灵活地书写转换规则。循环判断是通过<xsl:for-each>元素实现的,它的可选属性包括select和order-by。循环结构能够遍历整个结果集合,而不必针对每一条结果都单独书写转换规则。它的标准语法格式如下。
<xsl:for-each select="pattern" order-by="patternlist">
…
</xsl:for-each>
条件判断结构分为if语句和Case语句两种形式。if语句是简单地对条件进行判断,结果为真就执行条件内部的规则,因此可以把if条件与简单的布尔表达式联合使用。Case语句是对多种情况的分支判断。该语句包括<xsl:choose>、<xsl:when>和<xsl:otherwise>三个元素。
通常标签不允许交叉嵌套使用,结合(10)空缺处前两行的“<xsl:for-each select="test/book[position()= 1]/*">”及后两行的“<xsl:for-each …>”语句可知,该空缺处所填写的内容是:</xsl:for-each>。
由book.xml文件中的“<test><book>…</test></book>”,及“<xsl:for-each select="test/book[position()= 11/*">”语句可知,(11)空缺处所填写的内容是:test/book。
问答题
【问题4】
XML的二个重要特点是数据与显示格式分开。XML文档的显示格式主要使用样式单来完成,W3C给出了哪两种样式单的推荐标准?
【正确答案】重叠样式单(CSS),可扩展样式单语言(XSL)
【答案解析】这是一道要求读者掌握XML文档显示格式定义的基本常识题。本题所涉及的知识点如下。
可扩展标记语言(XML,Extensible Markup Language)是用于标记电子文件的结构化语言。与HTML相比,XML是一种真正的数据描述语言,它没有固定的标记符号,允许用户自己定义一套适合于应用的文档元素类型,因而具有很大的灵活性。XML包含了大量的自解释型的标识文本,每个标识文本又由若干规则组成,这些规则可用于标识,使XML能够让不同的应用系统理解相同的含义,正是由于这些标识的存在,XML能够有效地表达网络上的各种知识,也为网上信息交换提供了载体。
XML语言与HTML语言相比主要具有以下特点:①HTML定义的是一套固定的标记,每一种标记都有其特定的含义;XML是元标记语言,用户可以自定义所需的标记。②XML标记描述的是文档的结构和意义,而不是显示页面元素的格式。简单地说就是文档本身只说明文档包括什么标记,而不是说明文档看起来是什么样的。⑧XML文档的显示使用特有的技术来支持。例如,通过使用样式单为文档增加格式化信息。
XML的一个重要特点是数据与显示格式分开。XML文档的显示格式主要使用样式单来完成,W3C给出了重叠样式单(CSS)、可扩展样式单语言(XSL)等两种推荐标准。
重叠样式单(CSS)是一种静态的样式描述格式,遵从XML韵语法规范。CSS的引入是用来扩展HTML的,即它只是一项辅助工具,是对HTML功能的一种补充。在CSS标准里,不仅重新定义了HTML原有的样式,如文字的大小、颜色等;更加入了重叠文字、区块变化及任意位置放置等多项新属性。通过CSS可以使用更丰富、更灵活的样式,更简单地设计出更美观的网页。同时,也让网页的设计与维护更有效率。
数据格式转换的重要思想是要把XML文档视为一种树结构,转换的过程就是从源树生成结果树的过程。XSL样式单定义了源树和结果树中对应部分的转换规则,每条规则中包含了一个模板,并对应着一种模式。模板定义了转换的结果,而模式则规定了需要进行转换的元素或属性对象。