第一章 互联网软件开发过程概述
1、Web开发过程的五个阶段:
(1)规划:目的是生成项目计划。项目计划包括:确定日程表、确定项目的高级时间期限和每个阶段的最后期限、明确项目目标、Web应用的目标、开发方法、项目任务分配、项目设想和风险。
(2)设计:目的对于网站的外观、网站结构、站点定位、Web应用要完成的任务以及必要的数据资料,必须经过用户的认可。同时确定站点设计准则和技术特征。
(3)建设和测试:目的是开发符合项目设计规划的高质量的Web应用。主要任务:确定开发规则、创建页面、测试准备、制作网页、技术设计、测试、纠正错误
(4)投入使用:目标是把全面测试过的Web应用发布到运营服务器上。文件安装完毕,小组投入测试工作,保障正常运行。
(5)运行及后续管理:保障站点内容及时更新并保障其正常平稳运行。
2、界标:在阶段转换时出现的判断点也称其为“界标”,因为她们标志一个阶段的完成。在这些判断点上,项目小组和客户一起讨论项目设计方案、设计状况和风险,指出小组没有解决的问题,并修改项目规划以确保原来的目标的实现。客户的责任是负责判断项目小组是否可以开始下一步工作。比如进入下一循环或者下一阶段,这通常被称为客户在这一“界标”上“终止”工作。
3、调度:调度是在开发过程中一种对人员、资源、应用风格以及开发技术手段进行平衡的活动。
电子商务模型:通常访问者从产品目录中选择了一种产品后,就把该产品放入虚拟的购物车中,这样就可以继续选购其他产品。购物结束时,迅速检查一下购物车中的产品,然后提供送货地址和信用卡信息。
4、项目规划:整个Web开发过程中最重要的阶段。这个阶段中需要了解项目要做什么?如何做?什么时间做?等等。还必须确定项目的目标、Web应用的目的、目标用户、项目范围、用户重点和实现项目的最佳方案,最后创建出项目计划任。
5、项目规划包括:至少包括以下四部分:
(1)目标——总结在“确定项目目标”和“确定Web应用目标”中明确下来的目标,另外,还要明确商业术语中的关键词语。
(2)风险和假设——项目管理人员列出他在编写项目计划中所做的全部假设:管理人员都要估计出每一种风险出现的可能性,并提出消除这种风险的方法。
(3)时间表——明确每一阶段的详细任务及完成期限:根据项目规模明确每项任务每个步骤所需的时间。
(4)预算——取决于制定时间表时所做的估计及分配给项目的资源量。
6、Web应用的商业目的是:建立市场部分的合作共识、利用新的渠道促销产品或者服务、在Internet上提供产品或者服务、在Internet上出售产品获取利润。
7、站点模型包括:信息出版模型、公司基础结构模型、售后支持模型、电子商务模型、产品和服务模型、产品和服务模型
8、电子商务模型:通常访问者从产品目录中选择了一种产品后,就把该产品放入虚拟的购物车中,这样就可以继续选购其他产品。购物结束时,迅速检查一下购物车中的产品,然后提供送货地址和信用卡信息。
9、客户重点包括:时间、开销、风格、风险、视觉效果。比较权衡它们之间的关系。
10、项目管理员必须具备的技能:规划:估计和度量:追踪:交流。
11、项目小组中客户的角色包括:决策人、商务发起人、问题专家、支持人员。
12、风格漂移就是一种缓慢的不易被发现的项目风格,特点逐渐变化的过程。
13、简述在确定项目规模时估价项目的步骤:确定Web应用的功能和特点、选择站点模型、选择浏览器、确定具体内容、确定用户重点、对开发方法一致.
第二章 IIS介绍
1、Internet是指全球性的住处系统,该系统具有三个主要特征:
(1)Internet中的计算机通过全球性的性地址逻辑地链接在一起;
(2)Internet中的计算机之间的通信使用的是TCP/IP协议;
(3)Internet可以为公共用户或个人用户提供高水平的信息服务。
它有三个特点:全球性、开放性、平等性。
2、Web(缩写为WWW)——“万维网”。Web是一种体系结构,通过它可以访问遍布于Internet主机上的链接文档。(它可以用简单的方式连接全球范围的超媒体信息。)
3、Web服务器向浏览器提供服务的过程:
(1)打个浏览器程序,指定URL,浏览器便向URL所指向的Web服务器发出请求。
(2)Web服务器接到浏览器的请求后,把URL转换成页面所在服务器上的文件路径名。
(3)Web服务器将URL指向的HTML文档传送给浏览器。(包括javascript等)
(4)如果HTML文档中嵌有CGI程序,Web服务器就运行CGI程序,并将结果传送至浏览器。
4、现阶段Web技术包括:服务器技术、HTML技术、CGI技术、Java技术、JavaScript技术、ActiveX技术和VBScript技术、VRML技术。
5、CGI技术:CGI(通用网关接口)是Web动态页面的基础,也是Web与其他应用交流的基础。虽然CGI的一些功能已经可以由Java、javascript等代替,但CGI仍然是不可缺少的。
6、IP地址:接入Internet的计算机,每台计算机或路由器都有一个由授权机构分配的号码,称为IP地址,IP地址采用分层结构,它由网络号与主机号两部分组成。其中,网络号用来标识一个逻辑网络,主机号用来标识网络中的一台主机。一台Internet主机至少有一个IP地址,而且这个IP地址是全网惟一的。
7、IP地址的长度为32位的二进制数,以X.X.X.X格式表示:每个X为八位二进制数,其十进制为0~~255。IP地址可以分为5类,A、B、C、D、E类,前三种为常用IP地址,
A类IP的网络号的空间长度为7位,主机号空间长度为24位,表示范围为(1.0.0.0---126.255.255.255),一般用于有大量主机的大型网络。
B类IP地址,网络号空间长度为14位,主机号空间长度为16位,表示范围为(128.0.0.0—191.255.255.255),适用于中型网络。
C类IP地址,网络空间号长度位21位,主机号空间长度为8位,表示范围为(192.0.0.0—223.255.255.255),适用于小型网络。
8、域的划分采用两种划分模式:组织模式和地理模式。
9、二级域名的分配:ac科研机构,com商业组织、edu教育机构、gov政府部门、int国际组织、net风格支持中心org各种非盈利性组织。
10、域名系统的实现原理:主机域名不能直接用于TCP/IP协议的路由选择中。当用户使用主机域名进行通信时,必须首先将其映射成IP地址。这种将主机域名映射为IP地址的过程称为域名解析。域名解析包括两种方式:正向域名解释(从域名到IP)和反向域名解释(从IP到域名)。Internet的域名系统DNS能够透明地完成工作。如果要寻找一个主机名所对应的IP地址,则需要借助域名服务器来完成。Intrenet中存在大量的域名服务器,在每台域名服务器中保存着它对它所管辖区域中主机域名与IP地址对照表。当Internet应用程序收到一个主机域名时,它向本地域名服务器查询该主机域名所对应的的IP地址。如果在本地域名服务器中找不到该主机域名对应的IP地址,则本地域名服务器向其他域名服务器发出请求,要求其他域名服务器协助查找,并将找到IP地址返回给发出请求的应用程序。
11、使用密钥管理器,可以保护数据的安全传输,方便而快捷地创建密钥对文件和请求文件。
12、如果要实现Web的服务器上的SSL请求,可按照下列步骤进行:
(1)生成密钥对文件和请求文件
(2)从身份验证权限中请求一个证书
(3)在服务器上安装证书
(4)激活WWW服务器文件夹上的SSL安全性第三章 HTML语言介绍
1、HMTL:HTML是Web的基础,是一种超文本标识语言,它是构成Web页面的主要工具。
2、HEAD元素内的元素的功能:给文档一个标题、安排多个文档之间的关系、告诉浏览器创建一个搜索格式、提供一个向特定浏览器和其他观察器传递特殊消息的方法。
3、列举至少5项body元素的属性及其功能。
BODY属性及功能:
ALINK定义活动链接颜色
VLINK定义已访问过的链接的颜色
LINK 定义未访问链接的颜色
BACKGROUND 指向用做文档背景色的图像的URL
BGCOLOR定义文档背景颜色
TEXT 定义文档颜色
BGPROPERTIES? 如果它被设为FIXED,背景不能滚动
LEFTMARGIN 以像素为单位设置文档左侧边界宽度
TOPMARGIN以像素为单位设置文档顶边界宽度
4、注意:alink\link\vlink的用法;<address></address>表示斜体显示。
5、HTML使用十六进制编码系统来定义颜色。该系统基于三种颜色单元RGB,每一种颜色单元被赋予介于00-FF之间的十六进制数值。如:#FFCC00。文档体颜色属性有:BGCOLOR、TEXT、LINK、VLINK、ALINK。
6、链接:链接是惟一的从一个Web页到另一个相关的Web页的理性的途径,它由两部分组成:锚链和URL引用。当单击一个链接时,浏览器装载由URL引用给出的文件或文档。
7、URL引用可以分为相对引用和绝对引用。
相对引用:对同一个计算机上文件的URL引用。这意味着URL是相对于浏览器最初装载Web页的计算机和目录的。
绝对引用:指明Web页的精确的计算机、目录和文件的URL引用。
8、创建超级链接:
网站链接:<a href="http://www.sohu.com">搜狐</a>
E-mail链接:<a href="mailto:jxxinh@163.com">联系我!</a>
UseNet新闻链接:<a href="news:news.sohu.com">新闻</a>
FTP的链接<a href="ftp://143.43.23.19">这里</a>
对大数据库的访问<a href="wais://wais.mysite.com">这里</a>
访问远程计算机<a href="telnet://43.54.165.22">这里</a>
9、<table></table>表示建立表格
<caption>表格标题说明文字,该元素的ALIGN属性值:TOP和BOTTOM
<tr></tr>表示建立一行,该元素的ALIGN属性有三个属性值:LEFT、RIGHT、CENTER;VALIGN属性也有四个属性值:TOP、BOTTOM、MIDDEL、BASELINE(缺少为MIDDLE)。
<th></th>表头
<td></td>单元格具体内容
10、表单:<form></form>还要定义它使用的脚本以及如何发送数据method=post(URL),get(信息附加到URL尾部)。如:<form method="post" action="/new/new_script">……</form>。它有三种类型的标记可用于创建字段。
<textarea>:提供一个多行文本输入的字段。用rows(行)和cols(宽)属性要以定义其大 小。
<select>:弹出一个滚动列表。option定义出现的选项。属性multiple允许多项选择,selected 缺省选项,value返回脚本的值。
<input>:属性type设置要显示的输入的字段类型(text)文本输入框、(password)密码框,(checkbox)复选框、(radio)单选钮、(reset)和(submit)显示具有预置功能的按钮——发送到服务器。
第四章 ASP.NET介绍
ASP.NET中的文件类型:
Global.asax:ASP.NET系统环境设置文件
.aspx:内含ASP程序代码文件,向服务器提出浏览请求
.asmx:制作Web Service的原始文件
.aspc,可重复使用多个.aspx的文件,此文件内可含有控件
.ascx,内含User Control的文件,可内含在多人.aspx文件中在ASP.NET中,用于模板定义的标示符是 <template> …… </template>
3、ASP.NET的优越性:简化开发操作、语言独立性、分离程序代码和网页内容(使用事件驱动和事件绑定的开发方式)、提高执行效率、简化部署与组态的操作、支持多种客户端类型、增进适用性、增进延展性、更佳的安全机制、Session可用跨进程跨机器。
4、验证控件包括:RequiredFieldValidator(必填控件)、CompareValidator(比较验证)、RangeValidator(限定边界控件)、RegularExpressionValidator、CustomValidator、ValidationSummary。
5、页面处理的内部过程包括:Page_load、事件处理、Page_Unload 。
6、事件:在面向对象的编程中,对页面对象进行的一系列操作。如鼠标事件(onMouseOver、onMouseOut等)、页面事件(OnLoad等)、按钮事件(Onclick等)等。
7、有两种情况,ASPX会被重新编译:ASPX页面第一次被浏览器请求、ASPX被改写。
8、Web页面处理过程:页面的一次往返处理、页面重建、页面处理内部过程。
9、ASP.NET服务器端控件:文本输入控件、按钮控件、复选控件、单选按钮、列表控件、选择控件等。可以使用户对页面内容作出判断的控件是:按钮控件。
10、ManagerProvider,是否个多层结构的无连接的一致的编程模型。它提供了DataSet和数据中心之间的联系。
11、DataSet,是ADO.NET的中心概念,可以把它想象成内在中的数据库。使得程序员在编程序时可以屏蔽库之间的差异,从页获得一至的编程模型。
12、ADO.NET访问数据库的步骤:
创建一个到数据库的链路,即ADO.Connection;
查询一个数据集合,即执行SQL,产生一个Recordset;
对数据集合进行需要的操作;
关闭数据链路。
13、ASP.NET提供了三种缓存替换的策略:
(1)“腐烂搜索”。类似于“最近最少使用”替换原则,当内在变得比较紧张时,缓存机制会找出最不常用和最不重要的对象,把它从内在中移出,以减轻系统压力;
(2)“到期控制”。编程者可以指定缓存对象的生存周期;
(3)“文件和键值依赖”。从外部文件或者是其他缓存键值是否改变,来决定本身键值是否有效。
第五章 Web数据库技术基础
1、Web数据库发展中存在的问题:
(1)网络通信速率低,骨干通信网通信能力小。
(2)网上垃圾泛滥,使检索有用信息成为困难。
(3)网络安全是影响Web数据库在金融、行政、保险等行业迅速开展的主要原因。
(4)网上中文信息较为贫乏,因此加强Web与Server的中文信息的开发势在必行。
2、Web数据库的工作原理:用户浏览器通过HTML表单搜集参数,这些参数通过HTTP传递给Web服务器,在服务器端通过CGI脚本分析参数,同时启动通路程序,把分析后的参数传递给通路程序,通路程序的功能就是将分析后的参数转化为SQL命令,交SQL服务器执行。
3、Web数据库的编程要点:
(1)编写html表单,搜集用户信息,通过Submit向CGI提交。
(2)根据传递参数的方式(post/get),CGI脚本获取用户数据。
(3)解码。数据串都采用固定的URL格式编码,解码是标准的。
(4)CGI脚本根据用户要求,执行相应数据库客户程序通过约定通路访问数据库。
(5)将数据库客户获得执行结果返回给标准输出Stdout.
4、Web数据库:是由Web服务器、数据库接口(CGI)和数据库三大部分组成。
5、简述Web服务器向浏览器提供服务的过程。
(1)用户打开计算机,启动浏览器程序,并在浏览器中指定一个URL,浏览器便向该URL所指向的Web服务器发出请求。
(2)Web服务器接到浏览器的请求后,把URL转换成页面所在服务器的文件路径名。
(3)如果URL指向的是普通的HTML文档,Web服务器直接将它送给浏览器。
(4)如果HTML文档中嵌有CGI程序,Web服务器就运行CGI程序,并将结果传送至浏览器。Web服务器运行CGI程序时还可能需要调用数据库服务器和其它服务器
6、客户/服务器结构特点:
(1)在处理任务时将客户和服务器分开;
(2)减少主机网络负荷;
(3)数据库与客户应用程序无关;
(4)数据库平台和操作系统无关;
(5)维护数据库的完整性。
7、Web服务器:即为WWW浏览器提供服务的机器。Web服务器是在主控制平台上运行的软件包,也是在Internet中运行的最重要的软件包。Web服务器提供给用户所需要的文件。
8、HTTP是基于客户/服务器模型的信息分布方式,是“请求/响应模型”,即信息文件存放在服务器上,用户通过程序向服务器发出请求,并访问服务器上的数据。
9、MIME(通用Internet邮件扩充服务)是1981年规定的。对原来标准邮件协议的补充,能够传送多媒体信息,扩充了对字符集的支持:扩充二进制及其他应用文件类型的支持。
10、Web服务器提供了二种安全保护措施:授权和链接加密。
(1)授权要求用户通过口令访问Web页,是用相同或不同的“用户名/密码”登录进入特定系统。
(2)链接加密是指对浏览器和Web服务器之间传输的数据进行加密。
11、Web服务器的性能标准:
(1)速度:同时会有多少用户在接收文件,当它们浏览这些文件时,服务器需要作多少处理工作?
(2)建立和维护:使Web服务器时刻保持运转无疑是Internet成功的关键。
(3)对用户保持跟踪:了解用户要去哪里,谁在登录,停留多久以及验证身体。
(4)安全性:Internet在服务器和用户间传输需要加密吗?或者禁止个人或组织加入?
(5)其他特性:如费用,可以需要和数据库之间对话,也可能需要引入更强劲的检索器,Internet功能取决于服务器软件的可靠性。
12、指提供数据资源的实体,它可能是用在台式数据库应用程序中的单个文件或者它是一个充分发展的相关数据库处理系统。
13、ODBC是Microsoft公司开发的一套开放数据库系统的应用程序接口规范,为解决数据库间互连。
14、ODBC规范的作用和意义:ODBC规范为应用程序提供了一整套调用接口规范和基于动态链接库的运行支持环境。应用程序调用的是标准的ODBC函数和SQL语言,克服了传统数据库应用程序的缺陷。
15、ODBC的体系结构由四个层次组成:应用程序、驱动程序管理器、数据库驱动程序、数据源。P100(重要)
数据源:是指提供数据资源的实体,它可能是用在台式数据库应用程序中的单个文件或者它是一个充分发展的相关数据库处理系统。
16、ODBC的特性:ODBC接口的最显著的优点在于互操作性,即由ODBC所建立的应用程序不必针对特定的数据源,理想情况下各种驱动程序和数据源应该支持完全相同的ODBC函数调用和SQL语句。而实际应用中,不同的数据库系统对SQL语法的支持程度各不相同。但通过ODBC接口的一致性级别,将ODBCAPI函数、ODBCSQL语法划分为不同的级别(驱动程序声明支持某个一致性级别时,它都必须支持该级别中的所有功能,为了保证ODBC应用程序的互操作性能力,开发人员应尽量避免使用不同厂家,为驱动程序开发的特有功能),应用程序在遵循同一一致性级别的不同数据库驱动程序的基础上,能够访问不同的数据库系统,实现功能上的独立。
17、ADO的主要特性:
(1)独立创建的对象:大多数ADO对象是可以独立创建的,不用冗长的代码来创建对象,程序的结构简明。
(2)对批量更新的支持:可以将一批数据下载到本地的缓存中,筛选、更改,然后统一地进行更新,这样就可以大大减少操作次数,缩短等待时间。
(3)支持存储过程:包括带参数和不带参数的存储过程,并且可接收返回值,在进行海量数据处理时,这一优点更为明显。
(4)支持不同的光标类型:包括支持后台光标的潜力。
(5)支持返回数据量限制:显示数据时,如果数据量太大,会分段下载,提高效率。
(6)支持MultipleRecordset:从存储存储过程或批处理过程返回值,支持多个结果。
18、ADO对象模型中有7个对象:
(1)Connection对象:就是处理连接的对象。一个Connection对象代表了一个打开的与数据源的连接,用它提供的方法可以处理连接中的主要问题,Connection对象中的Errors集合,可以对各种数据库操作造成的错误进行处理。
(2)Recordset对象:一个Recordset对象代表了对数据库操作返回的整个结果集只代表当前结果集中的记录。Recordset对象中的Fields集合,代表了具有相同数据类型的一列数据。
(3)Command对象:它可以像用Connection和Recordset对象那样执行查询,不同在于它可以在数据库源上准备、编译查询并且反复使用一组不同值来发出查询。
(4)Field对象:一个Field对象就代表了具有相同数据类型的一列数据。
(5)Parameter对象:它代表了一个因为参数化查询或存储过程而与Command对象相关的参数或参量,很多Provider支持带参数的命令。
(6)Property对象:一个Property对象代表一个被Property定义的ADO对象的属性。ADO对象有两种类型的属性:内置型和动态型。
(7)Error对象:一个Error对象包含了一次数据操作所产生的错误的详细信息。
19、客户机/服务器的通信过程:客户机向服务器发送请求,要求执行某项任务,而服务器则执行某项任务。客户机和服务器概念上更多的是指软件,是指两台机器上相应的应用程序。
20、ASP的基本语法:<%=%>用来输出表达式、变量以及对象的方法的值。
第六章 动态网页技术——DHTML介绍
1、DHTML:是一种即使在见面下载到浏览器以后仍然能够随时变换的HTML。它使得站点的展示比以前更加丰富多彩,更多的定制方法;更多的分析大量数据的手段;与访问者能进行更多样化的交互。
2、构成DHTML的各种技术:
(1)客户端的脚本语言(JavaScript、VBScript)
(2)文档对象模型(DOM):在某种意义上,DOM是动态HTML的真正核心内容。它使得HTML具备了变动性。DOM体现的是网页元素的等级关系,这些元素在指定的时间在浏览器上呈现。DOM包括时空背景信息、浏览器自身属性、窗口自身属性等。
(3)层叠样式表(CSS):由于CSS属于DOM的一部分,它的属性也可以通过动态HTML编写语言得到体现,因此能够实现页面外在视觉效果方面的几乎一切变化。通过改变页面元素的CSS属性(如颜色、位置、大小),可以达到计算机的带宽和处理器运行速度允许范围内的一切效果。
3、对象的成员:每个对象都有其成员。成员是对象的属性、方法和事件。属性就是品质;方法是对象可以做的事情;事件是对象可能发生的事情;事件是对象可能发生的事情,通常是用户所做事情的结果。
4、窗口对象:一种顶级对象。可以用这个对象去发现窗口的URL或构造按钮,在浏览器中模拟Back和Forward按钮,这几个按钮通过用户的网络冲浪历史记录转到不同的URL。
5、DHTML的集合:有些对象实际上是一些对象的集合(就像阵列组)。通常,以S结束的对象就是一个集合,当然,AII对象同样也是一个集合(文档中的所有东西)。在引用对象或对象串(几个对象用句点分开)时,可能会出现不一致性。
6、修改HTML内容:
(1)要修改容器元素,可以利用innerHTML或innerTEXT属性。要修改元素本身及其内容,应当用outerHTML属性。
(2)以text结束的属性有innerText和outerText两种,分别提供了对象的文本内容(不含标记)。以HTML结束的哪两个属性,innerText和outerHTML,也提供了相同的内容,但同时还包括了所有的HTML标记。
(3)如果想保持现有的元素和文本,并添加新的元素和文本到现有代码中,可以用insertAdjacent或insertAdjacentText。
理解TextRange中的方法:PasteHTML、FindText、Expand、execCommand、isEqual。
第七章 PHP技术简介
1、PHP:是一种服务器端HMTL嵌入式脚本描述语言,其特色在于在互联网网页上对数据库操作的方便性。
2、PHP具有以下特点:
(1)支持多种系统平台。
(2)具有自由软件的特性。
(3)版本更新速度快。
(4)容易与现有的网页整合。
(5)具有丰富的功能。从结构化的特性、对象式的设计、数据库处理、网络接口使用、到安全编码机制等,几乎完整地包括所有网站所需要的功能。
(6)系统移植速度快。少许修改,就可以将整个网站从一个平台上移到另一平台。
3、PHP和CGI的比较:(重点从适用性、稳定性、安全性方面)
(1)写CGI的方式有很多种,PHP只是其中一种。
(2)PHP可用在数种Web服务器上,传统CGI也不限制是哪种操作系统或Web服务器平台,NSAPI却一定要在Netscape的服务器上才可执行。
(3)在稳定性上,由于NSAPI或ISAPI是动态链接的方式,因此在执行时若出现问题,会使得Web服务器一起瘫痪。ASP在实际应用上,由于系统的原因,不是很稳定,有时需要重起操作系统。PHP在许多的平台使用上,不但长期使用都没有问题,而且程序的稳定性。
(4)在开发及维护时间上,PHP及ASP都有不错的表现。而NSAPI及ISAPI则需要长时间的开发过程,在稳定运行后,这二种接口反倒是效率最佳的方法。
(5)要比较和网页结合的能力,PHP及ASP是并驾齐驱的,其他方式就不能内嵌HTML语法了,而这也是影响开发时间的因素之一。
(6)系统安全性方面,ASP最差,在没有经过微软件的IIS Service Pack处理,使用,:$DATA就可以看到ASP的源代码。
(7)在新增功能及升级方面,传统的CGI由于不受任何语言限制,没有这方面的问题。PHP是最有活力的,数天至数周就有一个新版本出现,每次的新版,就代表更多的功能及修正更多的错误。综上所述,所以PHP处于开发容易、性能变不错的平衡点上。正因为这种原因,PHP成为了当前最有前途的网络程序开发语言之一。
4、在声明一个变量的时候,变量名前使用“$”,在 <?php ……?>之间嵌入PHP代码。
5、在程序中使用头文件可以大大地提高程序开发速度,并可以减少程序开发的难度。
头文件是一个外部文件,它的内容可以被多个程序文件所引用,并包含在引用它的文件之中。
6、引用头文件涉及两个函数:include()和require()。它们的区别:
(1)require():不管在程序的哪一个部分使用这个函数,只要程序一引用,头文件的内容就作为主程序的一部分来运行。如果估一个条件控制语句使用这个函数,哪怕这个条件不为真,头文件也会包含进来。如果发生包含错误,会给出错误信息并终止。
(2)Include():在执行语句中,只有执行到这个函数语句时,这个函数所引用的头文件才会包含到主程序中。这就意味着,在条件判定部分使用include()函数时,可以完全按照用户的愿望工作。如果发生了包含错误,程序还会自动执行下去。
7、$GLOBALS数组:$GLOBALS数组是一个联合数组使用“global”为变量的名字,全局变量作为改变量数组其中某个元素的值。$GLOBALS数组是PHP程序中比较特殊的变量,不必宣告,系统会自动匹配相关的变量在里面。在函数中,也不管$GLOBALS数组是否已经做全局声明,就可以直接使用了。
8、PHP的语言基础:《互联网软件应用与开发》课本P143—173
9、在MYSQL中,在数据库安装完成之后,有一个默认的账号root,该账号没有密码。其特点:是真正的多线程、多用户的数据库系统:真正支持多平台:支持SQL92标准:在客户端程序上,MYSQL提供了多种不同的编程语言:具有丰富的数据类型,并且完全支持ODBC。
10、MySQL权限管理的原理:MySQL权限系统用来保证用户可以在自身权限范围内顺利的执行权限。当用户连接到MySQL数据库后,身份就会根据主机名和用户名来确认。权限系统据此来赋予操作权限。
11、MySQL的权限控制是通过两个步骤进行的:
步骤1:数据库服务器对登陆的用户进行检查,确定是否可以进行连接。
步骤2:在用户连接到数据库服务器后,系统将会对此用户的每一个请求进行检查。当一个请求发出后,系统首先根据权限表确定你是否可以执行这个操作,如果可以,那么将进行操作,如果你的权限不够,那么则终此操作,并且给出提示信息。
第八章 Java Servlet技术介绍
1、Servlet:Servlet可以被认为是服务器端的Applet。Servlet被Web服务器加载和执行,就如同Applet被浏览器加载和执行一样。.Servlet从客户端(通过Web服务器)接收请求,执行某种作业,然后返回结果。
2、使用Servlet的基本流程如下:
(1)客户端(很可能是Web浏览器)通过HTTP提出请求。
(2)Web服务器接收该请求并将其发给Servlet。如果这个Servlet尚未被加载,Web服务器将把它加载到Java虚拟机并且执行它。
(3)Servlet将接收该HTTP请求并执行某种处理。
(4)Servlet将向Web服务器返回应答。
(5)Web服务器将从Servlet收到的应答发送给客户端。
3、Servlet的生命周期:Servlet的生命周期定义了一个Servlet如何被加载、初始化,以及它怎样接收请求、响应请求、提供服务。
Web容器加载Servlet,生命周期开始。通过调用Servlet的init()方法进行Servlet的初始化。通过调用Servlet()方法实现,根据请求的不同调用不同的do操操操()方法。结束服务,Web容器调用Servlet的destroy()方法。
4、Servlet的优点:Servlet可以很好地替代通用网关接口(Commmon Gateway Interface,CGI)脚本。通常CGI脚本是用Perl或者C语言编写的,它们总是和特定的服务器平台紧密相关。而Servlet是用Java编写的,所以它们一开始就是和平台无关的。这样,Java编写一次就可以在任何平台运行(Write Once,Run Anywhere)的承诺就同样可以在服务器上实现了。Servlet还有一些CGI脚本所不具备的独特优点。
(1)Servlet是持久的。
(2)Servlet是可扩展的。
(3)Servlet是安全的。
(4)Servlet可以在多种多样的客户机上使用。
5、Servlet带来的问题:
(1)开发和维护应用程序的所有部分需要有深厚的Java编程知识,因此处理代码和HTML元素是交织在一起的。
(2)改变应用程序的外观和风格,或者加入对某种新类型客户机(如WML客户机)的支持时,都需要更新并重新编译Servlet代码。
(3)很难利用网页开发工具的优势来设计应用程序界面。如果使用这些工具来开发网页布局的话,生成的HTML代码必须被手工嵌入到Servlet代码中,这个过程既耗时又容易出错,而且极度枯燥乏味。
第九章 JSP 技术介绍
1、模板元素:模板元素是指JSP的静态HTML或者XML内容,它对JSP的显示是非常必要的。这部分的任务主要由制作网页的美工来完成。
Request:Request对象有它的请求访问,它将包装成HttpServletRequest接口。
Response对象:Response对象具有页面的范围,它被包装成HttpServletResponse接口。
2、JSP有三种类指令:页面指令、Include指令、Taglib指令。
(1)页面指令。页面指令定义了许多影响到整个页面的重要属性。一个JSP页面可以包含多个页面指令,在编译过程中,所有的页面指令都被抽出来同时应用到一个页面里。除了Import外其他的页面指令定义的属性值只能出现一次。页面指令的格式如下:
<%@ page? ATTRIBUTE%>
(2)Include指令。Include指令通知容器将当前JSP页面中内嵌的、在指定位置上的资源内容包含进来。被包含的文件内容可以被JSP解析,这种解析发生在编译期间。
Include指令如下:<%@? include file="filename"%>
一经编译,内容不可变,如果要改变filename的内容,必须重新编译JSP文件,但是它的执行效率高。
(3)Taglib指令。这个指令允许页面使用者自定义标签。首先开发用户的开发标签库,为标签库编写.tld配置文件,然后在JSP页面里使用自定义标签。
第十章 UML建模语言介绍
1、约束:在UML中提供了一种简便、统一及一致的约束条件的表达方式,用于类、关系、关联、属性、操作等元素及其基本构成要素的约束条件,这些约束条件描述了这些元素及其构成要素应遵守的限制和应满足的条件。
2、依赖关系:有两个元素X,Y,若修改元素X的定义,可能引起对另一个元素Y的定义的修改,则称元素Y依赖于元素X。
3、UML的主要内容有UML的语义和UML的表示法两个方面。
(1)UML的语义。UML语义通过元模型来严格定义。原模型为UML的所有元素在语法和语义提供了简单、一致及通用的定义性说明。使开发者能在语义上取得一致,消除因人而异的表达方法。UML语义还支持对元模型的扩展定义。UML定义了各种元素、各种机制及各种类型的语义。
UML的元素是基本构造单位,其中模型元素用于构造系统,视图元素用于构成系统的表示部分。
UML定义的各种机制的语义,保持了UML的简单和概念上的一致。这些机制是依赖关系、约束、标记、标记值和定制等。
(2)UML的表示法。UML表示法定义了UML的图形表示符号,为建模者和建模工具的开发者提供了标准的图形符号和正文语法。这些图形符号和文字表达的是应用级的模型,在语义上它是UML元模型的实例。使用这些图形符号和正文语法为系统建模构造了标准的系统模型。UML表示法分为通用表示和图形表示两种。
4、UML的特点:
统一了面向对象方法的基本概念。UML是在Booth方法、OMT方法和OOSE方法的基础上发展起来的,是这些方法的延续和发展。消除了不同方法在表示法和术语上的差异,避免了符号表示和理解上不必要的混乱。
(1)建模能力更强。
(2)独立开发过程。
(3)UML提出了许多新概念。UML符号表示考虑了许多方法的图形表示,删除了大量容易引起混乱的、多余的和极少使用的符号,增加了一些新的符号。还提出一些新的概念,如构造型、职责、扩展机制、线程、模式、合作图和活动图等。?
5、简述UML的模型描述图及其各自的功能。
答:最常用的UML图包括:用例图、类图、序列图、状态图、活动图、组件图和部署图。下面给出了每类图的简要说明:
1)用例图:用例图描述了系统提供的一个功能单元。用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的“角色”(Actors,也就是与系统的其他实体)关系,以及系统内用例之间的关系。
2)类图:类图表示不同的实体(人、事物和数据)如何彼此相关;换句话说,它显示了系统静态结构。
3)序列图:序列图显示具体用例(或者是用例的一部分)的详细流程。它几乎是自描述的,并且显示了流程中不同对象之间的调用关系,同时还可以很详细的显示对不同对象的不同调用。
4)状态图:状态图表示某个类所处的不同状态和该类的状态转换信息。
5)活动图:活动图表示在处理某个活动时,两个或者更多类对象之间的过程控制流。活动图可用于在业务单元的级别上对更高级别的业务过程进行建模,或者对低级别的内部类操作进行建模。
6)组件图:组件图提供系统的物理视图。它的用途是显示系统中的软件对其他软件组件(例如,库函数)的依赖关系。组件图可以在一个非常高的层次上显示,从而仅显示粗粒度的组件,也可以在组件包层次之上显示。
7)部署图:部署图表示该软件系统如何部署到硬件环境中。它的用途是显示该系统不同的组件将在何处物理地运行,以及它们将如何彼此通信。
第十一章 Microsoft.NET介绍
1、Microsoft.NET:Microsoft.NET是Microsoft的XML Web服务平台。.NET包含了建立和运行基于XML的软件所需要的全部部件。简言之,.NET是一种面向网络、支持各种用户终端的开发平台环境。
2、Microsoft.NET方案由以下关键部分组成:
(1).NET构建块服务
(2).NET用户体验,可以自动建立超级链接
(3).NET基础结构,由.NET框架、Microsoft Visual Studio.NET、.NET企业服务器和Microsoft Windows.NET组成。
3、.NET战略:
(1)改革商务模型,
(2)提高软件开发效率,并试图使应用软件的发布更加容易
(3)改进用户界面,并能支持多种用户终端
.NET的出现,意味着人们可以只用一种简单的界面就可以编写、浏览和分享信息,而且还可以得到功能强大的信息管理工具。
4、NET包括:
(1).NET平台,这是一套编程工具和基本构架,用来创建、发布、管理和XML Web服务
(2).NET体验,这是终端用户用以.NET交互的手段
5、.NET新特性:一致的编程模型、简化了的编程模式、运行于多个平台、支持多语言的和资源管理、一致的出错处理方式、安全性、XML和SOAP的引入、全新的编程语言C#
6、.NET框架由许多方面构成,在整个结构体中最重要的是系统服务和公共语言运行时。
第十二章 J2EE框架介绍
1、J2EE:是开放的、基于标准的平台,用于开发、部署和管理N层结构,面向Web的、以服务器为中心的企业级应用。换句话说,它是一套体系结构,而不是一个具体的软件。
J2SE主要适用GUI的客户端程序,也就是通常所说的桌面应用,并且为我们提供了Java编程常用到的核心包;
2、J2EE的主要组成部分有J2EE平台,J2EE规范,参考实现,兼容性测试套件和J2EE蓝图。
简答题
3、J2EE的体系结构包括J2EE容器的体系结构和J2EE应用程序体系结构。
4、容器体系结构可以分为四部分:
(1)容器服务API:J2EE定义了每一个J2EE运行环境都要支持的Java标准扩展。J2EE提供了这些API的服务层的抽象。这就是使得在容器里访问JDBC、JMS之类的服务API就像在其中实现基础容器一样。
(2)声名性服务:就是指容器动态参与应用程序组件的服务,而这些服务基于应用程序组件之外的特定声名,这样简化了应用程序本身的开发。比较常见的有事物处理服务、访问权限控制等。
(3)组件协议:J2EE体系结构中容器的基本目的是提供应用程序组件的运行环境,就是在容器的Java虚拟机中生成和调用应用程序组件的实例。这样,容器负责管理应用程序组件的寿命周期。但是要在容器运行环境中管理应用程序组件,应用程序就要遵守容器指定的某些约定。
(4)其他容器服务:其他实时服务,与组件的存活期、资源集中、垃圾收集等有关。
5、J2EE应用程序的体系结构分为以下几个部分:
(1)客户端:客户端可以是Web浏览器或者Java应用程序,如果是浏览器的客户端,则可以使用Applet Container来运行HTML网页里的Applet程序,浏览器的客户是通过HTTP、SSL等其他协议和Web层进行通信。如果是一般的客户端,它可以使用J2EE里JMS、JAAS、JAXP、JDBC等特性,同时所有的J2SE里的内容都可以支持,它可以直接访问Web层、业务层和数据库层。
(2)Web层:Web层又叫表示层,它上面运行了JSP、JavaBean和Servlets组件,这些组件除了可以使用J2SE的所有功能外,它还可以使用许多J2EE提供的服务:JMS、JAAS、JDBC、JTA、JavaMail,JAXP等。它通过调用业务层的EJB来处理业务逻辑。
(3)业务层:业务层主要运行了EJB,EJB是J2EE企业级应用的核心,它处理系统运算量巨大的业务逻辑。它给低层的调用提供了统一的接口,Web层通过远程调用的方法来使用EJB。EJB可以使用容器提供的服务或者直接访问数据库,同时,容器还提供了事务服务,简化了EJB的开发。
通用网关接口CGI
1、WEB浏览器访问WWW的步骤
(1)浏览器将URL的第一部分解码并与服务器联系
(2)浏览器将URL的其余部分提供给服务器
(3)服务器将URL转换路径和文件名
(4)服务器将文档文件发送给浏览器
(5)服务器断开连接
(6)浏览器显示文档
2、CGI:是一种标准的服务器方面的扩展接口程序,如HTTP或Web服务器。CGI是实时运行的一个应用程序,它可以返回动态的信息。
3、标准输入和标准输出:STDIN和STDOUT是标准输入和标准输出的缩写,是两个预定义的流或文件句柄。每个进程都继承这两个打开的句柄。写屏命令行程序通常利用写入STDOUT的方法来实现。重定向一个应用程序的输入,就是重定向STDIN。若重定向一个程序的输出,就是重定向STDOUT。这个机制允许管道操作。如果列一个目录清单,并把输出通过管道送到排序操作,也就是将目录程序的STDOUT重定向到排序程序的STDOUT。
7、CGI程序工作的基本原理:通常Web服务器给访问者的权限是读取而不是执行,所以为了使CGI程序能够执行就要道德设计一个可以执行的目录,通过Web服务器设置其属性为可执行。
CGI程序按以下步骤开始工作,
(1) 浏览器将URL的第一部分解码并服务服务器;
(2) 浏览器将URL的其余部分提供给服务器;
(3) 服务器将URL转换成路径和文件名;
(4) 服务器意识到URL指向一个程序,而并非一个静态文件;
(5) 服务器准备环境,执行脚本;
(6) 脚本执行,读取环境变量和STDIN;
(7) 脚本为将来的内容向STDOUT发送正确的MIME头信息;
(8) 脚本向STDOUT发送其余输出的部分,然后终止;
(9) 服务器发现脚本结束,关闭与浏览器的连接;
(10) 浏览器从脚本中显示输出。
●环境变量对于CGI是至关重要的,所有的信息都要通过环境变量来和CGI联系。环境变量分为三组,
(1) 关于服务器的专有用量,服务器对于每一个访问都会记录自身信息,如服务器的地址、端口。
GATEWAY_INTERFACE 服务器遵照的CGI版本
SERVER_NAME 服务器的IP地址和主机名
SERVER_PORT 接受HTTP请求的端口号,通常为80
SERVER_SOFTWARE? 服务器软件的名称
(2) 请求专有环境变量,访问一个网站时发出的请求通常是不同的,这种变化会体在环境变量上。这些变量可以帮助你正确地处理客户和服务器的数据。
AUTH_TYPE 服务器使用的确认模式。
CONTENT_FIFE CGI程序所使用的数据文件可以是temp.dat等
CONTENT_LENGTH POST请求中向标准输入发送的字节数 content length
CONTENT_TYPE 被发送的数据的MIME类型 content type
PATH_TRANSLATED 与PATH_INFO 对应的绝对路径
PATH_INFO CGI程序的放置路径 path info
REMOTE_ADDR 客户的IP地址或主机名 remote addr
QUERY_STRING 传给CGI程序的用户数据(url中NAME和VALUE,及转换过的码)
REMOTE_LINE 发送给服务器的完整的HTTP请求内容 remote line
SCRIPT_NAME 被运行的脚本 script name
(3)客户端的环境变量:客户端的环境变量包括用户使用的软件信息,为了区别于其他的信息段,在所有的客户环境变量前加前缀HTTP_。信息涵盖了用户的详细资料。
ACCEPT 列出能被此请求接受的应答模式:image/gif等
ACCEPT_ENCODING? 列出客户机支持的编码方式类别
ACCEPT_LANGUAGE 列出客户机可以接受的语言的ISO编码
FROM 列出客户机的E-mail地址
PRAGMA 指定将来要用到的服务器代理
REFERER 标明指向连接当前文档的URL
USER_ AGENT 标明客户端软件
●HTTP Cookie:是一个存储在客户端的文本文件,可以用来保存客户机的一些状态信息,当用CGI在客户端建立一个Cookie后,通过Web服务器把信息传到客户端并保存到Cookie中,这样,过几天后该客户再次访问Web服务器时,CGI会自动读取保存在客户端的Cookie信息,从而完成和客户更好的交互。
●当客户访问的网站有COOkie存在时,客户端保存的COOkie就要不断增多,因而对COOkie又有一些相关的限制:
(1)客户端浏览器所储存的COOkie总数最大值为300个
(2)每个COOkie的长度不超过4K
(3)每个web服务器或internet域所设置的COOkie总数不能超过20个以上限制中,当数量超出时,最近的使用最少的COOkie将丢失。当COOkie的长度超出时,超出的部分将丢失
●服务器端附件SSI:是一些标记符,可以用来嵌入到HTML文档中,这些嵌入到文档中的符号可以提供一些简单的动态页面效果,SSI与CGI的相似之处在于它们都是程序,尽管SSI看来只是些符号,实际上它是一段真正的程序的名称。
●SSI的优点,运行于服务器端的,减轻了客户端的负担,所有关于SSI的动作都在服务端计算完成。缺点:在商业的站点加入SSI要求有强大的Web服务器平台,在页面中加入太多的SSI标记,会让Web承担太大的负担;会带来安全隐患。
●CGI与SSI的异同:相同是都是运行于服务器端的,减轻了客户端的负担。
不同SSI没有外部接口,而CGI则可以接受外来信息,客户端可以看到CGI的痕迹,却看不到SSI的痕迹。
●SSI的格式:<!——和——>表示SSI标记的开始和结束,而这两个标志实际是注释
符,这样当服务器不具备SSI解释功能时,SSI就以注释的身份显示在页面中,不会影响网页的浏览。(在HTML下为注释语句)
●SSI的命令:1 include作用:在网页中包含一个文件,Virtual用于指定相对于web服务器的根目录的文件和路径名。2 echo 显示环境变量或者其他变量的值 3 exec 用来调用一个子进程,可以打开文件或者提供输出 5 fsize 用来显示指定文件的大小
1、ASP的组成部分包括:服务器脚本、客户端脚本、服务器组件、标准文本、文件系统和服务器端对象几部分组成。从本质上讲ASP实际上是服务器端的脚本制作。在浏览器提出连接请求后,服务器将脚本代码进行动态解释,传送到浏览器上。任何放在html中的东西,都可以放在ASP中。
2、ASP的built-in(内建对象):应用程序对象(Application)、会话对象(Session)、服务器对象(Server)、请求对象(Request)、响应对象(Response)等。
3、标准的ActiveX组件包括:广告循环(AdRotator)组件、浏览器性能(BrowserCapability)组件、数据库访问(DatabaseAccess)组件、内容链接(ContentLinking)组件、文件访问(FileAccess)组件等等。
4、ASP指定脚本语言的方法:1、指定脚本语言<%@LANGUAGE=ScriptingLanguageRUNAT=location%>常用的脚本语言有:VBScript\JavaScript。Location位置一般应为server表示服务器执行。默认值为客户端执行。
5、修改默认脚本的方法有:(1)通过注册表(2)通过IIS,详见P61页。
7、变量:是计算机内存中已命名的存储位置,其中包含了数字或字符串等数据。变量包含的信息称为变量的值。变量使用户便于理解脚本操作的名称,为用户提供了一种存储、检索和操作数据的途径。
8、VBScript声明变量的方法:不需要声明,但在使用所有变量前要声明:(Dim/Pubic/Private)
9、JavaScript声明变量的方法:在使用本地过程变量需声明,(<%varusername;%>)
10、ASP提供了两个内建对象用来存储变量:Session(会话作用域)对象和Application(应用程序作用域)对象。
11、常量:用来代替一个数或字符串的名称。组件可在一个组件类型库中声明变量,组件类型库是一个包含ActiveX组件所支持的对象和类型的信息的文件。如果在Global.asa文件中声明了一个类型库,就可以在该应用程序的任意页中使用已定义的常量。
12、过程是一组能执行指定任务且具有返回值的脚本命令。过程定义可出现在<script>过程</script>必须声明所有语言、谁处理。主脚本语言中的过程用脚本分界符<%和%>分隔。调用过程:只需要在命令中包含过程名即可。如果从Vbscript调用javascript过程,就必须在过程名后加上括号,如过程没有变量,就用空括号。Javascript也要加括号<>.(小结:1\<%call名字(变量名)%>2\<%call名字%>3\<%=名字%>)
13、组件:ActiveX组件是建立强大的Web应用程序的关键。组件提供了在脚本中执行任务的对象,ASP同样提供了可在脚本中使用的内建对象。ActiveX组件是一个文件,该文件包含执行某项或一组任务的代码。组件可以执行公用任务,它可以提供一个或多个对象以及对象的方法和属性。
14、集合:是存储字符串、数字、对象和其他值的地方。除了在存储或取出项目时集合会自动扩展与搜索外,集合与数组非常的相近。与数组不同的是,集合被修改后,项目的位置将会移动,可以通过集合中项目的名称、索引或者通过在集合的所有项目中遍历访问项目。大多数的ASP内建对象支持集合。
15、ASP的内建对象:1、Application对象给定应用程序的所有用户之间共享的信息。2、Request对象访问任何用HTTP请求传递的信息。3、Response对象控制发送给用户的信息。4、Server对象,提供对服务器上的方法和属性的访问。5、Session对象,存储特定的用户会话所需的信息。
16、ASP的执行原理:从本质上讲,ASP实际上是服务器端的脚本制作。在浏览器提出连接请求后,服务器将脚本代码进行动态解释,传送到浏览器上。
HTML中注释:<!- …… ->
PHP中的注释: //
/* …… */