B/S结构应用程序相关技术讲座2020年1月11日2指导教师姓名:邢承杰工作单位:北大计算中心电子邮件地址:xingcj@pku.edu.cn3讲座的适用范围掌握了软件开发的基本知识和方法,没有实际项目开发经验的同学从事其它结构应用程序开发,但没接触过B/S结构应用程序开发的同学4关于本讲座在可选则的课题当中,有一类题目要求采用B/S结构开发例如:《电子购物网站的设计与实现》,《论坛程序的设计与实现》等B/S结构?5讲座内容基础知识入门如何开始一个项目的开发数据库技术简介ASP技术简介JSP技术简介6基础知识入门网络应用程序的结构B/S结构应用程序的运行过程HTML语言简介静态网页与动态网页7网络应用程序的结构同学们在毕业设计中所研究的课题,从内容上分成两类——数据管理方面的课题和网络管理方面的课题课题的题型大致分成如下几种类型——研究型课题、设计型课题和应用型课题绝大多数应用型课题属于网络应用程序,也就是说程序运行需要网络的支持;一般需要需要访问数据库应用程序的结构(model,模型,模式)简单说就是程序如何存放以及如何运行8网络应用程序的结构(续一)目前具有的结构–主机/终端结构–文件/服务器结构–客户机/服务器结构(Client/Server结构,简称C/S结构)–浏览器/服务器结构(Browser/Server结构,简称B/S结构)–点对点结构(PeertoPeer结构)目前主流的结构有2种–Client/Server结构–Browser/Server结构9Client/Server结构Client/Server结构,它把集中管理模式转化为一种服务器与客户机负荷均衡的分布式计算模式Client/Server结构的应用程序通常将程序存放于客户端,将数据存放于服务器端。适合于程序用户数量较少,或者程序功能复杂占用资源大的情况10Client/Server结构(续一)优点:程序开发相对容易;运行速度快缺点:维护升级困难使用举例:银行柜台的应用系统,股票交易系统等11Browser/Server体系结构Browser/Server体系结构,此结构采用瘦客户端的设计,客户端只安装浏览器(browser),所有程序及数据均存放在服务器端。适合于程序用户数量大,或者程序的复杂程度和资源占用程度相对较小的情况12Browser/Server体系结构(续一)优点:升级维护十分方便;对用户的硬件要求低缺点:程序开发相对复杂;运行速度较慢;对服务器的硬件要求高使用举例:各种网上邮件系统,论坛程序等13基础知识入门网络应用程序的结构B/S结构应用程序的运行过程HTML语言简介静态网页与动态网页14B/S结构应用程序的执行过程下图为Browser/Server结构应用程序的执行过程。页面请求数据获取页面应答数据请求浏览器Web服务器数据库服务器15C/S结构应用程序的执行过程下图为Client/Server结构应用程序的执行过程。数据请求数据获取客户端程序数据库服务器16基础知识入门网络应用程序的结构B/S结构应用程序的运行过程HTML语言简介静态网页与动态网页17HTML语言简介HyperTextMarkupLanguage超文本标记语言,用于网页制作的语言,并通过浏览器解释执行HTML语言是构成B/S结构应用程序的“基本”元素页面请求数据获取页面应答数据请求浏览器Web服务器数据库服务器18HTML语言简介(续一)HTML并不是程序设计语言,它仅用来控制浏览器表现文字、图片,以及如何建立文件之间的连接,而程序设计语言是通过一连串的语句来驱使操作系统或应用程序完成某些工作因此HTML语言简单易学,同学们并不需要专门去学,用到再学即可。HTML语言编写的程序以文本文件的形式存放,因此任何文本编辑器均可用来编写HTML程序19HTML的基本概念(请看演示)标记区段标记的参数语法HTML编辑工具20基础知识入门网络应用程序的结构B/S结构应用程序的运行过程HTML语言简介静态网页与动态网页21静态网页与动态网页单纯使用HTML语言制作的网页并不会因时因地而产生变化,所以称为静态网页(.htm)为了让网页具备动态变化的能力,人们考虑将程序加到纯HTML文件中,从而发展出动态网页技术动态网页技术ASP,JSP,PHP……(.asp.jsp.php)动态页面运行需要Web服务器软件的支持,不能使用浏览器直接打开22培训内容基础知识如何开始一个项目的开发数据库技术简介ASP技术简介JSP技术简介23如何开始一般项目开发过程简介课题项目开发过程简介开发运行环境的配置开发工具简介(Dreamweaver)24一般项目开发过程简介1.制定计划2.需求分析和定义3.软件设计4.程序编码5.软件测试6.运行和维护25如何开始一般项目开发过程简介课题项目开发过程简介开发运行环境的配置开发工具简介(Dreamweaver)26课题项目开发过程简介1.制定计划2.需求分析和定义3.软件设计4.程序编码5.软件测试6.运行和维护在课题要求中已给出需要同学自己完成不需要完成27课题项目的具体开发过程1.熟悉开发工具,如Dreamweaver。(用1-2天)2.掌握开发技术,如数据库的应用,ASP技术,JSP技术等。(我们用3周,步骤1、2通常称为技术储备,解决用什么做的问题)3.看一看已有的程序是如何工作的,了解程序需要实现的功能。(此步骤通常称为需求分析,解决做什么的问题。一般与前两项工作同时进行,我给大家的《课题详细说明》就是一个小的需求分析文档)28课题项目的具体开发过程(续一)4.软件设计。设计内容包括采用何种程序结构、采用何种开发技术技术、采用何种数据库、划分功能模块、功能模块间的关系等等。(此阶段通常成为设计阶段,解决如何做的问题,我们不用提前进行设计,可以在编程的同时进行设计)5.程序编码6.测试29如何开始一般项目开发过程简介课题项目开发过程简介开发运行环境的配置开发工具简介(Dreamweaver)30开发运行环境的软硬件要求推荐配置:–硬件条件:奔腾III以上、256M内存以上的台式机和笔记本均可–软件条件:操作系统需采用Windows2000Pro或者WindowsXPPro最低配置:–硬件条件:586以上、64M内存以上的台式机和笔记本均可–软件条件:操作系统Windows98即可31需要安装的软件介绍采用ASP技术–Internet信息服务器+Access数据库(Win2000,低)–Internet信息服务器+SQLServer数据库(Win2000,中)–PersonalWebServer+Access数据库(Win98,低)采用JSP技术–JDK1.4+Tomcat+SQLServer数据库(Win2000,高)采用其它开发技术32软件安装的位置页面请求数据获取页面应答数据请求用户端Web服务器软件数据库服务器软件ASP浏览器(OS)IISAccessASP浏览器(OS)IISSQLServerASP浏览器(OS)PWSAccessASP浏览器(OS)JDK1.4+TomcatSQLServer其它浏览器(OS)其它服务器软件其它数据库33开发运行时是否需要三台电脑?大型项目的开发运行环境往往都按照上面的结构来配置课题项目的开发不需要这样,也没有条件这样配置可以将浏览器、WEB服务器软件和数据库服务器软件安装在一台机器上–技术上完全可行–开发上简便,硬件要求低34开发运行时只需要一台电脑!页面请求页面应答数据获取数据请求浏览器Web服务器软件数据库服务器软件这就是我们要配置的环境35安装步骤一,浏览器的安装操作系统安装好后,IE浏览器自动安装由于是课题系统,不是实际运行的系统,我们只要保证程序能够在IE中正常运行即可有条件的化,请将IE升级到最新版本,这样能够支持许多HTML语言的新特性,并且增加程序的兼容性36安装步骤二,Web服务器的安装ASP技术:IIS的安装1.安装软件(2000或XP光盘自带)2.配置服务器属性(在“网站”、“主目录”、“文档”三个选项卡中进行设置)37安装步骤二,Web服务器的安装(续一)JSP技术:JDK和Tomcat的安装1.先安装JDK1.4.22.然后安装Tomcat3.将程序目录置于webapp文件夹下4.配置server.xml和web.xml文件38安装步骤三,数据库服务器的安装ACCESS的安装1.安装OFFICE软件时,选择安装ACCESS组件即可2.建立ACCESS数据库文件,ACCESS数据库是以文件形式存储数据的39安装步骤三,数据库服务器的安装(续一)SQLServer的安装步骤1.安装软件2.启动服务管理器3.启动企业管理器,创建数据库4.创建用户40安装步骤三,数据库服务器的安装(续二)SQLServer的版本问题–2000/XPProfessional操作系统下SQLServer7.0安装Desktop版SQLServer2000安装Personal版–2000/2003Server版操作系统下SQLServer7.0安装标准版SQLServer2000安装标准版–XPHOME版操作系统下SQLServer7.0安装Desktop版SQLServer2000安装Personal版41开发运行环境配置到此结束42如何开始一般项目开发过程简介课题项目开发过程简介开发运行环境的配置开发工具简介(Dreamweaver)43开发工具简介(Dreamweaver)Dreamweaver的安装和使用–程序安装–开发环境介绍44培训内容基础知识如何下手数据库技术简介ASP技术简介JSP技术简介45数据库技术简介SQL(StructuredQueryLanguage)ODBC(OpenDataBaseConnectivity)JDBC(JavaDataBaseConnectivity)B/S结构应用程序的执行过程(数据库访问部分细化图)数据库服务器软件46SQL(StructuredQueryLanguage)是发送给数据库并要求数据库操作其数据的指令是专门为数据库设计的语言,比计算机程序设计语言要简单的多SQL语言主要分成两部分DDL(DataDefinitionLanguage)和DML(DataManipulationLanguage),前者用于建立数据库,后者用于操作数据库中的数据与HTML语言的相似之处–不属于程序设计语言–用于控制–简单易学47SQL举例Select(name,age,sex)fromtbl_userwhereuserid=“10001”–从数据库中查询数据Insertintotbl_user(userid,name,age,sex)values(‘10001',‘Mike',‘25',‘m')–向数据库中插入数据48数据库技术简介SQL(StructuredQueryLanguage)ODBC(OpenDataBaseConnectivity)JDBC(JavaDataBaseConnectivity)B/S结构应用程序的执行过程(数据库访问部分细化图)数据库服务器软件49ODBC(OpenDataBaseConnectivity)ODBC可理解为一个程序ODBC程序中包含了与各种数据库连接的驱动程序,用来实现应用程序与不同数据库的连接ODBC程序中还包括一个与应用程序的接口程序,实现不同程序与数据库的连接特点:能够存取不同厂商所提供的数据库50ODBC出现前应用程序连接数据库应用程序SQLServerSQLServer驱动OracalOracal驱动AccessAccess驱动……………………51利用ODBC连接数据库应用程序SQLServerOracalAccess…………ODBCAPIODBC驱动程序5