网站设计与WebWebWebWeb应用开发技术清华大学出版社2011201120112011年9999月24242424日第7777章服务器端开发————————动态主页技术基础教学目标教学重点教学过程第2222页网站设计与WebWebWebWeb应用开发技术清华大学出版社教学目标�了解动态主页的基本特点�掌握.NET.NET.NET.NET动态主页的基本开发方法�了解JavaJavaJavaJava技术基础�了解不同动态主页开发技术的异同第3333页网站设计与WebWebWebWeb应用开发技术清华大学出版社教学重点�.NET.NET.NET.NET动态主页的基本开发方法�JavaJavaJavaJava技术基础第4444页网站设计与WebWebWebWeb应用开发技术清华大学出版社教学过程�动态主页基本原理�.NET.NET.NET.NET介绍�ASP.NETASP.NETASP.NETASP.NET应用的开发�JavaJavaJavaJava技术�不同的动态主页技术比较第5555页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.17.17.17.1动态主页基本原理�静态页面:网页内容在设计时就确定了,如要修改或维护,必须修改源代码�活动页面:在静态页面的基础上,加入控制客户端显示方式的元素,在客户端改变网页的内容和样式�动态页面:网页内容从服务器提取,数据可随时更新,页面内容实时生成,并具有交互性第6666页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.17.17.17.1动态主页基本原理�动态””””的““““动””””指的是““““交互性””””,通俗的说就是网页能不能根据访问者或访问时间的不同而显示出不同的内容�客户端动态网页�通过附加到浏览器上的模块((((插件))))完成动态网页的全部工作,但存在一定缺陷�服务器端动态网页�由客户端提出执行请求,在服务器端运行,运行的结果通过HTMLHTMLHTMLHTML的形式传回客户端�PHPPHPPHPPHP、CGICGICGICGI、ASPASPASPASP、JSPJSPJSPJSP和ASP.NETASP.NETASP.NETASP.NET等第7777页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.2.NET7.2.NET7.2.NET7.2.NET介绍�微软总裁兼首席执行官SteveBallmerSteveBallmerSteveBallmerSteveBallmer给.NET.NET.NET.NET下的定义为:�““““.NET.NET.NET.NET代表一个集合,一个环境,一个可以作为平台支持下一代InternetInternetInternetInternet的可编程结构。””””�即:.NET=.NET=.NET=.NET=新平台++++标准协议++++统一开发工具�.NET.NET.NET.NET致力将手机,浏览器和门户应用程序集成到一起,形成一个统一的开发环境第8888页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.2.NET7.2.NET7.2.NET7.2.NET介绍�.NET.NET.NET.NET的设计目标第9999页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.2.NET7.2.NET7.2.NET7.2.NET介绍�.NETFramework.NETFramework.NETFramework.NETFramework具有两个主要组件:公共语言运行库和.NETFramework.NETFramework.NETFramework.NETFramework类库。公共语言运行库是.NETFramework.NETFramework.NETFramework.NETFramework的基础�.NET.NET.NET.NET框架是一个多语言组件开发和执行环境,他提供了一个跨语言的统一编程环境。.NET.NET.NET.NET框架的设计目标是让开发人员更容易地建立WebWebWebWeb应用程序和WebWebWebWeb服务,使得InternetInternetInternetInternet上的各应用程序之间,可以使用WebWebWebWeb服务进行沟通第10101010页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.2.NET7.2.NET7.2.NET7.2.NET介绍�.NET.NET.NET.NET框架结构第11111111页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.3ASP.NET7.3ASP.NET7.3ASP.NET7.3ASP.NET应用的开发�ASP.NETASP.NETASP.NETASP.NET提供与现有ASPASPASPASP兼容的语法�这包括支持可在....aspxaspxaspxaspx文件内与HTMLHTMLHTMLHTML内容混合的%%%%%%%%代码呈现块�这些代码块在网页呈现时按由上而下的方式执行第12121212页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.3ASP.NET7.3ASP.NET7.3ASP.NET7.3ASP.NET应用的开发%@PageLanguage=C#%%@PageLanguage=C#%%@PageLanguage=C#%%@PageLanguage=C#%%%%%Response.WriteResponse.WriteResponse.WriteResponse.Write((((我的第一个ASP.NETASP.NETASP.NETASP.NET程序););););%%%%一个简单的实例————————测试运行环境第13131313页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.3ASP.NET7.3ASP.NET7.3ASP.NET7.3ASP.NET应用的开发scriptlanguage=C#scriptlanguage=C#scriptlanguage=C#scriptlanguage=C#runatrunatrunatrunat=server=server=server=servervoidvoidvoidvoidPage_Load(ObjectPage_Load(ObjectPage_Load(ObjectPage_Load(Objectsender,sender,sender,sender,EventArgsEventArgsEventArgsEventArgse){e){e){e){if(!if(!if(!if(!Page.IsPostBackPage.IsPostBackPage.IsPostBackPage.IsPostBack){){){){DataTableDataTableDataTableDataTabledtdtdtdt=new=new=new=newDataTableDataTableDataTableDataTable();();();();DataRowDataRowDataRowDataRowdrdrdrdr;;;;dt.Columns.Add(newdt.Columns.Add(newdt.Columns.Add(newdt.Columns.Add(newDataColumnDataColumnDataColumnDataColumn((((整数值,,,,typeof(Int32)));typeof(Int32)));typeof(Int32)));typeof(Int32)));dt.Columns.Add(newdt.Columns.Add(newdt.Columns.Add(newdt.Columns.Add(newDataColumnDataColumnDataColumnDataColumn((((字符串值,,,,typeof(stringtypeof(stringtypeof(stringtypeof(string)));)));)));)));dt.Columns.Add(newdt.Columns.Add(newdt.Columns.Add(newdt.Columns.Add(newDataColumnDataColumnDataColumnDataColumn((((日期时间值,,,,typeof(DateTimetypeof(DateTimetypeof(DateTimetypeof(DateTime)));)));)));)));dt.Columns.Add(newdt.Columns.Add(newdt.Columns.Add(newdt.Columns.Add(newDataColumnDataColumnDataColumnDataColumn((((布尔值,,,,typeof(booltypeof(booltypeof(booltypeof(bool)));)));)));)));数据库访问第14141414页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.3ASP.NET7.3ASP.NET7.3ASP.NET7.3ASP.NET应用的开发for(for(for(for(intintintinti=1;i=9;i++){i=1;i=9;i++){i=1;i=9;i++){i=1;i=9;i++){drdrdrdr====dt.NewRowdt.NewRowdt.NewRowdt.NewRow();();();();dr[0]=i;dr[0]=i;dr[0]=i;dr[0]=i;dr[1]=dr[1]=dr[1]=dr[1]=项++++i.ToStringi.ToStringi.ToStringi.ToString();();();();dr[2]=dr[2]=dr[2]=dr[2]=DateTime.NowDateTime.NowDateTime.NowDateTime.Now;;;;dr[3]=(i%2!=0)?true:false;dr[3]=(i%2!=0)?true:false;dr[3]=(i%2!=0)?true:false;dr[3]=(i%2!=0)?true:false;dt.Rows.Add(drdt.Rows.Add(drdt.Rows.Add(drdt.Rows.Add(dr););););}}}}dataGrid1.DataSource=newdataGrid1.DataSource=newdataGrid1.DataSource=newdataGrid1.DataSource=newDataView(dtDataView(dtDataView(dtDataView(dt););););dataGrid1.DataBind();dataGrid1.DataBind();dataGrid1.DataBind();dataGrid1.DataBind();}}}}}}}}/script/script/script/script数据库访问第15151515页网站设计与WebWebWebWeb应用开发技术清华大学出版社7.3ASP.NET7.3ASP.NET7.3ASP.NET7.3ASP.NET应用的开发formid=Form1formid=Form1formid=Form1formid=Form1runatrunatrunatrunat=server=server=server=serverasp:DataGridasp:DataGridasp:DataGridasp:DataGridid=dataGrid1id=dataGrid1id=dataGrid1id=dataGrid1runatrunatrunatrunat=server=server=server=serverBorderCol