3 系统结构图
- 格式:doc
- 大小:599.00 KB
- 文档页数:15
三层架构详解一.三层架构图二.系统各层次职责1.UI(User Interface)层的职责是数据的展现和采集,数据采集的结果通常以Entity object提交给BL层处理。
Service Interface侧层用于将业务或数据资源发布为服务(如WebServices)。
2.BL(Business Logic)层的职责是按预定的业务逻辑处理UI层提交的请求。
(1)Business Function 子层负责基本业务功能的实现。
(2)Business Flow 子层负责将Business Function子层提供的多个基本业务功能组织成一个完整的业务流。
(Transaction只能在Business Flow 子层开启。
)3.ResourceAccess层的职责是提供全面的资源访问功能支持,并向上层屏蔽资源的来源。
(1)BEM(Business Entity Manager)子层采用DataAccess子层和ServiceAccess子层来提供业务需要的基础数据/资源访问能力。
(2)DataAccess子层负责从数据库中存取资源,并向BEM子层屏蔽所有的SQL语句以及数据库类型差异。
DB Adapter子层负责屏蔽数据库类型的差异。
ORM子层负责提供对象-关系映射的功能。
Relation子层提供ORM无法完成的基于关系(Relation)的数据访问功能。
(3)ServiceAccess子层用于以SOA的方式从外部系统获取资源。
注:Service Entrance用于简化对Service的访问,它相当于Service的代理,客户直接使用Service Entrance就可以访问系统发布的服务。
Service Entrance为特定的平台(如Java、.Net)提供强类型的接口,内部可能隐藏了复杂的参数类型转换。
(4)ConfigAccess子层用于从配置文件中获取配置object或将配置object保存倒配置文件。
三级配电系统结构型式示意图(总18页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除建筑工程施工用电标准规范施工现场临时用电安全技术规范JGJ46-2005;建设工程施工现场供用电安全规范GB50194-93手持式电动工具的管理体制、使用、检查和维修安全技术规范GB 3787-2006施工现场临时用电安全技术在《施工现场临时用电安全技术规范》JGJ46-2005中(以下简称“规范”),以强制性条文的形式明确指出:建筑施工现场临时用电工程专用的电源中性点直接接地的220/380 V三相四线制低压电力系统,必须符合下列规定:1、采用三级配电系统2、采用TN-S接零保护系统3、采用二级漏电保护系统(有些地方采用三级漏电保护方式如武汉)。
以上三项基本技术原则,是建造施工现场用电工程的主要安全技术依据,也是保障用电安全,防止触电和电气火灾事故的主要技术措施。
第一节施工现场临时用电三级配电系统一、系统的基本结构图8-1 三级配电系统结构型式示意图二、系统的设置规则1、分级分路(1)从一级总配电箱(配电柜)向二级分配电箱配电分路。
(2)从二级分配电箱向三级开关箱配电分路。
如分配电箱所管辖的设备台数较多,可在其下端增设分配电箱。
不得在分配电箱的一个回路上接2个以上的开关箱。
图8-2 二级配电中有多级分配电箱时结构形式示意图(3)从三级开关箱向用电设备配电实行所谓“一机一闸”制,一台用电设备必须有其独立专用的开关箱。
(4)对于单台总功率较大的设备,如塔吊、施工电梯、对焊机等,为保证其能正常工作,不影响相邻的设备,由总配电箱(柜)直接向其专用的开关箱供电。
2、动照分设动力开关箱与照明开关箱必须分箱设置,不存在共箱分路设置问题。
3、压缩配电间距(1)分配电箱应设在用电设备或负荷相对集中的场所。
(2)分配电箱与开关箱的距离不得超过30m。
(3)开关箱与其供电的固定式用电设备的水平距离不宜超过3m。
系统组成示意图 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 整个系统通过对用户的红外感应捕捉,获取观众在投影视窗上的精确位置,并转换为计算机内部的坐标和控制指令,对多媒体内容进行相应的操作,即可实现用户在投影视窗上进行内容的选择和交互。
跟踪精度可以达到像素级别。
对于投影区域由两个或两个以上的投影仪拼接而成的展项,通过软件形式解决多个投影区域间的图像拼接、融合问题。
互动投影的系统安装
以使用投影机成像设备为例,第一与第三部分设备均安装在天花板下,安装时注意预留足够的位置,一般预留0.3~0.5立方米已经足够,安装位置需提供良好的通风散热条件。
第二部分设备安装在特定的机房中。
互动投影的系统调试
一、以使用投影机成像设备为例,虚拟投影互动系统现场的安装调试过程与投影机吊装调试技术接近,需要工程技术人员把投影图像准确投射到制定区域中;二、不同的捕捉设备有专门的调试技术要求。
互动投影的系统维护
一、定期检查捕捉设备,捕捉设备是虚拟互动系统的第一环节,其工作状态直接影像整个系统运作。
检查内容包括电源,安装位置有否易位,清洁保养等;
二、定期对投影设备互动服务器以及地砖进行保洁清洗。
3.系统构成及功能介绍3. 1、PSA空分制氮系统的组成一个完整的PSA空分制氮系统应包括:A、空气压缩机(佳脉提供);B、压缩空气净化组件(佳脉提供);C、PSA空分制氮装置(佳脉提供);D、氮气贮存罐(佳脉提供)系统流程框图如下:图3-1: 系统流程框图3. 2、系统部件介绍3. 2.1、空气压缩机作用提供PSA空分制氮装置所需的原料;提供PSA空分制氮装置所需的动力。
功能指标对原料压缩空气进行深度加工,保证PSA装置的使用寿命,包括:●除油:使碳分子筛避免因油污染而“中毒”失效;●除水:降低碳分子筛的吸附“负荷”;●除尘:延长系统部件(如程控阀等)的寿命。
●指标:含油量≤0.003mg/m3、露点≤-20℃、含尘粒度≤0.01μ。
一级过滤器冷冻干燥机二级过滤器三级过滤器活性碳除油器图3-2:压缩空气净化流程部件功能一级过滤器:去除管道中3μ以上的固体颗粒;压缩空气中的气液(油水)初步分离;保护下游设备。
冷冻干燥机:使压缩空气中的水汽、油汽凝结并分离出来。
二级过滤器:分离压缩空气中的液滴及油雾;去除1μ以上的固体颗粒。
三级过滤器:分离压缩空气中的油雾,使含油量≤0.01mg/m3;去除0.01μ以上的固体颗粒。
活性碳除油器:确保在过滤器失效时避免碳分子筛被油污染。
分离压缩空气中的油雾,使含油量≤0.003mg/m3。
注意!请按规定及时更换过滤器的滤芯、维护冷冻式干燥机!请在发现过滤器失效或损坏时,及时更换过滤器、滤芯,否则将会导致碳分子筛因“油中毒”而失效!组成活性碳除油器 氧氮分离系统 氮气缓冲罐 排气消音器 检测仪器仪表功能确保在过滤器失效时避免碳分子筛被油污染。
注释!①由于活性碳有强烈的吸油功能,当前级提供的压缩空气油含量过高时,活性碳除油器将发挥除油作用,避免吸附器内的碳分子筛被油污染。
在前级提供的压缩空气油含量正常时,活性碳除油器的处于备用状态。
注意!②尽管活性碳除油器前级提供的压缩空气油含量一直处于正常状态,但当累计运行时间达到一年时,也必须更换活性碳!③前级油含量过高主要由空压机排油量高、过滤器滤芯失效等造成。
3 系统结构图2 系统主窗体的创建1)、创建工程文件启动Visual Basic 6.0,新建一个工程文件,为工程添加必要的引用对象和部件库。
单击【工程】→【引用】菜单项,打开“引用”对话框,在“可用引用”列表框中勾选“Microsoft ActiveX Data Objects 2.5 Library”前面的方框,然后单击【确定】按钮,这样在工程中就可以使用ADO对象库了。
各台机器上的配置可能略有不同,如果没有2.5版本对象库,也可以选择版本稍低的对象库。
引用对话框界面如下图所示,其中前4项是系统创建工程时自动添加的。
系统中需要使用表格来显示数据,为此需要给工程添加表格部件。
单击【工程】→【部件】菜单项,打开“部件”对话框,在“控件”选项卡的列表框中勾选“Microsoft DataGrid Control 6.0 (OLEDB)”前面的方框,然后单击【确定】按钮,相应的控件就会被添加到工具箱上。
控件对话框和添加完成以后的工具箱窗口如图a、b所示。
本章用到的数据表格控件和上一章的表格控件不同,请体会两者的区别。
保存工程,将窗体文件命名为Main,将工程文件命名为教学管理系统。
数据库文件最好保存在相同的文件夹下。
DataGrid2)、主窗体的界面设计为操作方便,采用单文档界面(SDI)。
打开主窗体(文件名为Main),设置窗体的部分属性。
属性名属性值说明名称Main 主窗体的名称Caption 课程管理系统主窗体标题BackColor &H8000000C& 主窗体背景颜色WindowState 2 - Maximized 主窗体启动后最大化单击【工具】→【菜单编辑器】菜单项,打开菜单编辑器设计窗体的主菜单。
为每个菜单项取一个比较有意义的名称。
菜单项结构菜单项名称说明课程管理(&C) mntCourse 一级菜单课程库管理(&M) mntCourseMaint 二级菜单项课程安排(&A) mntCourseArrange 二级菜单项课程安排查询(&Q) mntCourseQeury 二级菜单项班级课表(&T) mntCourseClass 二级菜单项成绩管理(&S) mntScore 一级菜单成绩库管理(&M) mntScoreManage 二级菜单项- mntScoreSP 二级菜单项,分隔线学生成绩查询(&Q) mntScoreStudent 二级菜单项班级成绩分析(&A) mntScoreClass 二级菜单项系统维护(&M) mntSystem 一级菜单用户管理(&U) mntSysUsers 二级菜单项- mntSysSP1 二级菜单项,分隔线关于(&A) mntSysAbout 二级菜单项- mntSysSP2 二级菜单项,分隔线退出系统(&Q) mntSysQuit 二级菜单项3)、部分程序的实现主窗体中各菜单项的功能在后面介绍,这里先实现退出功能,单击主窗体的“退出系统”菜单项,系统自动生成相应事件的过程框架,并切换到代码窗口,添加代码,完整的过程事件代码如下。
Private Sub mntSysQuit_Click()EndEnd Sub为了提高系统的安全性,用户必须通过登录认证才能使用本系统。
程序运行后首先显示的是登录窗体,用户输入正确的用户名和口令才能启动主窗体。
为了实现这个功能,一种可选方案是将登录窗体设为启动模块,另一种方案是将启动模块设置为Main过程,在main过程中显示登录模块进行登录认证,根据认证结果确定是否显示主窗体。
本章采用第二种方案。
单击【工程】→【添加模块】,为工程添加一个新模块,将“模块名称”属性设置为Main,并保存Main.bas。
5 课程管理模块课程管理模块实现课程信息的输入、浏览、修改、删除等功能。
本节内容包括如下几个方面:模块分析;窗体的创建;模块用户界面的设计;模块功能的实现。
一、模块功能分析实现思路课程信息保存在Course数据表中,通过ADO的Recordset对象从数据表中取出记录,并通过DataGrid表格将数据显示在数据表上,实现数据的浏览。
由于是单表操作,可以通过Recordset 对象的AddNew、Delete、Update等方法可以实现添加、删除和修改功能。
二、窗体的设计单击【工程】→【添加窗体】,给工程添加一个新窗体,窗体的主要属性设置如下表所示:属性名属性值说明窗体名称名称frmCourseManageCaption 课程管理窗体标题BorderStyle 1 - Fixed Single 窗体为固定边界,禁止用户改变大小StartUpPositio n1 - 所有者中心窗体启动后居于主窗体中央三、模块用户界面的设计在窗体上添加若干标签、文本框、按钮、组合框,并添加一个日期选择框、一个数据表格控件、两个数据控件。
窗体布局如下图所示:其中dtpBeginDate 是日期选择框。
数据表格dbgClass 的设置可以参考“院系设置模块”中对dbgDepart 的操作。
三、模块用户界面的设计4个导航按钮(cmdFirst 、cmdPrevious 、cmdNext 、cmdLast )的字体比较特殊,采用Webdings 字体在按钮上显示四种箭头图案。
dgDepart 是数据表格控件(DataGrid ),该控件在工具箱窗口的图标为,如果看不到该控件,请前面所述相关操作。
在该控件上单击右键,选择【属性】菜单项,打开属性对话框。
在“通用”选项卡中设置表格标题,去掉AllowUpdate 选项,如图13-12所示。
去掉AllowUpdate 选项的目的是禁止用户通过数据表格直接修改数据,从而通过程序更好地控制数据的有效性和数据库的完整性,其他各项的设置可以根据需要设置。
和上一章不同,本章不需要将表格和数据控件绑定,表格中的数据显示用代码控制。
四、模块功能的实现窗体卸载过程在窗体的卸载过程中完成以下功能: 断开数据表格和数据集的绑定; 关闭打开的数据集;断开模块和数据库的连接; 释放ADO 对象实例。
代码如下:dgCoursecmdPrevious cmdNext cmdLast cmdFirst cmdQuitcmdSave cmdAddcmdModify cmdDeletetxtDesctxtCourseID txtCourseNametxtCredit txtPeriodtxtTeacherPrivate Sub Form_Unload(Cancel As Integer)Set dgCourse.DataSource = Nothingrs.CloseConn.CloseSet rs = NothingSet Conn = NothingEnd Sub数据浏览功能的实现通过四个导航按钮实现对数据库的浏览。
代码如下:Private Sub cmdFirst_Click()If rs.RecordCount > 0 Then rs.MoveFirstEnd SubPrivate Sub cmdLast_Click()If rs.RecordCount > 0 Then rs.MoveLastEnd SubPrivate Sub cmdNext_Click()If Not rs.EOF Then rs.MoveNextIf rs.EOF And rs.RecordCount > 0 Thenrs.MoveLastEnd IfEnd SubPrivate Sub cmdPrevious_Click()If Not rs.BOF Then rs.MovePreviousIf rs.BOF And rs.RecordCount > 0 Thenrs.MoveFirstEnd IfEnd Sub记录添加功能的实现界面上的文本框没有和数据集绑定,在里面输入数据并不影响数据集里面的记录。
当单击【添加】按钮时,利用Recordset对象的AddNew方法将文本框中的数据加到数据集中。
添加前先对数据进行规格化处理,然后验证数据的合法性,并利用另一个Recordset对象检查课程编号的合法性。
使用AddNew方法添加记录后,数据只保存在缓冲区中,需要调用UpdateBatch(或者Update)方法将数据写到数据库中。
注意,rsValid使用完毕后应该将其释放。
数据修改/保存功能的实现当用户按下【修改】按钮时,请数据集中的字段信息取出放到文本框中供用户修改,使【保存】按钮能够被用户单击,以保存修改后的数据。
Credit和Period是数值型字段,需要进行类型转化。
【保存】按钮功能的实现和【添加】按钮比较相似,不同的是如果课程编号被修改,为了保持数据库的完整性,其他数据表(包括选课数据表、成绩数据表)中的课程编号也应作相应的修改,也就是数据的“级联更新”。
级联更新通过ADO的Command对象来实现,利用该对象执行一个更新数据的SQL语句实现对表中多条数据的一次性更新。
使用Command对象时,注意Command 对象属性的设置。
当用户单击导航按钮移动数据集指针后,为了防止单击【保存】按钮错误修改数据,应禁止【保存】按钮。
在代码编写窗口对象组合框中选择“rs”,从事件组合框中选择“MoveComplete”事件。
5.2 课程安排模块课程安排模块实现各班级对课程的选择、上课教室的、上课时间的安排以及管理。
本节内容包括如下几个方面:模块分析;窗体的创建;模块用户界面的设计;模块功能的实现。
一、模块功能分析实现思路可以列出所有班级和课程供用户选择安排,已经安排好的课程用表格显示出来供用户修改、删除。
数据的显示通过ADO的Recordset对象实现,数据的添加、修改、删除通过ADO的Command 对象完成。
二、窗体的设计在工程中新建一个窗体,将窗体保存为FormCourseArrange.frm。
窗体的主要属性设置如下表所示:属性名属性值说明名称CourseArrange 窗体名称Caption 课程安排窗体标题BorderStyle 1 - Fixed Single 窗体为固定边界,禁止用户改变大小StartUpPosition 1 - 所有者中心窗体启动后居于主窗体中央三、模块用户界面的设计在窗体上添加控件,各控件的属性参照前面各节,不再赘述(其中cmbClass的Style属性设置为2 - Dropdown List)四、模块功能的实现通用变量定义通用变量的定义同课程管理模块。
在窗体加载时,需要将所有的班级编号填充到班级编号组合框中,将所有课程填充到课程列表框中,并激活班级编号组合框来初始化界面。