C_初级阶段课件.ppt
ASP.NET(C#)软件开发技术软件开发技术西安致盛计算机教育中心西安致盛计算机教育中心编程的目标:以简洁、凝练的方式实现强大的功能编程的目标:以简洁、凝练的方式实现强大的功能编程的目标:以简洁、凝练的方式实现强大的功能编程的目标:以简洁、凝练的方式实现强大的功能对编程语言掌握的对编程语言掌握的对编程语言掌握的对编程语言掌握的第一境界为弄懂语法与结构第一境界为弄懂语法与结构第一境界为弄懂语法与结构第一境界为弄懂语法与结构第二境界为编写代码随手拈来第二境界为编写代码随手拈来第二境界为编写代码随手拈来第二境界为编写代码随手拈来第三境界为随处闪现光芒第三境界为随处闪现光芒第三境界为随处闪现光芒第三境界为随处闪现光芒高手的代码总是能在简洁与凝练中闪现智慧的光芒,高手的代码总是能在简洁与凝练中闪现智慧的光芒,高手的代码总是能在简洁与凝练中闪现智慧的光芒,高手的代码总是能在简洁与凝练中闪现智慧的光芒,读起来令人时时有顿悟之感读起来令人时时有顿悟之感读起来令人时时有顿悟之感读起来令人时时有顿悟之感基于基于基于基于WindowsWindows的标准化工作界面以及可视化的开发环的标准化工作界面以及可视化的开发环的标准化工作界面以及可视化的开发环的标准化工作界面以及可视化的开发环境为创建应用程序提供了诸多方便。境为创建应用程序提供了诸多方便。境为创建应用程序提供了诸多方便。境为创建应用程序提供了诸多方便。编程,最关键的是掌握编程语言。编程,最关键的是掌握编程语言。编程,最关键的是掌握编程语言。编程,最关键的是掌握编程语言。因为一个程序的核因为一个程序的核因为一个程序的核因为一个程序的核心部分实际上是它的程序代码,正是代码使得各种控心部分实际上是它的程序代码,正是代码使得各种控心部分实际上是它的程序代码,正是代码使得各种控心部分实际上是它的程序代码,正是代码使得各种控件具有了灵魂,从而决定了控件的功能件具有了灵魂,从而决定了控件的功能件具有了灵魂,从而决定了控件的功能件具有了灵魂,从而决定了控件的功能。本阶段主讲内容本阶段主讲内容第一章:基本概念第一章:基本概念第二章:基本语法第二章:基本语法第三章:基本控件第三章:基本控件第四章:第四章:ADO.NET基础应用基础应用第五章:项目案例(论坛)第五章:项目案例(论坛)第六章:类的基础知识第六章:类的基础知识第七章:项目实践(旅游管理系统)第七章:项目实践(旅游管理系统)第一章第一章基本概念基本概念第一节:第一节:Visual基本概念基本概念第二节:面向对象的基本概念第二节:面向对象的基本概念第三节:开发第三节:开发ASP.NET应用程序应用程序的一般步骤的一般步骤第四节:创建第四节:创建ASP.NET应用程序应用程序1.1Visual基本概念基本概念VisualVisual:指的是开发图形用户界面指的是开发图形用户界面(GUI)(GUI)的方法的方法不不需编写大量代码去描述界面元素的外观和位置,而只需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象要把预先建立的对象addadd到屏幕上的一点即可。到屏幕上的一点即可。.NET.NET框架框架:MicrosoftMicrosoft推出的推出的.NET.NET平台不同于以往的编程语平台不同于以往的编程语言,它更像一个技术框架,即假设一个开发言,它更像一个技术框架,即假设一个开发VB.NETVB.NET、C#C#、ASP.NETASP.NET等应用程序的总框架,用英文表示等应用程序的总框架,用英文表示.NETFrameWork.NETFrameWork。在。在.NET.NET框架中包含三个部分框架中包含三个部分1.1.公共语言运行库(公共语言运行库(CommonLanguageRuntimeCommonLanguageRuntimeCLRCLR)公共语言运行库是公共语言运行库是.NET.NET框架的运行环境,负责框架的运行环境,负责运行和维护用户编写的程序代码,当网页第一次访问运行和维护用户编写的程序代码,当网页第一次访问时,应用程序会被编译成一种中间语言(时,应用程序会被编译成一种中间语言(MSILMSIL),),然后通过即时编译器生成可执行二进制代码,然后通过即时编译器生成可执行二进制代码,如果源代码发生变化,就需要重新把源代码编译为中如果源代码发生变化,就需要重新把源代码编译为中间代码(间代码(MSIL)。)。2.基础类库(基础类库(BaseClassLibrary).NET框架为开发人员提供了统一、面向对象、框架为开发人员提供了统一、面向对象、层次化的、可扩展的类库集(层次化的、可扩展的类库集(API)。)。.NET类库具有类库具有更大的跨语言兼容性、错误处理、调式功能。更大的跨语言兼容性、错误处理、调式功能。3.ASP.NET、VB.NET、C#等语言运行库等语言运行库图略(课本图略(课本2页)。页)。ASP.NET简介简介2000年年6月月22日微软正式推出日微软正式推出ASP.NET这个名称,这个名称,它是它是ASP的升级版,目前最新的版本是的升级版,目前最新的版本是3.5。ASP.NET重造了重造了ASP,并融入了微软的,并融入了微软的.NET框架中框架中,建构在,建构在CLR基础上。用户可以使用基础上。用户可以使用.NET平台支持平台支持的语言来开发的语言来开发ASP.NET程序。程序。两大特点:两大特点:1.拥有与视图非常相似的拥有与视图非常相似的web控件控件2.与传统的开发方式相比,与传统的开发方式相比,ASP.NET可以采用可以采用事件驱动与用户图形接口方式进行开发。事件驱动与用户图形接口方式进行开发。ASP.NET运行环境:运行环境:要正确运行要正确运行ASP.NET,应在计算机上安装如下,应在计算机上安装如下软件:软件:1.IIS5.x或更高版本或更高版本2.NETFramework2.0(.NET框架)框架)1.2面向对象的基本概念面向对象的基本概念对象和对象类对象和对象类:对象是代码和数据的组合,可以作为一个单位来处理。对象可以是应用程序的一部分,比如可以是控件或窗体。整个应用程序也是一个对象。VB中的每个对象都是用类定义的。用饼干模子和饼干之间的关系作比,就会明白对象和它的类之间的关系。饼干模子是类。它确定了每块饼干的特征,比如大小和形状。用类创建对象,对象就是饼干。类是面向对象程序设计的核心技术,可以理解成一种定义了对象行为和外观的模板;把对象看作是类的原原本本的复制品。属性属性属性是对对象特性的描述,VB为每一类对象都规定了若干属性,设计中可以改变具体对象的属性值。比如窗体的背景颜色、高度与宽度。对象名对象名属性名属性名事件(事件(Event)事件是发生在对象上的动作,事件是预先定义好的并针对对象的特定动作。对象对外界的动作进行识别和响应,相应的事件被激活。事件的发生不是随意的,由用户或系统激活,某些事件仅发生在某些对象上。方法(方法(Method)方法指的是控制对象动作行为的方式。它是对象本身内含的函数或过程,它也是一个动作,是一个简单的不必知道细节的无法改变的事件,但不称作事件;同样,方法也不是随意的,一些对象有一些特定的方法。在VB里方法的调用形式是:对象名方法名对象名方法名属性、方法和事件之间的关系属性、方法和事件之间的关系对象具有属性、方法和事件。属性是描述对象的数据;方法告诉对象应做的事情;事件是对象所产生的事情,事件发生时可以编写代码进行处理。窗体和控件是具有自己的属性、方法和事件的对象。可以把属性看作一个对象的性质,把方法看作对象的动作,把事件看作对象的响应。1.3开发开发ASP.NET程序的一般步骤程序的一般步骤1创建程序的用户界面2设置界面上各个对象的属性3编写对象响应事件的程序代码4保存工程5测试应用程序,排除错误6创建可执行程序事件驱动模型:事件驱动模型:在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。从第一行代码执行程序并按应用程序中预定的路径执行,必要时调用过程。在事件驱动的应用程序中,代码不是按照预定的路径执行,而是在响应不同的事件时执行不同的代码片段。事件可以由用户操作触发、也可以由来自操作系统或其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序决定了代码执行的顺序,因此应用程序每次运行时所经过的代码的路径都是不同的。创建ASP.NET应用程序第二章第二章基本语法基本语法第一节:第一节:C#语言简介语言简介第二节:第二节:C#数据类型数据类型第三节:常量与变量第三节:常量与变量第四节:运算符号第四节:运算符号第五节:流程控制第五节:流程控制2.1C#语言简介语言简介两大语法编程体系:两大语法编程体系:1.以以C语言为基础语法体系:灵活、强大、严禁,语言为基础语法体系:灵活、强大、严禁,但比较复杂,入门较难。但比较复杂,入门较难。2.以以Bisic为基础的语法体系:通俗、易懂,适合为基础的语法体系:通俗、易懂,适合初学者入门,但缺乏严禁的结构和强大的功能。初学者入门,但缺乏严禁的结构和强大的功能。C#简介简介是微软专门为是微软专门为.NET开发的一种新语言,它源于开发的一种新语言,它源于C/C+,同时吸取了同时吸取了Java、Delphi、VisualBisic等语言等语言优点。优点。由于由于C#是专门为是专门为.NET开发的语言,所以它本身开发的语言,所以它本身没有提供类库,而是依靠没有提供类库,而是依靠.NET框架提供的强大类库,框架提供的强大类库,同时一些类型安全检查、结构化异常处理等功能都交同时一些类型安全检查、结构化异常处理等功能都交给了给了CLR处理。处理。2.2C#数据类型数据类型C#是一种强类型编程语言,这就要求用户在声明变量是一种强类型编程语言,这就要求用户在声明变量时一定要指定它的数据类型,编译器可以根据它的数时一定要指定它的数据类型,编译器可以根据它的数据类型为它分配内存空间。据类型为它分配内存空间。C#中的两大数据类型:中的两大数据类型:1.值类型值类型2.引用类型(识记)引用类型(识记)值类型:值类型:int、float、double、bool、decimal引用类型:引用类型:object、string、delegate、数组、类、数组、类2.3常量与变量常量与变量常量:常量:在程序执行期间固定不变的值,方便了开发人员在程序执行期间固定不变的值,方便了开发人员的代码编写,提高了代码的运行效率。的代码编写,提高了代码的运行效率。声明格式如下:声明格式如下:constdataTypeconstantName;声明常量时必须使用关键字声明常量时必须使用关键字const,dataType表示数据表示数据类型,类型,constantName表示常量的名字表示常量的名字变量:变量:在程序执行期间可变的值在程序执行期间可变的值声明格式如下声明格式如下dataTypevariableName;dataType是变量类型,是变量类型,ariableName是变量的名称,是变量的名称,C#变量的声明不需要专门的关键字如:变量的声明不需要专门的关键字如:dimC#语言对于大小写非常敏感,字母大小写的不同会被语言对于大小写非常敏感,字母大小写的不同会被认为不同的意思,因此命名变量时应遵循以下规则:认为不同的意思,因此命名变量时应遵循以下规则:1.变量名必须以字母或下划线开头。变量名必须以字母或下划线开头。2.变量名中不能包含空格、标点符号、运算符等变量名中不能包含空格、标点符号、运算符等其他符号。其他符号。3.变量名不能与变量名不能与C#关键字冲突。(关键字参照课关键字冲突。(关键字参照课本本77页)页)友好提示:友好提示:给变量命名一定要养成一个良好的习惯给变量命名一定要养成一个良好的习惯2.4运算符号运算符号2.4.1算术运算符:算术运算符:+加加-减减*乘乘/除除%取模取模(取余取余)2.4.2关系运算符关系运算符:=等于等于小于小于大于大于=大于等于大于等于!=不等于不等于2.4.3逻辑运算符逻辑运算符:!逻辑非逻辑非&逻辑与逻辑与|逻辑或逻辑或2.4.4三元运算符三元运算符三元运算符三元运算符?:实际上实际上if条件结构的缩写形式条件结构的缩写形式condition?true_value:false_value其中其中condition表示布尔型表达式表示布尔型表达式,如果表达式为如果表达式为真真,则返回则返回true_value,否则返回否则返回false_value举例举例:略略2.5流程控制流程控制if条件语句条件语句swich(expression)分支语句分支语句2.5.2循环结构循环结构2.5.2循环结构循环结构for语句循环语句循环do语句循环语句循环while循环的语句循环的语句foreach循环语句循环语句第三章第三章基本控件基本控件第一节:服务器控件简介第一节:服务器控件简介第二节:服务器控件的分类第二节:服务器控件的分类第三节:第三节:HTML服务器控件服务器控件第四节:第四节:Web服务器控件服务器控件第五节:验证控件第五节:验证控件3.1服务器控件简介服务器控件简介什么是服务器控件什么是服务器控件?由由html元素升级而来元素升级而来,在服务器端执行的视图网在服务器端执行的视图网页元素页元素(控件控件),服务器控件被执行时服务器控件被执行时,首先在服务器端被首先在服务器端被编译编译,然后将编译得到的然后将编译得到的HTML代码一次性发送到客代码一次性发送到客户端浏览器中户端浏览器中,在这个过程中在这个过程中,代码发生了很大的变化代码发生了很大的变化,也就是说用服务器控件生成的文件被发送到客户端时,也就是说用服务器控件生成的文件被发送到客户端时,已经面目全非了已经面目全非了3.2服务器控件分类服务器控件分类ASP.NET控件可分为两大类控件可分为两大类1.HTML服务器控件服务器控件HTML服务器控件实际上时服务器控件实际上时HTML元素的元素的可编程版本,基本上与可编程版本,基本上与HTML元素保持这对应关系元素保持这对应关系在默认情况下,服务器无法直接调用和控制在默认情况下,服务器无法直接调用和控制HTML元元素,这些元素被视为传递给浏览器的静态内容,但是素,这些元素被视为传递给浏览器的静态内容,但是可以将可以将HTML元素转化为元素转化为HTML服务器控件,就可以服务器控件,就可以在服务器端动态控制在服务器端动态控制HTML服务器控件服务器控件2.Web服务器控件服务器控件Web服务器控件时服务器控件时.NET针对针对Web编程开编程开发的另一套全新的解决方案,它具有更前大的功能,发的另一套全新的解决方案,它具有更前大的功能,完全与编程进行融合。完全与编程进行融合。在编程中如何选择合适的控件呢?应遵循一下原则在编程中如何选择合适的控件呢?应遵循一下原则1.如果仅显示和处理静态内容,选择如果仅显示和处理静态内容,选择HTML元元素,可以节省大量的内存资源,减轻服务器的编译量素,可以节省大量的内存资源,减轻服务器的编译量2.当要转换当要转换asp程序为程序为程序时,可以使用程序时,可以使用html服务器控件,因为从元素转换为服务器控件,因为从元素转换为HTML服务器控服务器控件,比较简单,只要在标签中添加件,比较简单,只要在标签中添加runat=“server”属属性即可。性即可。3.当要新建当要新建ASP.NET应用程序时,建议使用应用程序时,建议使用Web服务器控件。服务器控件。3.3HTML服务器控件服务器控件HTML服务器控件这里制作简单介绍服务器控件这里制作简单介绍3.3Web服务器控件服务器控件Web服务器控件本质上是由服务器控件本质上是由System.Web.UI.WebControls类继承而来,因此他们由很多相同的属性和方法。类继承而来,因此他们由很多相同的属性和方法。3.3.1Image控件控件图像控件(图像控件(ImageUrl)3.3.2HyperLink控件控件是一个超级连接控件(是一个超级连接控件(NavigateUrl)3.3.3Lable控件控件是一个标签控件是一个标签控件3.3.4Literal是一个文本控件,用于在是一个文本控件,用于在web页面上啊显示静态文页面上啊显示静态文本本3.3.5Panel控件控件3.3.5Panel控件控件是一个容器控件,用于在是一个容器控件,用于在web页面上将一组控件做页面上将一组控件做为一个整体进行统一管理为一个整体进行统一管理3.3.6PalceHolder控件控件是一个容器控件,用于在是一个容器控件,用于在Web页面上预留一个位置,页面上预留一个位置,以便在运行时动态放置其他控件以便在运行时动态放置其他控件3.3.7TextBox控件控件是一个文本框控件,可以用来输入单行文本、密码是一个文本框控件,可以用来输入单行文本、密码和多行文本和多行文本AutoPostBack属性和属性和OnTextChanged事件必须掌握事件必须掌握的内容的内容3.3.8RadioButton,CheckBox单选按钮与复选按钮单选按钮与复选按钮3.3.9RadioButtonList、CheckBoxList、DropDownList、ListBox3.4验证控件验证控件1.RequiredFieldValidator:用于验证收入表单验证值:用于验证收入表单验证值2.CompareValidator:按设定表较两个输入值是否相按设定表较两个输入值是否相同同3.RangeValidator:验证输入的值是否在制定的范验证输入的值是否在制定的范围围4.RegularExpressionValidator:正则表达式验证控正则表达式验证控件件5.ValidationSummary:总结验证结果总结验证结果第四章第四章ADO.NET应用基础应用基础第一节:数据库基础(第一节:数据库基础(SQLServer)第二节:第二节:ADO.NET简介简介第三节:第三节:ADO.NET数据库驱动程序数据库驱动程序第四节:第四节:Connection、Command、DataReader、DataAdapter、DataSet第五节:第五节:CheckBoxList、ListBox、RadioButtonList,DataGrid、DataList,GridView4.1:数据库基础(:数据库基础(SQLServer)SQLServer数据库基础:数据库基础:1.SQLServer服务的停止服务的停止关闭关闭2.数据库用户及新建用户数据库用户及新建用户3.数据库的访问方式数据库的访问方式4.数据库的存储位置、建库、建表,及字段设置数据库的存储位置、建库、建表,及字段设置4.2:ADO.NET简介简介ADO.NET简介:简介:ADO.NET是是.NET的一个关于数据访问的子系的一个关于数据访问的子系统,统,ADO.NET是一个类库,里面包含很多类,利用是一个类库,里面包含很多类,利用这些类提供的对象,能够完成与数据库的连接,从数这些类提供的对象,能够完成与数据库的连接,从数据库中查询制定的记录,向数据库中插入记录,更新据库中查询制定的记录,向数据库中插入记录,更新和删除理路等操作和删除理路等操作五个主要对象:五个主要对象:1.Connection2.Command3.DataReader4.DataSet5.DataAdapter4.3:ADO.NET数据库驱动程序数据库驱动程序1.SQLServer.NET数据驱动程序数据驱动程序2.OleDb.NET数据驱动程序数据驱动程序3.OracleDb.NET数据驱动程序数据驱动程序4.ODBC.NET数据驱动程序数据驱动程序4.4:ADO.NET五大对象五大对象1.Connection:建立与数据库的连接:建立与数据库的连接相关属性:相关属性:1.ConnectionString:获取或设置数据库连接字:获取或设置数据库连接字符串符串2.ConnectionTimeout:获取数据库尝试连接的秒获取数据库尝试连接的秒数。数。3.DataSource:获取数据库所在的位置服务器名:获取数据库所在的位置服务器名称或文件夹名称。称或文件夹名称。4.DataBase:获取或指定要连接的数据库名称:获取或指定要连接的数据库名称5.state:获取当前的连接状态,包括打开或关闭,:获取当前的连接状态,包括打开或关闭,默认为关闭。默认为关闭。6.Provider:获取数据库具体驱动程序:获取数据库具体驱动程序相关方法:相关方法:1.Open()()打开数据库连接打开数据库连接2.Close()关闭数据库连接()关闭数据库连接2.Connection:执行数据库操作命令:执行数据库操作命令常用属性:常用属性:1.CommandText:获取或设置要执行的:获取或设置要执行的SQL语语句和存储过程。句和存储过程。2.CommandTimeout:获取或设置执行命令需:获取或设置执行命令需要等待的时间要等待的时间3.CommandType:获取或设置:获取或设置CommandText命命令类型令类型4.Connection:获取或设置使用的连接对象:获取或设置使用的连接对象5.parameters:获取该命令的参数集合:获取该命令的参数集合6.Transaction:获取或设置执行命令的事物,:获取或设置执行命令的事物,该事务必须与命令连接到相同的事物该事务必须与命令连接到相同的事物常用方法:常用方法:1.ExecuteReader:执行一个查询,并返回查询:执行一个查询,并返回查询数据,该数据只读不可写。数据,该数据只读不可写。2.ExecuteScalar:执行一个查询,并返回查询:执行一个查询,并返回查询数据的第一行第一列处的值数据的第一行第一列处的值3.ExecuteNonQuery:执行一个非查询命令并返执行一个非查询命令并返回受影响的行数。回受影响的行数。3.DataReader:以向前、只读的方式获取数据库中的:以向前、只读的方式获取数据库中的数据数据相关属性:相关属性:1.FieldCount:2.IsClosed获取当前行的列数获取当前行的列数3.RecordsAffected:受影响的行数:受影响的行数4.HasRows:判断是否有一行或多行存在:判断是否有一行或多行存在常用方法:常用方法:1.Read:读取下一行数据,并返回是否存在该:读取下一行数据,并返回是否存在该行记录行记录2.NextResult:将指针移动到下一个结果集:将指针移动到下一个结果集3.Close:关闭:关闭DataReader对象对象4.DataAdapter:充当数据库与:充当数据库与DataSet之间的桥梁之间的桥梁常用属性:常用属性:1.SelectCommand:2.InsertCommand3.UpdateCommand4.DeleteCommand常用方法:常用方法:1.Fill2.Update()()5.DataSet:是:是ADO.NET中最复杂,最强大的一个对象中最复杂,最强大的一个对象命名空间:命名空间:System.Data4.5:数据控件的应用:数据控件的应用1.CheckBoxList2.RadioButtonList3.ListBox4.DropDownList5.DataGrid6.DataList7.GridView目标:数据的绑定及相关控件的分页,数据处理目标:数据的绑定及相关控件的分页,数据处理第五章第五章论坛案例分析论坛案例分析第一天:第一天:1.案例功能分析案例功能分析2.数据库设计及模块设计数据库设计及模块设计3.项目进度书设计项目进度书设计4.登陆模块实现登陆模块实现第二天:第二天:1.后台管理后台管理个人信息维护,注销用户个人信息维护,注销用户2.后台管理后台管理-会员管理会员管理3.发帖管理(设置精华帖,置顶)发帖管理(设置精华帖,置顶)4.回帖管理回帖管理第三天:第三天:1.投诉管理投诉管理2.母版页设置母版页设置3.首页设置首页设置4.会员首页会员首页第四天:第四天:1.回帖设置回帖设置2.举报实现(扩展引用实现)举报实现(扩展引用实现)3.案例不足分析及案例总结案例不足分析及案例总结第六章第六章类的初步知识类的初步知识第一节:类的三大特点第一节:类的三大特点第二节:类的定义第二节:类的定义(属性及方法属性及方法)第三节:实体类第三节:实体类留言板的实现(三层架构)留言板的实现(三层架构)6.1:类的三大特点:类的三大特点类的三大特点:封装、继承、多态类的三大特点:封装、继承、多态1.封装:封装:把数据成员与函数成员封装在一个类中,然后把数据成员与函数成员封装在一个类中,然后通过类提供的属性与方法供调用者使用,隐藏了调用通过类提供的属性与方法供调用者使用,隐藏了调用者不需要关心的信息者不需要关心的信息.2.继承继承是指类能从它的父类中继承除构造函数以外的是指类能从它的父类中继承除构造函数以外的所有的定义和功能。所有的定义和功能。3.多态:多态:是指类为名称相同的方法提供不同实现方式的是指类为名称相同的方法提供不同实现方式的能力。能力。6.2:类的定义:类的定义类的声明格式类的声明格式类的声明格式类的声明格式附加属性附加属性 类修饰符类修饰符 classclass类名标识类名标识 类基类基 类主类主体体附加属性:附加声明信息附加属性:附加声明信息类修饰符:类修饰符:newpublicprotectedinternalprivatenewpublicprotectedinternalprivateabstract,sealedabstract,sealed相同的修饰符号只能出现一次相同的修饰符号只能出现一次类基:定义了类基:定义了 该类的直接基类和该类实现的接该类的直接基类和该类实现的接口。口。类主体:用花括号括起来的各种类成员的声明。类主体:用花括号括起来的各种类成员的声明。6.3:实体类:实体类实体类是在面向对象的编程中,给类的相关方实体类是在面向对象的编程中,给类的相关方法提供数据集合的类,即根据面向对象分析,所涉及法提供数据集合的类,即根据面向对象分析,所涉及到的属性的集合。到的属性的集合。如:实现某个数据表的添加,可以将实体类作如:实现某个数据表的添加,可以将实体类作为参数传递过去,使程序的易读性大大提高为参数传递过去,使程序的易读性大大提高6.4:留言板:留言板三层架构实现留言版三层架构实现留言版1.数据存储层:持久化存储数据数据存储层:持久化存储数据2.业务逻辑层:实现数据操作功能业务逻辑层:实现数据操作功能3.表现层:调用业务逻辑层表现层:调用业务逻辑层第七章第七章项目实践项目实践旅游管理系统旅游管理系统/物流管理系统物流管理系统