教师管理系统设计毕设.doc

上传人:教**** 文档编号:87906328 上传时间:2023-04-18 格式:DOC 页数:29 大小:144KB
返回 下载 相关 举报
教师管理系统设计毕设.doc_第1页
第1页 / 共29页
教师管理系统设计毕设.doc_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《教师管理系统设计毕设.doc》由会员分享,可在线阅读,更多相关《教师管理系统设计毕设.doc(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1 绪论教师信息管理系统是一所院校在各种信息管理中的一部分,对于学校管理者来说是很重要的,所以所设计的系统应该能为管理者提供教师的基本信息管理手段和一些方便的查询方式。在过去,计算机不是很普及和计算机应用性不高的年代,人们使用人工的方法管理各式各样的档案,这种管理方式存在着很多缺点:效率底,保密性差,会产生大量的文件和数据,给查找,更新和维护信息都带来了相当大的困难。随着科学技术的不断发展,计算机科学日益成熟,其强大的计算功能已经被人们深刻地认识到,计算机发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对教师信息进行管理,具有人工方式所无法比拟的优越性。如,查找方便,可靠性高,存储容

2、量大,保密性好,寿命长,成本低,维护十分方便等,这些优点能够极大得提高工作的效率,这也是学校的科学化,现代化,正规化的一点体现。1.1 毕业设计主要任务1用户登录 2 修改个人密码3 个人信息维护4 教师信息管理5 教师信息查询6 教师工资管理7教师工资查询8安全退出1.2 课题的意义教师管理系统是以教师管理为主。作为一个管理信息系统,其服务的对象是双方面的,学校和教师。教师系统力求给用户方便快捷的途径去管理这些繁琐的数据。为教师管理带来方便,也为学校带来方便、实现信息化。根据可行性研究的结果和客户的要求,分析现有情况及问题,采用两级管理结构。1.3 论文的工作和安排本次设计的目标是:开发一个

3、网站,设计一套功能比较完善的、方便使用的在教师管理系统。本系统主要包括后台管理模块(管理员身份)和前台模块(用户身份)两大部分。在实施后能达到系统界面美观友好,操作简单易行,查询灵活方便,数据存储安全可靠,系统维护安全、方便、可靠,并能够满足实用性、先进性要求的目标。论文分为五个部分:第一章即本章绪论,简述教师管理系统这个课题的背景情况以及开发本系统的意义。第二章为需求分析,本章中明确了系统需要实现的功能,分析了系统的用例,并介绍根据系统的需求选择的开发工具和技术的概况。第三章是总体设计,详细描述了本系统中数据库的设计情况,并给出了系统总体界面的设计方案。 第四章为程序设计与编码各主要功能模块

4、的实现方法和部分关键代码,同时提供了个主要界面运行的参考图片,以更直观了解系统的实现情况。第五章是软件测试,测试系统功能实现并对测试结果进行记录分析第六章为结束语,为此次毕业设计做一个总结,总结所获得的经验和体会。2 需求分析2.1 需求调研由于软件需求在初始阶段是模糊而又不完整的,质量计划只能建立在对客户需求的大致而不确切的理解之上。因此,项目计划应该从找出含糊不确切与准确恰当的软件需求间的映射关系入手。接着建立一种概念设计。项目初始架构的建立要十分谨慎,因为它通常标定了产品模块的分割线,同时描述了这些模块所实现的功能及所有模块间的关系。这就为项目计划和项目实施提供了组织框架,因此一个低质量

5、的概念设计是不能满足要求的。2.2 可行性分析进行项目的阶段划分,确定重大的里程碑,所需相关的资源,包括人力资源、设备资源、资金资源,即所谓的人、财、物三个要素。2.2.1技术的可行性技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软、硬件能否满足需要。本系统采用B/S架构,前台使用jquery easyui开发出友好美观的人机界面,便于用户理解、操作,后台采用hibernate+spring3+springmvc3作为主题框架。数据库管理系统采用MySQL,它能够处理大量数据,同时保持数据的完整性、安全性。因此本系统的开发平台已成熟可行。硬件方面,在科技飞速发展的今天,硬件更新速度越

6、来越快,容量越来越大,可靠性越来越高,价格越来越便宜,因此硬件平台也能够满足本系统所需。2.2.2经济的可行性鉴于计算机技术发展异常迅猛,在硬件软件配置以及开发技术均以可行的情况下开发这样一个教师管理系统成本不会很高,但其可以大大提高酒店日常管理效率,也是信息交互发展的必然趋势,其必将有比较宽阔的市场,因此酒店管理系统在经济可行性上是可行的。2.3 教师管理系统需求概述2.3.1 系统目标开发一个网站,设计一套功能比较完善的、方便使用的教师管理系统。本系统主要包括后台管理模块(管理员身份)和前台模块(用户身份)两大部分。在实施后能达到系统界面美观友好,操作简单易行,查询灵活方便,数据存储安全可

7、靠,系统维护安全、方便、可靠,并能够满足实用性、先进性要求的目标。可分为以下一些主要内容(1)用户登录 (2)修改个人密码(3)个人信息维护(4)教师信息管理(5)教师信息查询(6)教师工资管理(7)教师工资查询(8)安全退出2.3.2用户类和用户特性 教师管理系统是一个基于B/S结构模式的使用户能够方便与人交流的应用系统,他的用户是广大普通人,使用者通过这个系统,登录教师管理系统,管理教师信息。描述如下:表2.1用户具体描述用户类描述使用者读者是该系统的所有用户,他们通过该系统登录自己的账户,如果并非已有用户,则可以进行注册。登录教师管理系统以后,可以得到个人信息列表,并操作系统。2.4 教

8、师管理系统需求模型2.4.1功能描述以下是主要功能的描述:(1)用户登录 (2)修改个人密码(3)个人信息维护(4)教师信息管理(5)教师信息查询(6)教师工资管理(7)教师工资查询(8)安全退出数据流图如下:注册信息用户注册信息录入教师信息登录信息结果教师管理、工资管理用户注册信息管理注册信息结果注册信息注册信息结果注册信息注册信息表图2.22.4.2使用者详细功能描述(1)用户登录 (2)修改个人密码(3)个人信息维护(4)教师信息管理(5)教师信息查询(6)教师工资管理(7)教师工资查询(8)安全退出第 21 页 共29页 3 总体设计3.1 数据库设计3.1.1 数据库设计概述数据库是

9、整个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败,本节对数据库的设计进行专门阐述。数据库是数据管理的最新技术。十多年来数据库管理系统已从专用的应用程序发展成为通用的系统软件。由于数据库具有数据结构化,最低冗余度,较高的程序与数据独立性,易于扩充,易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。因此不仅大型计算机及中小型计算机,甚至微型机都配有数据库管理系统。数据库系统的出现使信息系统从以加工数据的程序为中心转向围绕共享的数据库为中心的新阶段。这样既便于数据的集中管理,又有利于应用程序的研制和维护,提高了数据的利用性和相容性,提高了决策的可靠性。目前,数据库已经成为

10、现代信息系统不可分割的重要组成部分。数据库技术也是计算机领域中发展最快的技术之一。数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。一般人们设计数据库遵循第三范式。即:数据库表中不包含已在其他表中包含的非主关

11、键字信息。采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。整个系统所包括的信息有使用者信息,使用者理财信息,管理者信息等。可将这些信息抽象为下列系统所需要的数据项和数据结构:数据结构基本概念和术语:位、字节、字、位串、元素、数据域、物理结构、逻辑结构位(Bit):位(bit)是电子计算机中最小的数据单位。每一位的状态只能是0或1。字节(Byte):8个二进制位构成1个字节(Byte),它是存储空间的基本计量单位。1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间。字:字由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长。例如一台8

12、位机,它的1个字就等于1个字节,字长为8位。如果是一台16位机,那么,它的1个字就由2个字节构成,字长为16位。字是计算机进行数据处理和运算的单位。位串:由若干位组合起来形成位串。元素:用一个由若干位组合起来形成的一个位串表示一个数据元素,通常称这个位串为元素(Element)或节点(Node)。数据域(Data Field):当数据元素由若干数据项组成时,位串中对应于各个数据项的子位串称为数据域(Data Field)。物理结构(又称存储结构):数据结构在计算机中的表示(又称映象)。逻辑结构:结构定义中的关系描述的是数据元素之间的逻辑关系,因此又称为数据的逻辑结构。理解:1)引入位串这个词只

13、是为准确叙述元素的概念而出现,描述由若干位组合起来的称呼2)位串元素3)子位串数据域4)元素是数据元素在计算机中的表示(又称映象)5)元素或结点是基于物理结构的概念,而数据元素是基于逻辑结构的概念数据结构基本概念和术语:数据、数据元素、数据项、数据对象、数据结构、结构数据(Data):是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。数据元素(Data Element):是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。数据项(Data Item):一个数据元素可有若干个数据项组成;数据项是数据的不可分割的最小单位。数据对象(Data

14、Object):是性质相同的数据元素的集合,是数据的一个子集。数据结构(Data Structure):是相互之间存在一种或多种特定关系的数据元素的集合。结构(Structure):数据元素相互之间的关系。理解:1)数据是一种笼统的概念,既包括字符,也包括图像、声音等,就是我们平常所说的数据,如,我硬盘里的数据都不见了,这个数据的概念应该就是这里所说的数据。2)数据元素是数据的基本单位,它可细分。3)数据项是组成数据元素的各项,它也是数据的最小单位。4)数据对象是某类数据元素的集合,这类数据元素都具有共同点,比数据的范围要小。5)注意这里数据结构并不是关系的意思,而是各种存在相互关系的数据元素

15、的集合。6)结构才是关系的意思。3.2 系统总体结构设计该系统在Windows98/2000/XP/win7环境下,主要采用java语言作为开发,MySQL数据库来设计,采用b/s设计开发模式,其中通信过程采用类序列化进行发送和接受,后台处理时,配合hibernate,spring,springmvc等开源企业应用开源框架操作数据库,并用p6spy全程监控记录sql处理。开发过程与成果应符合GB/T 11457-1995软件工程术语,GB/T 8567-1988计算机软件产品开发文件编制指南等。3.2.1 教师管理系统总体结构图绘制系统结构图的过程,实际上就是对系统功能模块进行分解设计的过程,

16、即合理地将数据流程图转变为所需要的系统结构图。系统结构图将会使读者和用户能直观的了解系统的结构模式,理解系统的各个功能的结构,能很好地方便用户使用和理解整个系统。3.2.2 用户模块功能(1)用户登录 (2)修改个人密码(3)个人信息维护(4)教师信息管理(5)教师信息查询(6)教师工资管理(7)教师工资查询(8)安全退出4 程序设计与编码4.1 开发平台与工具4.1.1 java平台Java平台即由Java编程语言所撰写的软件赖以执行的平台,是Java软件和电脑系统的中介,最初被设计用在Applet等桌面端程式,不过后来逐渐转移到伺服端的运用由Java虚拟机和Java核心类所构成。它为纯Ja

17、va程序提供了统一的编程接口,而不管下层操作系统是什么。java是一个可以在不同操作系统(例如windows,unix等)上运行的编程语 言,java平台是指运行在各种终端(如pc、服务器、移动设备、嵌入式设备)的系统软件。PC机上的java程序是用javaSE开发出来的,服务器端 的java程序是用javaEE开发出来的,移动设备的java程序是用javaME开发出来的。Java执行环境,即Java Runtime Environment,简称为JRE,是在任何平台上运行Java编写的程序都需要用到的软件。终端用户可以以软件或者插件方式得到和使用JRE。Sun公司还发布了一个JRE的更复杂的

18、版本,叫做JDK,即Java 2开发包,里面包含了Java需要的编译器、参考文档和调试器等本程序就是由javaee开发出来的。使用了B/S结构,同时在myeclipse8.5应用平台上开发,打包。MyEclipse,是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。4.1.2 数据库本系统中采用了mysql数据库,在程序设计时,使用了开源的hibernate项目与之进行数据连接以及处理。MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。MySQL被广泛地

19、应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。1使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性。2支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。3为多种编程语言提供了API。这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。4支持多线程,充分利用CPU资源。5优化的SQ

20、L查询算法,有效地提高查询速度。6既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。7提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。8提供TCP/IP、ODBC和JDBC等多种数据库连接途径。9提供用于管理、检查、优化数据库操作的管理工具。10支持大型的数据库。可以处理拥有上千万条记录的大型数据库。11支持多种存储引擎。12.Mysql是开源的,所以你不需要支付额外的费用。13.MySQL使用标准的SQL数据语言形式。14.Mysql对PHP有很好的支持,PHP是目前最流行的We

21、b开发语言。15.Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统。4.1.3 开源项目(1)Hibernate Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Spring强大的基于 JavaBeans 的采用控制反

22、转(Inversion of Control,IoC)原则的配置管理,使得应用程序的组件更加快捷简易。一个可用于从 applet 到 Java EE 等不同运行环境的核心 Bean 工厂。数据库事务的一般化抽象层,允许宣告式(Declarative)事务管理器,简化事务的划分使之与底层无关。内建的针对 JTA 和 单个 JDBC 数据源的一般化策略,使 Spring 的事务支持不要求 Java EE 环境,这与一般的 JTA 或者 EJB CMT 相反。JDBC 抽象层提供了有针对性的异常等级(不再从SQL异常中提取原始代码), 简化了错误处理, 大大减少了程序员的编码量. 再次利用JDBC时

23、,你无需再写出另一个 终止 (finally) 模块. 并且面向JDBC的异常与Spring 通用数据访问对象(Data Access Object) 异常等级相一致.以资源容器,DAO 实现和事务策略等形式与 Hibernate,JDO 和 iBATIS SQL Maps 集成。利用众多的反转控制方便特性来全面支持, 解决了许多典型的Hibernate集成问题. 所有这些全部遵从Spring通用事务处理和通用数据访问对象异常等级规范.灵活的基于核心 Spring 功能的 MVC 网页应用程序框架。开发者通过策略接口将拥有对该框架的高度控制,因而该框架将适应于多种呈现(View)技术,例如 J

24、SP,FreeMarker,Velocity,Tiles,iText 以及 POI。值得注意的是,Spring 中间层可以轻易地结合于任何基于 MVC 框架的网页层,例如 Struts,WebWork,或 Tapestry。提供诸如事务管理等服务的面向方面编程(AOP)框架。springmvcSpring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还可以是 Struts 这样的

25、Web 框架。通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText 和POI。Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。开发系统用的系统工具如表4.1所示:表4.1 系统开发平台和工具工具名称用途JDK 1.6.0_16Eclipse MySQLHibernateP6spySpring3SpringMVC3Java 开发工具包java集成开

26、发环境关系数据库管理系统第三方插件,方便快捷的用于数据库开发全程跟踪记录数据库运行以及执行情况面相切面编程,控制反转请求拦截器,自动注入4.2 程序设计4.2.1 程序设计概述该网站整合了hibernate,springmvc3,spring3等流行企业开源框架,对于程序开发以及未来的维护起到了十分便利的作用。由springmvc负责页面请求的拦截,通过spring进行分配到相印的操作,分配后,由hibernate负责进行数据库的操作,将结果集返回给前台页面,同时,p6spy来代理jdbc,全程追踪并打印出了sql语句,方便后台管理员查看。这样的设计与实际应用中没有任何的偶合性,除了在配置中将

27、驱动改成p6spy的拦截驱动,程序中其他地方不需要任何的改变。它所带来的好处,相对于几乎可忽略不计的性能下降是十分巨大的。4.2.2 数据库与服务器端的连接通过hibernate与spring的结合,程序中所有的直接对数据库的操作都被配置在了beans.xml中.服务器租用的存储非常重要的,这个我想大家都知道,硬盘作为服务器的主要存储设备,硬盘是一种技术含量高、制造精密的设备,服务器硬盘已经达到1万转以上,普通的SATA硬盘也非常接近这个转速,在实际的应用中,一点小问题都可能造成服务器硬盘的故障,所以一般服务器租用都采用 Raid磁盘阵列存储,这样就可以增加服务器硬盘的抗故障能力。二、除了以上

28、的方法外,对于一些重要的数据还要进行实时的备案,推荐企业用户、商务用户架构的网络服务器,选用磁带机配合专业备份软件(VeritasNetbackup、CAArcserver),定时进行备份,如果条件允许的话最好能每天备份。三、因为个人的错误操作原因,导致服务器文件不小心被删除或者丢失的话,可在网上下载一些恢复软件(DataRecove,Easyrecove 等)尝试来进行恢得,当然,做之前可以先用Ghost软件做个磁盘全备份,同时在恢复时最好是接从盘。如果你对自己的恢复结果不满意,还可以到电脑城找专业的数据恢复公司帮你进行硬盘数据恢复。四、要经常关心服务器的运行状况,对于服务器的指示和警示灯要

29、多留意。一般来讲,服务器租用外观都有每一块硬盘指示灯,正常情况下一般会是绿色,指示灯出现特殊情况时,就需要采用相关措施,仔细检查硬盘设备是否正常。一旦硬盘受损或者出现故障,不要擅自处理,要找有经验的技术人员作出详细检查再作处理方案。优缺点(1) 减少编程量数据库服务器提供了用于数据操纵的标准接口API。(2) 数据库安全保证好数据库服务器提供监控性能、并发控制等工具。由DBA统一负责授权访问数据库及网络管理。(3) 数据可靠性管理及恢复好数据库服务器提供统一的数据库备份和恢复、启动和停止数据库的管理工具。(4) 充分利用计算机资源数据库服务器把数据管理及处理工作从客户机上分出来,使网络上各计算

30、机的资源能各尽其用。(5) 提高了系统性能能大大降低网络开销。协调操作,减少资源竞争,避免死锁。提供联机查询优化机制。(6) 便于平台扩展多处理器(相同类型)的水平扩展。垂直扩展:服务器可以移植到功能更强的计算机上,不涉及处理数据的重新分布问题。主要的硬件构成仍然包含如下几个主要部分:中央处理器、内存、芯片组、I/O总线、I/O设备、电源、机箱和相关软件。这也成了我们选购一台服务器时所主要关注的指标。 整个服务器系统就像一个人,处理器就是服务器的大脑,而各种总线就像是分布与全身肌肉中的神经,芯片组就像是脊髓,而I/O设备就像是通过神经系统支配的人的手、眼睛、耳朵和嘴;而电源系统就像是血液循环系

31、统,它将能量输送到身体的所有地方。对于一台服务器来讲,服务器的性能设计目标是如何平衡各部分的性能,使整个系统的性能达到最优。如果一台服务器有每秒处理1000个服务请求的能力,但网卡只能接受200个请求,而硬盘只能负担150个,而各种总线的负载能力仅能承担100个请求的话,那这台服务器得处理能力只能是100个请求/秒,有超过80%的处理器计算能力浪费了。在信息系统中,服务器主要应用于数据库和Web服务,而PC主要应用于桌面计算和网络终端,设计根本出发点的差异决定了服务器应该具备比PC更可靠的持续运行能力、更强大的存储能力和网络通信能力、更快捷的故障恢复功能和更广阔的扩展空间,同时,对数据相当敏感

32、的应用还要求服务器提供数据备份功能。而PC机在设计上则更加重视人机接口的易用性、图像和3D处理能力及其他多媒体性能。表示所有hibernate的映射的类都被spring进行了读取。所有的Hibernate映射均采用Annotation映射。Hibernate Annotation关系映射的几种类型映射用法及使用方法(说明:以前实例的实体是user和role,主键分别是userid和roleid)1)一对一外键关联映射(单向)OneToOne(cascade=CascadeType.ALL) /一对一外键关联,使用OneToOne,并设置了级联操作JoinColumn(name=userid,u

33、nique=true) /JoinColum设置了外键的名称为userid(数据库字段名),如果不设置,则默认为另一类的属性名+ _id。外键的值是唯一的(unique),不可重复,与另一类的主键一直2)一对一外键关联映射(双向)OneToOne(mappedBy=role,cascade=CascadeType.ALL) /一对一双向关联关系,使用OneToOne。注意:需要加上mappedBy=role,如果不加上的话,role也会生成一个外键(user_id),mappedby=role需要指向与他关联对象的一个属性,说明双向关联关系中,有且仅有一端是作为主体(owner)端存在的,主体

34、端负责维护联接列,对于不需要维护这种关系的从表则通过mappedBy属性进行声明,mappedBy的值指向主体的关联属性/规律:只有是双向关联关系,都加上mappedby,cascade=CascadeType.ALL级联3)一对一主键关联映射(不重要)在实际中很少用,使用注解PrimaryKeyJoinColumn,意思是说,我的主键去参考另外一张表中的主键,作为我的主键,但是在我测试使用注解一对一主键关联映射,在生成表的时候,数据库中并没有生成关联,使用XML映射可以生成。Annotation注解一对一主键关联映,有些bug。不过没空去研究它。因为在实际开发中一对一很少用。在实际开发中我机

35、会没有用过,主键关联就更少了4)多对一关联映射多端配置ManyToOne(targetEntity=role.class) /多对一注解ManyToOne;targetEntity指定了关联对象JoinColumn(name=userid) /JoinColumn(name=userid)指定生产的外键的字段名,默认是org_id5)一对多关联映射(单向)OneToMany /一对多注解OneToMany(单向),如果只写OneToMany的话,hibernate会建一张中间表来维护他们之间的关系JoinColumn(name=roleid) /加上JoinColumn(name=roleid

36、),则不会建中间表,他会在多的一端加上外键roleid,来维护他们之间的关系6)一对多关联映射(双向)一端配置OneToMany(mappedBy=role) /一对多双向,在一的一端中设置mappedBy,说明多的一端为主导JoinColumn(name=roleid) /如果指定了外键字段名称,则多的一端也需要指定相同的字段名称多端配置ManyToOne /一对多双向JoinColumn(name=roleid) /需要指定外键与一的一端给的外键名称一致,JoinColumn(name=roleid),也可以不指定,如果在多的一端不指定,则一的一端也不能指定,否则为生成两个外键7)多对多关

37、联映射(单向)ManyToMany /多对多映射:注解ManyToMany(单向),默认情况下,hibernate会自动的创建一张中间表来维护多对多关系默认中间表的名称 :user_role中间表,字段的名称user_id role_id,如果想更换表名和字段名称,注解如下:JoinTable(name=t_u_r,joinColumns=JoinColumn(name=u_id),inverseJoinColumns=JoinColumn(name=r_id)8)多对多关联映射(双向)user端ManyToMany /多对多映射:注解ManyToMany(单向);默认情况下,hibernat

38、e会自动的创建一张中间表,来维护多对多关系;默认中间表的名称 :user_role中间表,字段的名称user_id role_id如果想更换表名和字段名称,注解如下:JoinTable(name=t_u_r,joinColumns=JoinColumn(name=u_id),inverseJoinColumns=JoinColumn(name=r_id) /JoinTable(name=t_u_r),指定中间表的表名;joinColumns=JoinColumn(name=u_id),指定当前对象的外键;inverseJoinColumns=JoinColumn(name=r_id),指定关联

39、对象的外键role端ManyToMany(mappedBy=role) /多对多,双向关联映射下面的则是springmvc对请求拦截的配置,例如所有的请求都被拦截,并进行了自动分配。在网络技术中,端口(英文Port)有好几种意思。集线器、交换机、路由器的端口指的是连接其他网络设备的接口,如RJ-45端口、Serial端口等。我们这里所说的端口,不是计算机硬件的I/O进出端口,而是软件形式上的概念。服务器可以向外提供多种服务,比如,一台服务器可以同时是WEB服务器,也可以是FTP服务器,同时,它也可以是邮件服务器。为什么一台服务器可以同时提供那么多的服务呢?其中一个很主要的方面,就是各种服务采用

40、不同的端口分别提供不同的服务,比如:WEB采用80端口,FTP采用21端口等。这样,通过不同端口,计算机与外界进行互不干扰的通信。我们这里所指的端口不是指物理意义上的端口,而是特指TCP/IP协议中的端口,是逻辑意义上的端口。内网的一台电脑要上因特网对外开放服务或接收数据,都需要端口映射。端口映射分为动态和静态。动态端口映射:内网中的一台电脑要访问网站,会向NAT网关发送数据包,包头中包括对方网站IP、端口和本机IP、端口,NAT网关会把本机IP、端口替换成自己的公网IP、一个未使用的端口,并且会记下这个映射关系,为以后转发数据包使用。然后再把数据发给网站,网站收到数据后做出反应,发送数据到N

41、AT网关的那个未使用的端口,然后NAT网关将数据转发给内网中的那台电脑,实现内网和公网的通讯.当连接关闭时,NAT网关会释放分配给这条连接的端口,以便以后的连接可以继续使用。动态端口映射其实也就是NAT网关的工作方式。静态端口映射::就是在NAT网关上开放一个固定的端口,然后设定此端口收到的数据要转发给内网哪个IP和端口,不管有没有连接,这个映射关系都会一直存在。就可以让公网主动访问内网的一台电脑。后台接收到请求后的处理如下:首先,如果你是在地址栏里输入参数时,意味着数据是伴随着消息头传递过去的,就是用get方法传递数据的。浏览器会自动将其转换成十六进制编码。其次,后台接收的时候只能用requ

42、est.getParamerter()取值。此时如果你的web服务接收数据时默认的字符集是Iso-8859-1,那么 第一种办法: String test = req.getParameter(test); test = new String(test.getBytes(iso-8859-1),浏览器编码格式); 你就可以获取到中文了。 第二种办法: String qs = req.getQueryString();/直接获取到十六进制数据(十六进制的格式是:%xy) qs = URLDecoder.decode(qs,浏览器编码格式);/翻译十六进制的字符串spring在英文里有春天、弹簧、

43、跳跃和泉眼的意思。Spring 也表示是一个开源框架,是为了解决企业应用程序开发复杂性由Rod Johnson创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-On

44、e J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。强大的基于 JavaBeans的采用控制反转(Inversion of Control,IoC)原则的配置管理,使得应用程序的组件更加快捷简易。一个可用于从 applet 到 Java EE 等不同运行环境的核心 Bean 工厂。数据库事务的一般化抽象层,允许宣告

45、式(Declarative)事务管理器,简化事务的划分使之与底层无关。内建的针对 JTA 和 单个 JDBC 数据源的一般化策略,使 Spring 的事务支持不要求 Java EE 环境,这与一般的 JTA 或者 EJB CMT 相反。JDBC 抽象层提供了有针对性的异常等级(不再从SQL异常中提取原始代码), 简化了错误处理, 大大减少了程序员的编码量. 再次利用JDBC时,你无需再写出另一个 终止 (finally) 模块. 并且面向JDBC的异常与Spring 通用数据访问对象(Data Access Object) 异常等级相一致.Resource表示自动注入,程序员通过spring的

46、自动注入,省去了自行创建,并对属性set的操作。上面这句表示,如果有名为login的action对象,则会进行后面的程序操作。当操作成功,会跳转到index.jsp返回的success是种状态会被拦截器拦截到,并行执行跳转的任务。5 系统测试5.1 系统测试目的与意义系统测试是管理信息系统开发周期中一个十分重要而漫长的的阶段。其重要性体现在他是保证系统质量与可靠性的最后关口,是对整个系统开发过程包括系统分析、系统设计和系统实现的最终审查。系统测试的任务是尽可能彻底的检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统“做得怎样”。这这阶段又可以分为三个步骤:模块测试,测试每个模块的程序是否正确;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。是基于系统整体需求说明书的黑盒测试,应覆盖系统随偶联合的部件,系统测试是正对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出需求规格不符合或与之矛盾的地方。系统测试是为了发现错误而执行程序的过程,成功的测试是发现了至今尚未发现的错误的测试。测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。应根据开发各阶段的需求、设计等文档或程序的内部结构精心设计测试用例,并利用这些实例来运行程序,以便发

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁