当前位置:首页>> >>


JAVASMART系统-系统框架设计与开发(源代码 论文).rar

收藏

资源目录
    文档预览:
    编号:20180913143533678    类型:共享资源    大小:662.99KB    格式:RAR    上传时间:2018-09-13
    尺寸:148x200像素    分辨率:72dpi   颜色:RGB    工具:   
    40
    金币
    关 键 词:
    JAVASMART 系统 框架 设计 开发 源代码 论文
    资源描述:
    分类号:TP311.1 U D C:D10621-408-(2007) 5992-0密 级:公 开 编 号:2003032068成 都 信 息 工 程 学 院学 位 论 文SMART系统-系统框架设计与开发论文作者姓名: 胡 州 明申请学位专业: 网 络 工 程申请学位类别: 工学学士指 导 教 师 姓 名 (职 称 ): 叶立轩(高级工程师)论文提交日期: 2007 年 06 月 05 日SMART系统-系统框架设计与开发摘 要SMART系统是一个新型智能在线考试信息管理系统,该系统主要实现了学生在线考试与评估以及教师对学生在线考试信息的管理和维护。本文按照SMART系统的非功能性需求,基于 Struts、Spring、Hibernate 三种开源技术,构建了一个具有良好的可扩展性、可维护性、可靠性的系统框架。整个系统的框架分为三层,分别为表现层、业务层和持久层。 本系统的表现层是基于Struts作扩展设计,结合本系统的需求完成了自定义标签的封装,基本 action接口的编写。在业务层则是采用单例模式设计与 Spring的 IoC模式相结合,实现了公共代理类的编写,各业务逻辑接口的封装。而在持久层的设计中则是采用基于现有持久层框架的实现模式,实现了对产生 Session实例的封装,对常用数据库操作的封装。这样设计减少了耦合性且避免了生成大量的临时对象。该系统框架能达到良好的可拓展性和维护性。它不仅仅适用这个系统的开发,可以应用于 J2EE领域中基于 SSH来架构的大部分 B/S系统。关键词:设计模式;开源;领域建模;系统框架 SMART System –The Design and Development of The FrameworkAbstractThe SMART system is a new type of intelligent information management system for online examination. The system has mostly realized the function that the students can do the online exam and the teachers can manage and maintain the exam information of students on SMART System. In this paper, how to construct a system framework of good expansibility, maintainability, and reliability is discussing in detail according to the non-functionality need of the Smart system, which is based on Struts, Spring, and Hibernate. The system framework is divided into three layers, and they are view layer, business layer, and persistent layer. We can do expansion-designing of Struts in the process of the framework designing which bases on the view layer, also the encapsulation of the custom tag and the compiled language for the basic interface of action are finished according to the request of the system. In this system, the business layer is a combo of single-example mode and IoC mode, so the compiled language for the common deputize and the encapsulation of the business logic interface have been realized. The realized mode that is applied to the framework design of the persistent layer is based on the framework of the persistent layer in existence, also the encapsulation of creating example for Session and the encapsulation of database for common use are realized. As a result, it will reduce the coupling, and a lot of temporary objects created in this process will be avoided.Favorable expansibility and maintainability can be achieved in this system framework. This frame is not only applied to the systemic development but also can be applied to the most B/S system which bases on the frame of SSH in the field of J2EE.Key words: Design Pattern; OpenSource; Domain Modeling; The framework of System目 录论文总页数:25 页1 引言 ......................................................................11.1 课题背景 ..............................................................11.2 国内外研究现状 ........................................................11.3 本课题研究的意义 ......................................................12 系统需求分析 ..............................................................22.1 可扩展性要求 ..........................................................22.2 可维护性要求 ..........................................................22.3 可伸缩性要求 ..........................................................22.4 可靠性要求 ............................................................23 系统开发环境及实现关键技术 ................................................33.1 硬件环境 ..............................................................33.2 软件环境 ..............................................................33.3 系统实现的关键技术 ....................................................34 系统总体框架设计 ..........................................................74.1 总体结构说明 ..........................................................74.2 总体结构设计与建模 ...................................................105 系统总体框架具体实现 .....................................................185.1 各层具体实现 .........................................................186 测试与分析 ...............................................................216.1 测试环境 .............................................................216.2 测试结果 .............................................................216.3 结果分析 .............................................................22结 论 .....................................................................22参考文献 .....................................................................23致 谢 .....................................................................24声 明 .....................................................................25第 1 页 共 25 页1 引言1.1 课题背景随着计算机技术的发展及计算机的日益普及,基于 Web的在线考试与无纸化办公已成为大势所趋。特别是在大兴数字化校园建立的今天,基于 WEB在线考试系统也已经成为学校信息化建设中不可缺少的一部分,它的优势不但体现在人力上也体现在物力上,基于 WEB的在线考试系统的自动评阅、计分、成绩存档功能将有效地避免资源的浪费,有利于环保,减少人员投入,大大的提高了效率。相比传统的考试方式,基于 WEB的在线考试系统的主要好处是一方面可以动态地管理各种考试信息,只要准备好足够大的题库,就可以按照要求自动生成各种试卷;另一方面,考试时间灵活,可以在规定的时间段内的任意时间参加考试;另外计算机化的考试的最大特点是阅卷快,系统可以在考试结束时当场给出客观题考试成绩,计算机阅卷给了考生最大的公平感。本文中研究了基于 Web的在线考试系统―系统框架设计与开发设计与实现,包括系统需求分析和系统框架功能设计与实现。1.2 国内外研究现状网络考试系统极大地提高了教学的灵活性,现在在许多领域已经有了广泛的应用。在国外最有影响的案例就是 ETS(美国教育考试中心)举办的 GRE(美国研究生入学考试)的计算机化考试,它使考试由原来的每年只能有两次参加考试的机会变成了每个工作日都可以参加的考试,大大提高了工作的效率。在我国,经过这么多年在 IT业的发展及经验的积累,虽然数字化教育已经蓬勃地发展起来,但是目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。然而在这个过程中人工手动出题和试题的选择是最为复杂的,显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情,可以说传统的考试方式已经不能适应现代考试的需要。因此在国内也出现了比较适合自己本国特色的在线考试系统如:杰佛通用在线考试系统,新为在线考试系统等。1.3 本课题研究的意义本系统主要用来缓解传统考试所需要的繁琐工作流程,组织试题、印刷试卷、组织考试、监考防作弊、收卷判分、统计结果等,通过本系统,可以将以上考试的全部流程,完全借助计算机系统来实现,从而减轻教师的工作负担及第 2 页 共 25 页提高工作效率,与此同时也提高了考试的质量,使考试更趋于公证、客观、科学性进一步的激发了学生的学习兴趣。2 系统需求分析SMART系统框架在实现上要求采用在 J2EE领域中比较流行的 SSH框架组合方式,并结合系统自身的一些特点来实现适合于本系统框架设计,该系统的一些非功能性的需求如下:2.1 可扩展性要求一般来说,软件的可扩展性决定着其适应变更能力的大小。事后我们总是可以很容易地评价某个程序是可扩展的还是不可扩展的,但是要想使这个系统在今后真正派上用场,我们必须事先就对它有个判断。一个系统一般都是要在不断升级的过程中去结合用户的需求来完善自身功能,因此该系统要求采用清晰的接口把对象的实现与它的交互分离开来,特定的实现就可以独立于应用的其他部分,各个实现也可以在将来很方便地修改、升级甚至彻底替换。这时的应用不再是一个单独的东西,而是一个系统中半独立的组件。多个开发者可以在相互不破坏彼此成果或者甚至在不了解全局场景的情况下协同开发。组件提供了特定的功能,允许独立地测试,也可以重用于多个应用中。如果组件之间工作分配及接口是很清晰的,这样的软件就很容易扩展。2.2 可维护性要求系统在开发完成以后,后期的维护也是一个项目中重要的一环,包括为了满足用户的使用体验对代码所作的修改;对上线后长时间运行过程中所出现的BUG所作的修改等等这些需求,都是要求一个系统是具有可维护性的特性的。2.3 可伸缩性要求可伸缩性和性能是紧密相关的,但是它们并不完全相同。可伸缩性可以广义地定义为应用在请求数目增长时维护性能的能力。在 SMART系统中要求达到一个地市州级地区教育系统内的全体学生提供在线考试服务,并发数应在10000人以上。在本系统架构的中是采用分层的技术,这将可以很好的满足可扩展性与可维护性的要求,但是各层之间的通信又反过来制约了伸缩性。因此,就要求我们在架构设计的时候使用有成效的实践经验来连接这些层次。2.4 可靠性要求可靠的软件在所有时刻都会按照预期的那样执行。与可伸缩性类似,一个可靠的系统取决于对其底层组件的可预测性。从一个用户的角度来看,可靠性是对整个系统的判断,包括硬件、软件和网络元素。如果一个单独的组件发生故障了,并且用户无法访问应用或者应用工作不正确了,那么整个系统就是不第 3 页 共 25 页可靠的。在 SMART系统中的需求中,可靠性是首当其冲的,特别体现在考试的过程中。如果在考试的过程中系统出问题了,或者在考试后的阅卷中系统算错分了,这都将是灾难性的错误,从而导致严重的后果。因此,保证 SMART系统的可靠性的至关重要的。3 系统开发环境及实现关键技术3.1 硬件环境CPU: AMD Sempron(tm) 2500+内存:1 G硬盘:80 G3.2 软件环境操作系统:Microsoft Windows Server 2003 显示设置:SAMSUNG SyncMaster 795MB应用软件:SQL Server 2000 + Eclipse3.1.2 + JDK1.5 + Apache Tomcat5.5.153.3 系统实现的关键技术3.3.1 AJAX技术AJAX全称为“Asynchronous JavaScript and XML”(异步 JavaScript和XML) ,该技术并不是一种新的技术,实际上是多种技术的综合,包括JavaScript、XHML 和 CSS、DOM、XMLXSL 和 XMLHttpRequest。其中使用 XHML和 CSS作为标准化的呈现,使用 XMLHttpRequest作为异步数据的读取,使用JavaScript绑定和处理所有数据。在 AJAX提出之前,业界对于上述技术都只是单独的使用,没有综合使用,也是由于之前的技术需求所决定的。与传统的 Web应用不同,AJAX 采用异步交互过程。AJAX 在用户与服务器之间引入一个中间媒介,从而消除了网络交互过程中的处理-等待-处理-等待缺点。用户的浏览器在执行任务时即装载了 AJAX引擎。AJAX 引擎用 JavaScript语言编写,通常藏在一个隐藏的框架中。它负责编译用户界面及与服务器之间的交互。AJAX 引擎允许用与应用软件之间的交互过程异步进行,独立于用户与网络服务器间的交流。现在,可以用JavaScript调用 AJAX引擎来代替产生一个 HTTP的用户动作,内存中的数据编辑、页面导航、数据校验这些不需要重新载入整个页面的需求可以交给 AJAX来执行。第 4 页 共 25 页图 1 Ajax的 web应用模型3.3.2 单例模式单例模式作为设计模式中的创建模式类型中的一种,从其名字可以看出该模式确保了一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这类称为单例类。单例模式具有以下的特点:1. 单例类只可有一个实例。2. 单例类必须自己创建自己这惟一的实例。3. 单例类必须给所有其他对象提供这一实例。在 Java中单例模式一般有三种实现其分别为:饿汉式单例类;懒汉式单例类;登记式单例类。1. 饿汉式单例类:饿汉式单例类是在 Java 语言里实现得最为简便的单例类,下面所示的类图描述了一个饿汉式单例类的典型实现。图 2 饿汉式单例类类图第 5 页 共 25 页从类图中可以看出,在这个类被加载时,静态变量 m_instance 会被初始化,此时类的私有构造子会被调用。这时候,单例类的惟一实例就被创建出来了。Java 语言中单例类的一个最重要的特点是类的构造子是私有的,从而避免外界利用构造子直接创建出任意多的实例。值得指出的是,由于构造子是私有的,因此,此类不能被继承。2. 懒汉式单例类:与饿汉式单例类相同之处是,类的构造子是私有的。与饿汉式单例类不同的是,懒汉式单例类在第一次被引用时将自己实例化。如果加载器是静态的,那么在懒汉式单例类被加载时不会将自己实例化。如图 3所示,类图中给出了一个典型的懒汉式单例类实现。图 3懒汉式单例类类图3. 登记式单例类:登记式单例类是 GoF为了克服饿汉式单例类及懒汉式单例类均不可继承的缺点而设计的。在本例中把他们的例子翻译为 Java 语言,并将它自己实例化的方式从懒汉式改为饿汉式。只是它的子类实例化的方式只能是懒汉式的,这是无法改变的。如图 4所示是登记式单例类的一个例子,图中的关系线表明,此类已将自己实例化。图 4 登记式单例类第 6 页 共 25 页3.3.3 IoC模式IoC (Inversion of Control)模式又称 DI(依赖注入) ,从 GoF设计模式中,我们已经习惯一种思维编程方式:Interface Driven Design 接口驱动,接口驱动有很多好处,可以提供不同灵活的子类实现,增加代码稳定和健壮性等等,但是接口一定是需要实现的,也就是如下语句迟早要执行:AInterface a = new AInterfaceImp(); AInterfaceImp是接口 AInterface的一个子类,IoC 模式可以延缓接口的实现,根据需要实现,打个比喻:接口如同空的模型套,在必要时,需要向模型套注射石膏,这样才能成为一个模型实体,因此,将人为控制接口的实现成为“注射” 。其实 IoC模式也是解决调用者和被调用者之间的一种关系,上述AInterface实现语句表明当前是在调用被调用者 AInterfaceImp,由于被调用者名称写入了调用者的代码中,这产生了一个接口实现的原罪:彼此联系,调用者和被调用者有紧密联系,在 UML中是用依赖 Dependency 表示。但是这种依赖在分离关注的思维下是不可忍耐的,必须切割,实现调用者和被调用者解耦,新的 IoC模式 Dependency Injection 模式由此产生了, Dependency Injection模式是依赖注射的意思,也就是将依赖先剥离,然后在适当时候再注射进入。3.3.4 JAVA反射机制“反射”是 Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说“自审” ,并能直接操作程序的内部属性。Java 的反射机制是使其具有动态特性的非常关键的一种机制,这个机制允许程序在运行时透过 Reflection APIs取得任何一个已知名称的 class的内部信息,包括其modifiers(诸如 public, static 等等)、superclass(例如 Object)、实现之interfaces(例如 Cloneable),也包括 fields和 methods的所有信息,并可于运行时改变 fields内容或唤起 methods。3.3.5 JSP自定义标签要在 JSP中实现自定义标签,那么要求必须实现一个相应的标签处理类及写该标签的 TLD文件,在 JSP中一个自定义的 action也就是对 tag处理类,是基于一个 bean类型的类,该类里面伴随的 getter/setter方法对应于 tag中的属性。另外这个 tag handler类还必须要实现 JSP规范中与 tag相关的三个接口中的一个。这三个接口如下所示:1. Tag2. IterationTag
    展开阅读全文
    1
      金牌文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:JAVASMART系统-系统框架设计与开发(源代码 论文).rar
    链接地址:http://www.gold-doc.com/p-116506.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们
    copyright@ 2014-2018 金牌文库网站版权所有
    经营许可证编号:浙ICP备15046084号-3
    收起
    展开