西安工业大学计算机专业毕业论文 - 范文中心

西安工业大学计算机专业毕业论文

09/07

本科毕业设计(论文)

题目:基于WEB的软件工程案例教学平台

----交互演示子系统的设计

院 (系): 专 业: 班 级: 学 生: 学 号: 指导教师:

2016年06月

本科毕业设计(论文)

题目:基于WEB的软件工程案例教学平台

----交互演示子系统的设计

院 (系): 专 业: 班 级: 学 生: 学 号: 指导教师:

2016年06月

西安工业大学毕业设计(论文)任务书

院(系) 计算机科学与工程 专业 网络工程 班 120614

姓名 郭丹丹 学号 120614119

1.毕业设计(论文)题目: 2.了网络化、信息化和现代化。网络教学是利用计算机技术、网络技术以及多媒体技术,在互联网络环境下实行教育教学的一种新途径,作为一种重要的辅助手段,补充传统的课堂教学。网络教学可以充分依靠先进的教学手段、教学技术、教学资源、教学思想,给广大用户提供了良好的自主学习环境,大幅度的促进并提升了教学效率、教学效果和教学水平。 该系统能把不同形式的教学资源有机的结合起来,并提供一个层次化、科学化、便捷化的应用平台,使教学资源的利用高效化,提高了教学的服务质量。现代教育教学系统是建立在高效的案例教学平台的基础上的,也是现代教育教学系统中必不可少的、重要的基础系统。

3.设计(论文)的主要内容(理工科含技术指标)设计及开发,主要有以下功能:

(1) 学生用户:用户登陆、信息浏览、密码修改、案例查询、案例检索、案例下载、案例评论等功能。

(2) 教师用户及管理员:用户登陆、信息浏览、密码修改、案例查询、案例添加、案例检索、案例修改、案例删除、案例类别管理、案例答疑等功能。

(3)交互演示子系统为用户提供便捷的方式展示案例文档、源代码、相关数据库设计说明等;用户可以方便按照知识点、课程内容、技术分类的进行案例的检索查询。

4.设计的基本要求及进度安排(含起始时间、设计地点):

1) 基本要求:能够进行基本的web开发,掌握基本编程语言,熟悉Mysql数据库应用;

2)进度安排:

第4—6周:根据客户需求完成需求分析报告并完成详细设计报告; 第7—9周:系统设计、数据库设计、开发环境搭建; 第10—15周:完成系统所有模块开发工作,同时完成功能测试; 第16—17周 对整个系统进行完整测试、运行 ; 第18周:修改完善论文并准备毕业答辩。

5.毕业设计(论文)的工作量要求

*① 实验(时数)或实习(天数): 3月---6月

② 图纸(幅面和张数)*: A4纸 ③ 其他要求: 论文字数要求15000字,软件源代码及使用说明

指导教师签名: 年 月 日

学生签名: 年 月 日 系(教研室)主任审批 年 月 日 说明:1本表一式二份,一份由学生装订入论文,一份教师自留。

2 带*项可根据学科特点选填。

基于Web的软件工程案例教学平台

----交互演示子系统的设计

摘 要

随着互联网技术的不断发展,网络教学平台化不断普及。教育正在逐渐进入网络化。网络教学平台是利用计算机技术、网络技术以及多媒体技术,在互联网环境下实现教育教学的一种新途径。将软件工程案例放到网上让学生通过网络来学习,可以使学生更好地理解软件工程这门课程的真谛,以此培养学生开发计算机应用系统的实际能力。因此,本课题主要是基于软件工程中案例教学平台,研究其演示系统的设计与实现工作。力争提供一个友好、便捷的案例交互演示的方式。

本课题主要采用面向对象开发语言java开发,结合现在流行的MVC框架struts2进行页面模型的封装、动作请求的处理和调用相关服务层接口;使用ORM框架hibernate对数据库层进行了封装,提供大量公共接口方法,方便服务层调用,使得系统在数据库访问方面更加便捷、高效;采用Spring框架的控制反转特性将struts2和hibernate进行统一管理,提高系统的性能。同时在事务管理方面,也使用spring的AOP在服务层织入统一的事务管理,降低了代码的耦合性;页面的各项输入验证采用流行的jQuery.validate.js框架,使的验证用户更加方便灵活;页面中的一些动态显示,则使用jquery.js框架.

基于软件教学平台的需求,本系统设计实现了案例交互演示系统的相关功能。在用户体验和交互演示方面,本系统分别从案例推荐、相关案例推荐、优秀老师推荐、案例评论、案例下载、案例收藏和案例预览等几个方面来体现交互的特性。整个开发过程始终坚持以用户为原则,提供丰富的用户交互方式,尽最大限度的调动用户的交流。

关键词:jQuery;struts2;交互演示;案例教学

Software engineering case teaching platform based on WEB

--Interactive presentation subsystem design

Abstract

With the incessant development of Internet technology and the incessant popularization of network education platform,Education is gradually networked. The network education platform is a new realization of the education and teaching by the use of computer technology, network technology and multimedia technology in the Internet environment . with the way of students learn the on-Internet software engineering courseware through the computer,students can better understand the truth of software engineering curriculum and train the practical ability of development computer application system. For these reasons,this project mainly study the design and implementation of the demonstration system on the foudation of the case of the education and teaching platform in the software engineering.We are Striving for provid a friendly, convenient and convenient demonstrated way on case interaction.

with the primary object-oriented programming language Java and the now popular MVC framework Struts Two,this paper is deveiopde to package on webpage model,process to an action request and call related service layer interface; package the database by using ORM framework hibernate ,which provide a large number of public interface methods for the convenience of calling the service layer and makes more convenient and efficient in the system access to database; unified manage Struts Two and hibernate through the IOC characteristics of spring framework,which improve the system performance; Also by using spring AOP in the service layer woven into the unified management to the affairs in the transaction management aspect,which reduce the coupling code;use popular jQuery.validate framework in the page-input validation,which enable the verification on user more convenient and flexible,and use the jQuery framework on some dynamic webpage display.

For requirements of the software platform, the system design implement the relevant functions of the case interactive demonstration system. On the way of user experience and interactive demonstrations, this system shows interaction characteristics in some ways that include the the case recommended, recommended related cases, the excellent teacher recommendation, case review, case download, case collection and case preview etc.The development process has always persevere in the principle of users, provide rich user interactive ways and maximize the commmunication of the user.

KeyWords: JQuery;struts2;interactive demonstration;case teaching

目录

摘 要 ......................................................................................................... I Abstract ..................................................................................................... II

1.1背景介绍 ..................................................... 1

1.2系统设计的意义 ............................................... 1

1.3国内外相关研究情况 ........................................... 1

1.4课题研究内容 ................................................. 2

1.5论文结构 ..................................................... 2

2 软件开发相关的技术 .......................................................................... 4

2.1 JSP简介 ..................................................... 4

2.2 OGNL简介 .................................................... 4

2.3 jQuery简介 .................................................. 5

2.4 MySql 简介 .................................................. 6

3 需求分析 .............................................................................................. 7

3.1 需求分析 .................................................... 7

3.2 系统功能需求分析 ............................................ 7

3.3 系统非功能需求 .............................................. 8

4 系统详细设计 ...................................................................................... 9

4.1 系统结构 .................................................... 9

4.2 模块介绍 .................................................... 9

4.3 数据库结构设计 ............................................. 10

4.3.1 数据表E-R图 ........................................... 11

4.3.2 数据表概要说明 ......................................... 11

4.3.3 物理结构设计 ........................................... 12

5 系统实现 ............................................................................................ 14

5.1 开发环境及工具 ............................................. 14

5.2 交互演示系统整体设计 ....................................... 14

5.2.1 功能设计 ............................................... 14

5.2.2 程序结构设计 ........................................... 15

5.2.3 程序流程 ............................................... 16

5.3 重要模块实现细节 ........................................... 16

5.3.1 系统的首页界面 ......................................... 16

5.3.2 案例查看页面 ........................................... 17

5.3.3 案例收藏列表页 ......................................... 18

5.3.4 相关代码如下 ........................................... 18

6 测试 ..................................................................................................... 23

6.1 软件测试的目标 ............................................. 23

6.2 测试计划 ................................................... 23

6.3 测试结果 ................................................... 23

6.4 测试评价 ................................................... 25

7 结论 ..................................................................................................... 27

参考文献................................................................................................... 28

致 谢 ....................................................................................................... 30

毕业设计(论文)知识产权声明 .......................................................... 31

毕业设计(论文)独创性声明 .............................................................. 32 附 录 ........................................................................ 错误!未定义书签。

1 绪论

1.1 背景介绍

随着网络技术、通信技术和计算机技术的迅猛发展,教育正逐步走向了网络化、信息化和现代化。网络教学是利用计算机技术、网络技术以及多媒体技术,在互联网络环境下实行教育教学的一种新途径,作为一种重要的辅助手段,补充传统的课堂教学。网络教学可以充分依靠先进的教学手段、教学技术、教学资源、教学思想,给广大用户提供了良好的自主学习环境,大幅度的促进并提升了教学效率、教学效果和教学水平。 该系统能把不同形式的教学资源有机的结合起来,并提供一个层次化、科学化、便捷化的应用平台,使教学资源的利用高效化,提高了教学的服务质量。现代教育教学系统是建立在高效的案例教学平台的基础上的,也是现代教育教学系统中必不可少的、重要的基础系统。

1.2 系统设计的意义

案例教学是一种让学生在学习的过程中结合实际情况教学方式,很早就在国外兴起,并取得了不错的效果。软件工程的学习本就是一种实践性比较强的学科。让学生结合案例学习,不仅可以促进学生的动手能力;同时,利用互联网的信息快速传播,使的大家能够尽可能的享受优秀的教育资源。

以往的案例信息大部分是以文件的形式被上传在网上,我们搜索之后只能看到他的标题,可能会有一些简单的说明。这样就需要我们下载每个文件,逐一去辨别是不是我们想要的资源。通过本案例库演示系统,用户可以采用多种方式来学习案例。如:查看案例简介、在线预览案例、下载离线学习案例、参与评价讨论等。不仅提高了用户的交流能动性,也丰富了现有教学方式。可以很好的提高教学效果,弥补传统教学方式中的诸多不足。

1.3 国内外相关研究情况

目前,国内外最有名、使用范围最广的教学管理方法当属美国的“案例教学法”。 该方法于 19 世纪末在哈佛大学法学院推广,由当时的法学院院长,著名的法理学家 Christopher Columbus Langdell 首创。案例教学法最大的特点就是将学生纳入教学环节,参与到真实的案例分析中来,教师则在教学活动中发挥引导、激励的作用。由于此教学法改变了传统教学中以教师为中心的教学法,鼓励学生积极参与,最大限度调度了学生的思考和动手能力,同时也培养了学生之间的团队协作能力。因此,很快就受到了很多高校和老师的青睐,并积极效仿。

我国的学者对案例教学也有研究,但是他们更加倾向于判定问题的属性,

研究问题的界定,比如华东师范大学教授董家辉,他在他的著作《案例教学指南》中明确指出了:“案例是对实际情境的描述”。西南师范大学李忠如认为,案例是包含了多重以外因素的事件回顾,描述了教学环节“意料之外、情理之中”的故事”。华东师范大学教授,著名教育学专家顾泠沅在此基础上从教学结果上加以补充,并认为,案例教学“反映了典型的教学思考力水平及其保持、下降或达成等现象。”显然,相较于国外专家对案例设计环节的关注,国内学者们更专注于案例本身。国内外专家们对概念的研究和关注也从不同侧面展示了不同的价值取向与研究思路。

我国的案例教学是在工商行政代表团于 70 年代末访问美国后介绍到国内的。在运用过程中案例教学效果得到了突现,与此同时,案例教学法的课程也逐渐增多,现在几乎涉及教育教学中的各个方面。由于起步较晚,并且受应试教育和传统教学模式的影响较深,我国的案例教学还存在诸多问题,特别是教学案例的网络化,真正意义上的案例教学网络平台更是寥寥无几。因此,本课题希望能够构建一个方便快捷的案例交互演示系统,提供更多方便的案例学习方式,最大限度的调动学生的能动性,提高教学效果。

1.4 课题研究内容

本课题需要研究实现的内容是:针对案例教学平台中案例的交互演示系统进行研究。用户进行案例的检索预览。对于搜索到的案例可以查看案例的相关信息,同时还会展示本案例的相关推荐案例;用户可在网络情况下在线预览文件和下载到本地进行离线学习,也可对案例进行提问和对其他用户提出的疑问进行回复评论。尽最大限度的调动用户参与进来,互动学习。实现交互的作用。对于演示功能,本系统暂时只支持pdf文件、txt文件、xml文件、office等系列文件,其中在预览word文件时,会调用本地的office组件。

1.5 论文结构

本论文的组织结构如下:

第一章:绪论。阐明了关于案例教学平台中交互演示子系统的开发背景、研究意义以及课题研究的内容。

第二章:软件开发相关的技术介绍。分析了JSP作为动态页面的优势;jQuery作为前端验证框架的优越性;OGNL作为页面数据处理脚本的好处和MySql数据库的相关简单特点。

第三章:需求分析。介绍基于Web的软件工程案例教学平台---交互演示子系统的需求概述,系统功能需求等。

第四章:详细设计。介绍基于Web的软件工程案例教学平台---交互演示子系统的功能设计、界面设计、数据库设计等。

第五章:系统实现。系统中各个模块的功能实现。

第六章:介绍了软件的测试过程。

第七章:介绍了开发者在完成本软件后的心得体会。

2 软件开发相关的技术

2.1 JSP简介

JSP的全名叫Java Server Page,与HTML结构类似的一种动态页面脚本语言,支持所有HTML所支持的标签。他的中文名字也叫java服务器页面,这主要是因为他封装了许多Servlet相关组件,能很好的支持大部分Servlet的功能。起初,JSP是由Sun Microsystems开发的,后台很多开源组织也加入进来,一起共同制定也一系列动态网页的技术标准。JSP技术和微软的ASP有点相似,都是一种动态页面脚本语言,改变了传统HTML语言中数据静态的缺点,使的数据更加灵活,页面显示效果可以随数据的更新动态更新;同时,它又是一种服务器语言,主要在于页面编译过程中会将JSP页面的所有内容编译成servlet,运行于Servlet容器之中,由java的输入输出流输出到页面,以此来体现它的动态性。同时,采用java语言解析,也使JSP具有很好的跨平台性、与java语言很好融合。

JSP页面的结构同HTML页面的结构一样,都是采用标签的形式包裹需要显示的内容。经过发展,JSP也已经支持了HTML的几乎所有内容显示标签,在样式显示方面也做到了很好的兼容性。总体来说,编写JSP页面的时候就像编写HTML页面一样,不需要考虑JSP是否无法编译。JSP中也可以很方便的编写Java代码,但是需要使用“”标签进行包裹,在该标签中编辑代码就像其他java编辑器一样简单方便,需要使用到的类库则需要在JSP页面的头部标签中引入,引入方式方式如:“”。

JSP技术对Servlet也有了很好的支持,JSP中有九大内置对象,基本上可以满足在JSP页面中使用Servlet的所有相关组建,并且JSP对这些对象进行了很好的封装,在Servlet容器中有很好的交互效果。这也是其动态性的一大体现,是其迅速流行起来的主要特点。

JSP页面还可以扩展第三方标签语言,比如JSTL、OGNL等。可以很大的降低页面开发的工作量,同时这些标记语言替换了传统的页面中嵌套Java代码,不仅增加了页面的可读性,也大大提高了页面的执行效率。直接使用第三方类库的标记语言,提高了代码的复用性。下边就引入struts2 标签中的OGNL第三方标签库举例,如:“”。

2.2 OGNL简介

OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言,通过它简单一致的表达式语法,可以存取对象的任意属性,调用

对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。它使用相同的表达式去存取对象的属性。这样可以更好的取得数据。

OGNL可以让我们用非常简单的表达式访问对象层。例如,当前环境的根对象为user1,则表达式person.address[0].province可以访问到user1的person属性的第一个address的province属性。

这种功能是模板语言的一个重要补充,象jsp2.0,velocity,jelly等等,都有类似的功能,但是OGNL比它们完善得多,而且以一个独立的lib出现,方便我们构建自己的框架。

webwork和现在的Struts2.x中使用OGNL取代原来的EL来做界面数据绑定,所谓界面数据绑定,也就是把界面元素(例如一个textfield,hidden)和对象层某个类的某个属性绑定在一起,修改和显示自动同步。

和struts1.x的formbean相比,这样做的好处非常明显:在webwork中不需要为每个页面专门写formbean,可以直接利用对象层的对象。例如在对象设计中,我们的User和Person是分开的,而一个注册用户界面需要填写两者的内容,在webwork中,就可以保持后台的对象结构,把属于用户属性的界面元素用user.person.xxx绑定,把属于账号属性的界面元素用user.xxx绑定。

2.3 jQuery简介

JQuery是继prototype之后的又一个优秀的JavaScript库,它是轻量级的js库,它兼容css3,还兼容各种浏览器(IE6.0+,FF1.5+,Safari2.0+,Opera 9.0+),jQuery2.0及后续版本将不再支持IE6/7/8浏览器。jQuery使用户能更方便地处理HTML(标准通用标记语言下的一个应用)、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的HTML页面保持代码和HTML内容分离,也就是说,不用再在HTML里面插入一堆js来调用命令了,只需要定义id即可。jQuery是一个兼容多浏览器的javascript库,核心理念是write less,do more(写得更少,做得更多)。jQuery在2006年1月由美国人John Resig在纽约的barcamp发布,吸引了来自世界各地的众多JavaScript高手加入,由Dave Methvin率领团队进行开发。如今,jQuery已经成为最流行的javascript库,在世界前10000个访问最多的网站中,有超过55%在使用jQuery。

jQuery是免费、开源的。jQuery的语法设计可以使开发更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理、使用AJAX以及其他功能。除此以外,jQuery提供API让开发者编写插件。其模块化的使用方式使开发者可以很轻松的开发出功能强大的静态或动态网页。

jQuery,顾名思义,也就是JavaScript和查询(Query),即是辅助JavaScript开发的库。

jQuery的官方插件是jQuery UI。开发者可以任意扩展jQuery的函数库或

者按照自己的需求开发UI组件。网上已经有数以万计的jQuery插件,覆盖各种各样的需求。例如AJAX辅助、数据表格、动态列表、XML工具、拖曳、cookie处理、弹出层等等。jQuery 的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。

随着jQuery插件在网站建设过程中的使用率不断的增加,所以有必要跟进时代步伐开发出一些新的插件、代码片段,以此来巩固并提高前端用户体验,将用户体验提升到一个新的高度。其中包括Flat jQuery Price Slider、Gmaps jQuery Map Plugin 、FormChimp——MailChimp AJAX plugin for jQuery 等。

2.4 MySql 简介

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。 与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL 自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于 MySQL是开放源码软件,因此可以大大降低总体拥有成本。

Linux作为操作系统,Apache和Nginx作为Web服务器,MySQL 作为数据库,PHP、Perl、Python作为服务器端脚本解释器。由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统,被业界称为“LAMP”或“LNMP”组合。

3 需求分析

3.1 需求分析

依据软件工程的原理和方法,以及对系统的前期分析,初步规划系统所要实现的功能模块,满足前期的报告中提出对系统的功能要求;可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、管理的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。

(1)经济可行性

主要是对项目的经济效益进行评价,软件开发周期一般为2-3个月,开发所需硬件软件很普遍,该软件系统的安装、部署、运行和维护,开发费用不高。所以该系统在经济上是可行的。

(2)技术可行性

技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要。本系统采用Java语言编写程序,基于web浏览器上使用了MyEclipse集成开发平台,运用了MySql数据库和Hibernate数据层框架技术, 能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。硬件方面,可靠性越来越强,足够满足系统的开发。

(3)操作可行性

现在所有计算机都可以运行本系统,并且用户很容易的就可以操作本系统。因此从操作可行性的角度来衡量,本系统的开发方案也是可行的。

综合三方面的因素,开发基于Web的软件工程案例教学平台—交互演示子系统程序是可行的。

3.2 系统功能需求分析

根据需求分析中的模块划分,进行系统架构和网页结构设计,对模块的功能有一个初步的设计,并且将系统模块的功能流程有初步的分析,实现了部分模块的功能。系统主要是针对不同用户演示案例是的差别,功能模块如下图所示:

管理员用户功能如图3.1所示:

图3.1 管理员功能用例图

普通用户功能用例图如图3.2所示:

图3.2 普通用户功能用例图

3.3 系统非功能需求分析

(1)可用性:

基于Web的软件工程案例教学平台—交互演示子系统保证功能正常使用,界面操作简单,页面逻辑合理,交互形式多样,页面响应时间不超过10秒。

(2)性能:

基于Web的软件工程案例教学平台—交互演示子系统启动时间不超过10秒,可支持文件的在线预览。

(3)可维护性:

基于Web的软件工程案例教学平台—交互演示子系统任务书、设计文档和实现代码都有完整的备份。

4 系统详细设计

4.1 系统结构

本课题主要研究基于WEB的软件工程案例教学平台中的交互演示子系统的设计,所谓软件工程案例教学平台中主要与用户交互的系统之一,用户体验和交互特性很重要。

本课题在设计研究中综合考虑,最终从查询案例、案例预览、案例下载、案例在线预览、案例评论回复、案例收藏、相关案例推荐等几个方面来体现交互性。主要是在系统使用过程中来最大限度地调动用户的能动性,让用户积极参与到其中来。以此来满足交互演示的特性,弥补当前教育教学中存在的不足。

交互演示系统作为案例教学平台的主要前台交互方式,是整个系统的重点。

因此,设计一个方便、高效、功能丰富的演示系统是很有必要。经过前期设计分析,演示系统整体功能设计图如图4.1所示:

图4.1交互演示系统整体功能结构图

4.2 模块介绍

系统总共分为以下六个模块:

(1)用户登陆模块:

用于用户登录后查看自己的信息、修改信息和查看收藏的案例信息。

(2)案例预览模块:

案例预览模块主要包含查看案例简介信息、案例在线预览、案例下载等功能。

(3)案例评论模块:

案例评论模块主要包含用户对感兴趣或者认为经典的案例进行评论、对别人的评论进行回复,同时用户也可以删除自己评论的内容。

(4)案例收藏模块:

案例收藏模块主要是用户对喜欢的案例进行收藏,方便后续浏览,同时也可将收藏的案例移除,移除之后将不再在收藏列表中显示。

(5)案例下载模块:

案例下载模块主要是用户对喜欢的案例进行下载,在无网络的情况下可以继续进行相关案例内容的学习。

(6)老师推荐模块:

老师推荐模块主要是系统每次随机推荐一些老师在首页进行展示,用户可以进入查看相关老师的案例信息。在用户不知道搜索什么案例的时候给用户一些建议。

4.3 数据库结构设计

经过前阶段的分析,本课题主要相关的用户模型有案例模型、评论模型、用户模型。由于本系统是案例教学平台的一个子系统,将来会与另一课题---案例库及检索子系统进行整合。所以在数据库详细设计阶段,与另一课题相关的模型进行了整合,其中包括案例文件模型、导航模型等。相关实体模型如下:

(1)用户模型:

主要包含管理员、学生、老师等一些基本信息。

(2)案例模型:

主要包含案例的相关信息。

(3)案例文件模型:

在设计过程中为了实现一个案例多文件管理的需求,在此作者抽象出一个实体主要存放文件。

(4)导航模型:

在设计的时候需要对案例进行分类,同时为了满足首页导航信息也可以动态展示,在这里作者抽象出一个导航模型。用来管理案例的分类和导航栏目的显示。

(5)评论模型:

因为本课题是案例教学平台的一个子系统,为了与演示子系统相结合,这里也使用了另一课题的一个数据模型,即评论模型。这里主要包含用户对相关

案例的评论信息,同时也包含不同用户对相关评论的回复信息。

4.3.1 数据表E-R图

数据表

E-R图如图4.2 所示:

图4.2数据库E-R图。

4.3.2 数据表概要说明

从各实体的E-R图到在MySql中为整个系统建立了一个数据库,储存各类数据和控制信息。包含以下几层:

(1)表示层:展现给用户的界面,主要是显示数据和接收用户输入数据。

(2)服务层:针对系统整个业务逻辑的处理。

(3)数据访问层:主要包含数据库的相关操作,提供数据库访问的相关接口。

(4)Model层:定义数据库字段。

其中 Model层中定义的表如表4.1所示:

4.3.3 物理结构设计

(1)名称:用户表(user),如表 4.2所示,包括 userId,userName,userAccount,userPassword,userGender,userEmail,userSchool,userBirthday,userEducation,userPhotos,userCollege,userMajor,userClass,userType等字段,与评论表、案例表相关联。

(2)名称:案例表(work),如表 4.3所示,包括 workId,workName,workKeyWords,navigateId,workDestribute,workTechnology,workUploadDate,workClickNum,userId等字段,与导航表、用户表,案例文件表相关联。

(3)名称:案例文件表(workFile),如表 4.4所示,包括 fileId,fileName,filePath,workId等字段,与案例表相关联。

(4)名称:用户——案例表(user_work),如表 4.5所示,包括user_id,work_id等字段,此表为中间表,链接用户表和案例表。

(5)名称:评论表(comment),如表 4.6所示,包括 commentId,commentMessage,commentDate,toUserId,formUserId,parentId等字段,与用户表、案例表相关联。

(6)名称:导航表(navigate),如表 4.7所示,包括 navigateId,navigateName,parent等字段,与次表相关联,形成上下级映射。

5 系统实现

5.1 开发环境及工具

此系统的开发平台是:Windows 7系统

运行环境是:Windows 7系统,Tomcat 7.0 作为服务器 开发工具:MyEclipse 10 ;MySql 开发语言:Jsp、JavaScript、Java

5.2 交互演示系统整体设计

5.2.1 功能设计

本系统主要包含案例学习、评论回复、案例收藏、老师相关案例推荐等模

块。其中案例学习中又包含案例信息简介、案例在线预览、案例下载等几个小的功能模块。系统功能结构图如5.1所示:

图5.1 交互演示系统详细功能设计图

功能逻辑图说明:

(1)进入案例教学平台,用户可以有多种方式来获得案例列表。如通过导航分类、标题检索、详细检索、优秀老师推荐案例等。

(2)通过上述任意一种方式的到案例列表,用户可随意选择查看某一案例。 (3)进入某一案例之后可以看到本条案例的相关简介和跟本案例相近的案例推荐信息。

(4)进入案例详细页面,用户可以选择对案例进行评论、在线预览、下载学习和收藏等功能。

5.2.2 程序结构设计

(1)guodan目录:

guodan为项目的名称,也是项目的根目录。该目录下主要包含Src源码目录、项目所需的配置文件config目录、相关测试用例源码目录test文件、WebRoot等。

(2)WebRoot目录:

WebRoot为 Web 目录,包括程序初始化载入页面main.jsp、案例上传目录uploadFile、用户头像上传目录uploadPhoto、图片目录 images、 样式文件css、相关js验证文、WEB-INF 文件夹目录。其中css文件夹中包含styles.css样式文件; js文件包含jquery.validate.js、jquery1.42.min.js、myjs.js等js文件; WEB-INF中包含存放项目必须的jar文件的lib文件夹、存放jsp文件的jsp文件夹和web.xml文件等。 (3)Src目录:

Src 源码目录包含如下几个部分:

1)com.guodan.bs.domain:项目中所用到的实体类和hibernate操作相关的实体配置文件*.hbm.xml等文件。主要有Comment.java、Comment.hbm.xml、Navigate.java、Navigate.hbm.xml、User.java、User.hbm.xml、Work.java、Work.hbm.xml、WorkFile.java、WorkFile.hbm.xml。

2)com.guodan.bs.base:包含项目所需要的公共Action操作类BaseAction.java、公共Dao操作接口DaoSupport.java、公共Dao实现类DaoSupportImpl.java和公共Service接口ServiceSupport.java。

3)com.guodan.bs.converter:主要存放项目的全局自定义转换器工具类。DateConverter.java

4)xwork-conversion.properties:该文件是自定义转换器的配置文件。 5)com.guodan.bs.utils:该包中主要存放项目所使用到的公共工具类。主要有:DigestMD5Utils.java密码进行MD5加密工具类、InitListener.java Tomcat服务器启动时的初始化数据监听工具类、案例相关评论处理工具类ListAllCommentUtils.java、分页工具类Page.java、文件上传工具类UploadFile.java。

6)com.guodan.bs.dao:提供数据库相关操作的接口方法。该包下的文件有以下接口文件:CommentDao.java、NavigateDao.java、UserDao.java、WorkDao.java、WorkFileDao.java。

7)com.guodan.bs.dao.impl:提供数据库相关操作接口的实现类。该包下的文件有以下接口实现类文件:CommentDaoImpl.java、NavigateDaoImpl.java、UserDaoImpl.java、WorkDaoImpl.java、WorkFileDaoImpl.java。

8)com.guodan.bs.service:定义项目服务层相关接口。主要包括以下文件:CommentService.java、NavigateService.java、UserService.java、WorkService.java、WorkFileService.java。

9)com.guodan.bs.service.impl:主要包含服务层相关接口的实现类。主要包含以下文件:CommentServiceImpl.java、NavigateServiceImpl.java、UserServiceImpl.java、WorkFileServiceImpl.java、WorkServiceImpl.java。 (4)config目录:

config源码文件夹中主要包含struts2、hibernate、spring等开源框架的配置文件。

(5)test目录:

test源码文件夹中主要包含相关测试代码。 5.2.3 程序流程

系统流程图如图5.2所示:

图5.2系统流程图

5.3 重要模块实现细节

5.3.1 系统的首页界面

展示了网站的导航分类、检索入口、登陆入口、推荐案例和推荐老师。如图5.3未登录首页:

图5.3 未登录系统首页

如图5.4登录成功后首页:

图5.4 登陆成功系统首页

5.3.2 案例查看页面

该页面主要显示所查看案例的相关信息、相关推荐案例、评论信息和在线预览、下载等功能。页面效果如图5.5所示:

图 5.5 案例信息界面

5.3.3 案例收藏列表页

该页面主要包含用户所收藏的案例,收藏之后方便用户以后查看。效果如图5.6所示:

图5.6 案例收藏界面

5.3.4 相关代码如下 (1)案例收藏相关代码: /**

* 案例收藏 * @return */

public String collectWork() {

Work work = workService.getById(workId); // 获得session中存储的用户,有,则说明用户已经等里;否则饭后首页登陆。

User userSession = (User) ActionContext.getContext().getSession().get("user");

// 通过session中的用户ID得到用户的一个副本,进行收藏操作。因为hibernate的缓存原因,当前用户处于持久态,不能进行存储操作,否则会报主键冲突错误。因此只能来操作其副本,释放原有的用户缓存。

User user2 = userService.getById(userSession.getUserId()); if (user2 != null) { Set works = user2.getUserCollectWork(); if (works != null) { works.add(work); } else { works = new HashSet();

works.add(work); }

user2.setUserCollectWork(works);

userService.update(user2); ActionContext.getContext().getSession().put("user", user2); ActionContext.getContext().put("workId", workId); return "collectWork"; }

return "index";

}

(2)案例下载相关代码: /**

* 文件下载动作类 */

@Controller

@Scope("prototype")

public class FileDownloadAction extends ActionSupport { private Long number; // 文件ID private String fileName; // 文件路径名

@Resource

protected WorkService workService; @Resource

protected WorkFileService workFileService; public Long getNumber() {

return number; }

public void setNumber(Long number) {

this.number = number;

}

public String getFileName() { return fileName; }

public void setFileName(String fileName) { this.fileName = fileName; }

// 返回一个输入流,作为一个客户端来说是一个输入流,但对于服务器端是一个 输出流

public InputStream getDownloadFile() throws Exception {

WorkFile work = workFileService.getById(number); if(work != null){ this.fileName = work.getFilePath(); File file = new File(fileName); if(!file.exists()) return null; InputStream in = new FileInputStream(file); return in; }else{ return null;

} }

public String execute() throws Exception { if(getDownloadFile() != null){ return SUCCESS; }else{ return "error"; } }

}

text/plain

attachment;fileName="${fileName}"

downloadFile

1024

indexAction.action

(3)评论、回复相关代码: /** * 发表评论 * @return */

public String addComment(){

User fromUser = (User) ActionContext.getContext().getSession().get("user"); if(fromUser != null){ model.setFromtUser(fromUser); model.setCommentDate(new Date()); if(toWorkId != null)

model.setCommentWorks(workService.getById(toWorkId)); if(parentId != null) model.setParent(commentService.getById(parentId)); if(toUserId != null) model.setToUser(userService.getById(toUserId)); model); ActionContext.getContext().put("workId",toWorkId); return "addComment"; }

return "index";

}

(4)前台用户输入验证:

jQuery.extend(jQuery.validator.messages, { required : "不能为空", remote : "请修正该字段",

email : "请输入正确格式的电子邮件", url : "请输入合法的网址", date : "请输入合法的日期",

"),

"),

dateISO : "请输入合法的日期 (ISO).", number : "请输入合法的数字", digits : "只能输入整数", creditcard : "请输入合法的信用卡号", equalTo : "请再次输入相同的值", accept : "请输入拥有合法后缀名的字符串", maxlength : jQuery.validator.format("请输入一个 长度最多是 {0} 的字符串minlength : jQuery.validator.format("请输入一个 长度最少是 {0} 的字符串rangelength : jQuery.validator.format("请输入 一个长度介于 {0} 和 {1} 之间的字符串"),

range : jQuery.validator.format("请输入一个介于 {0} 和 {1} 之间的值"), max : jQuery.validator.format("请输入一个最大为{0} 的值"),

min : jQuery.validator.format("请输入一个最小为{0} 的值")

});

/**

* 添加评论 addComment

*/

$().ready(function() {

}); $(".addComment").validate({ rules : { commentMessage : "required" }, messages : { commentMessage : "请输入评论内容" } });

6 测试

系统测试是项目的一个不可缺少的环节,任何一个项目都必须经过反反复复的测试,才能更大限度的解决项目上线后带来的麻烦,发现一些系统潜在的问题,及时修复,这样才能提高系统的执行效率和用户体验。我们应该尽可能多的将问题解决在系统上线之前。所以,系统测试是本课题的另一个重要环节。本章将介绍整个项目的测试方式和测试结果。

6.1 软件测试的目标

测试是为了发现项目中潜在的功能错误和逻辑错误。一个好的测试能够发现系统潜在的危险,因为任何一个程序设计实现者都不可能完全想到用户会输入什么,怎么使用。在使用过程中这就可能出现一些无法预料的错误,小的失误不会影响系统运行,但会影响用户体验;大的错误则会造成整个系统的瘫痪,造成重大损失。所以,在项目投入使用之前对其进行全面的测试是不可缺少的。同时也应该进行全面的测试,力争发现更多潜在的危险,以免系统在以后的运行中带来不必要的损失。

6.2 测试计划

目前比较流行的测试方法有白盒测试和黑盒测试,两者各有自己的特色。白盒测试对系统测试比较全面,能够发现一些系统可正常运行的逻辑错误,同时这种测试对测试人员的要求也比较高,测试人员必须有很强的代码编写能力。黑盒测试也叫功能测试,就是一般测试系统所涉及的各个测试用例,进行系统的功能测试。这种方法无法发现系统中存在的逻辑错误,一些潜在危险无法预知。

介于本系统主要是基于软件工程案例教学平台的交互演示子系统,也就是该平台的前端,后台逻辑数据处理都是使用其他人员提供的公共操作方法进行操作,并没有涉及服务层和数据层的相关逻辑操作,因此本课题主要是对交互演示系统的基本功能进行简要测试。

6.3 测试结果

系统在首页提供统一的入口,整体页面设计如下图6.1所示:

图6.1 系统测试首页页面

点击首页推荐案例,进入案例详细页面。如图6.2所示:

图6.2案例详细信息页面

此页面,用户可以看到案例的简介,可以下载案例、在线预览案例、评论案例和收藏案例,当用户想要评论案例和收藏案例的时候必须先登录。

在系统首页用户可以在登陆栏目中登陆,登陆时需选择登陆类型和输入正确验证码,点击验证码可刷新验证码。登陆结果如图6.3所示:即登陆成功。

图 6.3用户登录成功页面

点击用户姓名可进入后台管理页面。可查看用户相关信息和修改信息,同时也可查看用户收藏的案例。页面效果如图6.4所示

图 6.4用户后台管理页面

点击图6.4

页面中的个人信息管理可以看到个人信息,下边的修改按钮可进入个人信息修改页面。如图6.5所示:

图6.5用户信息修改页面

点击图6.4

页面中的收藏夹可以查看收藏夹中收藏的案例信息,页面效果如图6.6所示:

图6.6用户收藏案例列表

6.4 测试评价

经过测试,本文对不同用户进行了测试。测试功能有案例信息查看、评论回复、在线预览、下载,收藏,整体功能完善。上一节截取主要内容进行截图说明。总结得出初步结论。交互演示系统各项功能完整,实现了项目初期预设的功能。整体感觉不错。

在于另一课题案例库和检索子系统整合之后,项目能够顺利运行,各项功能完整。很好的实现了软件工程案例教学平台的相关功能。至此,本科题完满完成。

7 结论

本课题研究基于web的软件工程案例教学平台中的一个子系统---交互演示子系统,经过几个月的努力终于实现了项目需要的各种功能要求,并成功与案例库和检索子系统整合,运行测试成功。在设计中,我学习了java web的相关开发技能,熟悉了jQuery作为前端js框架的优秀特点和开发的快捷性,感受到了jQuery.validate开源验证框架的灵活、丰富和性能表现,理解了struts2作为MVC框架在处理表单数据的简单方便性,了解了jsp作为动态页面在执行效率和更新内容时的方便。经过本次课题研究科项目实战,我对Web模块建立和组成又有了深刻的理解,在项目开发方面又有了一次提高。但是还存在许多不足,例如:目前实现的文件在线预览只是针对部分文件,对于office相关文件的预览还是只能依赖于本地office组件,不能完全脱离本地office;项目部署和数据库部署在同一台数据,没有进行数据库访问的过滤,容易造成安全隐患。在后续的工作和学习中,我将更加努力,多方面的考虑系统架构的设计和安全性能的防护。

在此次设计开发中,不断有新的问题出现。例如初期的文件下载,经过反复考虑最终使用struts2的下载插件,在页面验证方面刚开始写了好多验证方法,都很复杂有的不能满足需求,最后在老师的指导下学习并使用了jQuery.validate.js前段验证框架,很好的解决了验证逻辑编写麻烦的问题。文件在线预览是一个很麻烦的问题,在网上搜了好多,方法也很多。最终采用了浏览器可以解析pdf文件直接预览进行了实现,但是该方法存在浏览器兼容性的问题,目前还没有适应所有的浏览器,但是在IE下边测试已经完美通过,算是成功了一大截。在后续的开发学习中,需要更加深刻的了解各个浏览器的差异,以及对现有js、HTML的支持情况。努力适配所有浏览器。

这次毕业设计中遇到的问题,总结以下几点关于程序需求、程序分析和步骤和技巧。在程序遇到问题或者实际现象与理论设计不符合的情况下,首先应该进行理论分析,所以基础的理论和概念是很重要的,理论分析可以为正向和反向。正向是从设计的原理处出发检查,重点是检查之前的设计是否可行和是否存在未考虑的情况或者纰漏;反向是从开发遇到的实际现象出发,分析造成这种现象可能的原因。随后,根据理论分析得出检查程序语句。不过也必须说明的一点,积累的经验对于系统程序的开发是很重要的。

本次毕业设计的制作总共花了将近四个月的时间,只有亲身经历过后,才知道其中的滋味。通过这次毕业设计,我收获了很多。首先通过对程序的设计和开发有了更多的了解和接触,更好的提高了我的编程能力。有利于以前所学的知识的巩固和相关知识得进一步学习,对软件的整体开发流程和方向有了更好的把握,其次对相关文档的编写有了很深的了解,为今后的开发奠定了扎实的基础。

参考文献

[1] 明日科技; HTML5从入门到精通. 清华大学出版社, 2012年09月

[2] David Flanagan;JavaScript权威指南第6版;机械工业出版社 2012.10

[3] Bruce Eckel(美) 陈昊鹏(译). Java编程思想第4版机械工业出版社,2010

[4] 朱晓 卢瀚. Java Web开发学习手册.电子工业出版社,2011

[5] 刘易斯(美).Java程序设计教程电子工业出版社,2009

[6] 袁江;jQuery开发从入门到精通;清华大学出版社;2013年06月

[7] 霍尔(美). Servlet与JSP核心教程.清华大学出版社,2009

[8] 高佩红. 精通Hibernate:Java数据库持久层开发核心编程.清华大学出版 社,2009

[9] (美)沃尔斯|译者:耿渊,张卫滨;Srping In Action; 人民邮电

[10] 陆舟; Struts2技术内幕; 机械工业出版社 2012

[11] 黄缙华; MySQL入门很简单; 清华大学出版社 2011

[12] 刘志成 宁云智 武俊琢; JSP程序设计实例教程(第2版);人民邮电出版社

[13] 李俊瑞,田禾.基于校园网络环境的网络教学平台的建设与开发,

2008, 大众科技, vol.02, 144-145

[14] 冯宁, 基于网络教学平台的数学教学模式刍议, 2009, 教育探索,

[15] 葛秀慧 田浩 金素梅.计算机网络安全管理(第2版).

华大学出版社.2008.5

[16] 王珊 萨师煊.数据库系统概论(第四版). 高等教育出版社.2006.5

[17] J. Falkner, B. Galbraith, R. Iranit, 司光亚, 牛红. JSP Web 编程指南,

北京, 电子工业出版社, 2002, 63-64

[18] 冉春玉 ,白炳杉. MVC 模式及 Struts 框架应用研究, 2004, 武汉

理工大学学报, vol.26, 66-69

[19] 王珊,陈红.北京.数据库系统原理教程. 清华大学出版社.2004.6.

[20] 李钟蔚. Java开发实战宝典. 清华大学出版社.2010-1-1

[21] 庞春辉.大连理工大学.基于Web企业管理系统的设计.

大连理工大学.2008

[22] 李峰,晁阳. JavaScript开发技术详解. 清华大学出版社.2009

[23] Karl E.Wiegers等.软件需求. 机械工业出版社.2005

[24] Bear Bibeault,Yehuda Katz. jQuery实战. 人民邮电出版社.2010.2

[25] 杨晓南,甘正华.数据库系统开发设计结构功能与特点.2006(4):19-20

[26] 卢潇主编.软件工程.北京:清华大学出版社,

北京交通大学出版社,2005.1

[27] Cohoon,James P.Java program design.McGraw-Hill Highter

Education,2004

[28] Dave Crane / Eric Pascarello ; AJAX in Action ;Manning Publications

[29] Hortmann,CayS,CoreJava2,volume,Advancedfeatures.Posts &

Telecom Pr,2006

[30] Java 2 Platform Enterprise Edition Specification Version 1. 2.Sun Microsystem,

Available at Http://java. Sun. Com/j2ee/docs.HTML

[31] Bacon、Tim Harris编著,Operating System Concurrent and Distributed

Software Design.北京:电子工业出版社,2005.5

[32] Sun Microsystems, Inc. Java 2 Platform Enterprise Edition

Specifi2 cation. USA, Public Draft, 1999

[33] Java 2 Platform Enterprise Edition Specification Version 1. 2[EB].Sun

Microsystem, Available at Http://java. Sun. Com/j2ee/docs.HTML

[34] J2EE Development Frameworks.IEEE, 2005, Computer world, vol.09

[35] R.Grimm, H.Eichstadt. Threat Modelling for ASP.NET. Designing secure

Applications, Eighth IFIP TC-6 TC-11 Conference on Communications and Mutimedia Security(CMS 2004), UK, 2004

致 谢

在本次毕业设计中,徐飞老师认真负责的工作态度和深厚的理论水平都给我留下了深刻的印象,也使我收益匪浅。从开题一直到最后的答辩过程,老师都给予了我细心的指导,在理论和实践中,都给予我很大的帮助,使我得到不少的提高,无论在专业技能还是待人接物方面,都学到了很多。使我们对问题进行深入分析,研究解决方式,搜寻答案的能力有了显著的提高。这对于我以后的工作和学习都有一种巨大的帮助,感谢他细心而又耐心的辅导。

我深感幸运能够亲身经历这个飞速发展的信息时代,亲身感受各种高新技术为我们的生活所带来的巨大改变。更感到幸运的是大学四年能够在诸多优秀老师的指导和帮助下学习,使我四年来有了很大的收获,各方面的能力都得到了很大提高。

谨借此机会感谢西安工业大学的培养,衷心的感谢大学四年来所有学习上生活上帮助和鼓励过我的老师同学们,能在西安工业大学遇到老师和同学们,能在与你们学习生活四年,荣幸之甚!在此也希望西安工业大学越来越好!

毕业设计(论文)知识产权声明

本人完全了解西安工业大学有关保护知识产权的规定,即:本科学生在校攻读学士学位期间毕业设计(论文)工作的知识产权属于西安工业大学。本人保证毕业离校后,使用毕业设计(论文)工作成果或用毕业设计(论文)工作成果发表论文时署名单位仍然为西安工业大学。学校有权保留送交的毕业设计(论文)的原文或复印件,允许毕业设计(论文)被查阅和借阅;学校可以公布毕业设计(论文)的全部或部分内容,可以采用影印、缩印或其他复制手段保存毕业设计(论文)。

(保密的毕业设计(论文)在解密后应遵守此规定)

毕业设计(论文)作者签名:

指导教师签名:

日期:

毕业设计(论文)独创性声明

秉承学校严谨的学风与优良的科学道德,本人声明所呈交的毕业设计(论文)是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,毕业设计(论文)中不包含其他人已经发表或撰写过的成果,不包含他人已申请学位或其他用途使用过的成果。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了致谢。

毕业设计(论文)与资料若有不实之处,本人承担一切相关责任。

毕业设计(论文)作者签名:

指导教师签名:

日期:

32


相关内容

  • 就业方向及导师推荐
    专业名称:基础数学(应用数学) 专业概况:数学系一般开设基础数学.应用数学两专业,而这两个专业方向基本是相通的,都是为培养数学和其他高科技复合型人才打下基础.基础数学学科较多地涉及:代数.拓扑.几何.微分方程.动力系统.函数论等,它的专业方 ...
  • 西安航空职业技术学院毕业生自荐信
    自 荐 信 尊敬的XXXX 单位领导: 您好!非常感谢您在百忙之中阅读我的材料! 我是西安航空职业技术学院XXXXX 专业的应届毕业生.在大学三年紧张而有序的学习生活中,我注重专业知识的学习,使我具有了比较宽厚扎实的理论基础和从事工作能力, ...
  • 校园代理策划书
    公 司 项 目 案 唯有真诚合作,才能共赢天下! 一. 运韬信息报: 收费标准:全版800元/期,半版400元/期,小格子12元/期(学生6元/期) 代理提成:20% 二. 驾校报名: 非保过班 天职驾校 3400元. 提成200 天安驾校 ...
  • 郑州大学计算机研究生导师信息
    1. 导师姓名:范 明 科研方向:数据库 197k年郑州大学毕业,后在美国.加拿大进修及合作研究,教授,硕士生导师.省重点学科计算机软件与理论的学术带头人,兼任中国计算机学会数据库专业委员会委员.中国计算机学会CAD与计算机图形学专业委员会 ...
  • 十大国家重点振兴产业对应大学专业揭秘(2)
    http://www.sina.com.cn   2011年01月28日 10:49   新浪教育 电子信息科学与技术对接专业--电子信息科学与技术 电子信息产业是研制和生产电子设备及各种电子元件.器件.仪器.仪表的工业,不仅总量增长势头迅 ...
  • 王村公路隧道初步设计任务书1
    专业名称: 教研室(系)主任: 批准日期: 西安工业大学毕业设计(论文)任务书 院(系): 建筑工程学院 专业: 土木工程 班级: 学生姓名: 二.毕业设计(论文)工作自 2012 年 月 日起至 2012 年 月 日止 三.毕业设计(论文 ...
  • 机械设计制造及其自动化考研方向
    机械设计制造及其自动化考研方向 机械工程一级学科所属的经典二级学科有四个:机械制造及其自动化.机械设计及理论.机械电子工程以及车辆工程.其中机械制造以工艺流程.工装夹具为主,机械设计以人机工程.结构设计为主,机械电子工程以信息处理.自动控制 ...
  • 英语专业考研方向及就业形势分析
    英语专业研究生11大热门研究方向,就业形势分析 考研热门专业一样,英语专业研究生招生的研究方向设置非常细,不同学校的方向设置类别不一,名称也各异. 比如上海外国语大学英语语言文学专业下设有语言方向.文学方向.教学法方向.翻译学方向.口译学方 ...
  • 西安交通大学20XX年"少年班"招生简章
    西安交通大学2010年"少年班"招生简章 西交招[2009]11号 经教育部批准,西安交通大学从1985年开始招收"少年班"大学生.其目的是不拘一格选拔智力超常少年,进行创新教育与素质教育相结合的教学 ...
  • 英语专业研究生11大研究方向及就业解析
    1. 英语专业研究生11大研究方向及就业解析(转) 与其他不少考研热门专业一样,英语专业研究生招生的研究方向设置非常细,不同学校的方向设置类别不一,名称也各异. 比如上海外国语大学英语语言文学专业下设有语言方向.文学方向.教学法方向.翻译学 ...