基于java web新生报到系统设计与实现

第1章 绪论

本章首先对建设新生报到系统的背景,传统新生报到管理所存在的问题进行分析,给出建立新生报到系统的意义,同时提出建设网站的设计思路,最后给出本论文的各章结构介绍。

1.1 引言

21世纪是富有挑战性的世纪。在世纪之交,中国决定实施“科教兴国战略”,意义十分重大。这一战略的实施,将使古老而文明的中华民族,在21世纪再次腾飞,站在世界科技强国之林。实施科教兴国战略是中国的一项跨世纪的重大战略决策,是邓小平建设有中国特色的社会主义理论的重要组成部分。我们深入探索领会这一战略决策的理论内涵、运行机制和实践特点,具有重要的理论和实际意义。

根据资料,下面是我国进入21世纪以来高校的招生人数和在校人数:

——2000年,全国普通高等学校1041所,本专科招生221万人,在校生556万人。

2000年,基本普及九年义务教育和基本扫除青壮年文盲的目标初步实现。
普及九年义务教育人口覆盖率达到85%,青壮年文盲率下降到5%以下。

——2001年,全国普通高等学校招生268万人,比上年增招48万人,在校生719万人。

——2002年,全国普通高等教育招生321万人,在校生903万人。

——2003年,全国普通高等教育招生382.2万人,在校生1108.6万人,毕业生187.8万人。

——2004年,普通高等教育招生447.3万人,在校生1333.5万人。

——2005年,全年普通高等教育招生505万人,在校生1562万人。

——2006年,普通高等教育招生540万人,在校生1739万人。

——2007年,普通高等教育招生566万人,在校生1885万人。

——2008年,普通高等教育招生607.7万人,在校生2021.0万人。

由此,可以看出,高校每年招生人数都呈现出了较高的增长。

1.2 项目背景

进入21世纪以来,从我们身边就能很清楚的看到,计算机已经开始普及,并开始运用于科学研究、军事、医学、农业等几乎所有的领域。信息技术正是基于计算机而发展起来的,随着计算机的大量使用,现代信息技术也逐渐走入人们的生活,人们越来越离不开现在的信息。可以说我们已经进入了信息时代。

在信息时代里,企业庞大的管理信息数据能及时的出现在管理者的眼前,企业管理者们已经能够通过网络在世界各地,随时随地查看公司各项报表数据,从而让各项决策变的更加的及时、准确。办公室随着信息化程度的不断提升,也不在是唯一固定的地点,这些在企业信息化程度不断提高的今天,已经成为了现实。

信息时代让数据统计更加的快速,准确;也让各项分析数据及时传递到我们身边。国家各部门通过信息渠道对各行各业数据的统计,让民众也有了客观认识。我们不仅仅通过信息渠道了解到国内外新闻,娱乐节目;同时也了解到国家内外的各项经济数据。也正是因为信息渠道的快速传递,才带来了信息行业的繁荣。信息控制在各行各业应用广泛,更是让我们的生活更加的便利。信息管理无处不在,信息化的繁荣不仅让今天的我们沟通没有距离,购物没有界限。信息管理是当前经济高速发展的产物。

1.3 问题概述

资料统计显示每年大学生入学人数都在上升,面对如此巨大的信息量,如果通过手工操作来完成,这样将会耗费大量的人力、物力,而且办事效率还低。

传统的手工完成大学生入学报到主要存在问题如下:

  1. 办事效率低,耗时过长,对于每一个学生来报到,都需要手工将学生信息写入。
  2. 不便于查找,对于已经录入的学生信息,等需要查找时,需要翻阅很多的信息才能找到。
  3. 需要的办事人员过多,由于学生来的时间不固定,或许一段时间内会来很多,这就需要安排多个办事人员。
  4. 不便于保存,对于手工记录在纸上的东西,纸质的保存占用大量的空间,而且时间一久还很容易坏。

1.4 建立团购网站的意义

目前,正值计算机开始管理信息的时代,计算机管理信息相比传统的手工管理来说,节省时间、人力、物力、财力,而且办事效率高,数据的可复制性、可保存性高。

鉴于上述出现的问题和需求,本论文研究并开发了新生报到系统,通过此网站系统可以轻松方便的录入学生报到信息,查阅所报到过得学生信息,网页浏览及互动速度快,并能对数据进行快速、准确地统计,帮助管理人员更好地管理学生的报到情况信息。

     总的来说,通过使用该新生报到系统,不仅减少了大量的劳动,而且实现学生报到信息的轻易复制传播性,查询便利性,保存的高效性。

1.5 设计思路

系统采用B/S三层架构,利用jsp技术结合MySQL的方式对系统进行编写,将系统设计为两大模块:

    1、前台,具有大学公告、校园新闻、校园风光、学生个人信息查询等功能。

2、后台,主要实现管理员对上述模块的信息的查询、添加、修改、删除的操作,还有系统管理员的添加等功能。

    本次系统设计中本人主要完成的工作有:利用所学的编程技术实现功能的需求分析、概要设计、详细设计、编码与实现并设计报告的撰写。

1.6 章节安排

第1章,绪论,讲述了新生报到系统的开发背景、当前新生报到存在的问题和开发系统的意义,系统开发的设计思路。

第2章,系统实现相关技术,讲述开发工具及相关技术,语言:jsp、MySQL,工具:MyEclipse、Tomcat,结构:B/S结构。

第3章,对系统进行分析,包括需求、目标、性能需求、业务流程图、数据流程图,用到的数据字典,对于系统可行性进行分析。

第4章,系统总体设计,从运行环境开始,到模块设计,数据库表设计。

第5章,系统详细模块实现,包括关键代码和实现界面。

第6章,总结,总结本次毕业设计中遇到的困难和处理方法以及通过这次设计得到的进步。

第2章 系统实现相关技术

本网站应用了jsp技术。该网站系统具有一个完整网站系统的基本功能,网页编写中也采用了HTML的部分技术。

    本系统采用MyEclipse 开发工具结合MySQL,界面简洁,一目了然。本章将会对系统所用到的关键技术进行研究。采用B/S三层结构。

2.1  JSP简介

JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。该技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。 JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。在传统的网页HTML文件(*htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无Frame。

由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。当与Java 2平台,企业版(J2EE)和Enterprise JavaBean技术整合时,JSP页面将提供企业级的扩展性和性能,这对于在虚拟企业中部署基于Web的应用是必需的。

 JSP技术特点

  JSP技术所开发的Web应用程序是基于Java的,它拥有Java语言跨平台的特性,以及业务代码分离、组件重用、基础Java Servlet功能和预编译等特征,特征如下:
1、跨平台
2、业务代码分离
3、组件重用
4、继承Java Servlet功能
5、预编译

2.2 SQL介绍

Structured Query Language(结构化查询语言)的缩写就是我们所熟知的SQL。SQL是一种功能齐全的数据库语言,是专为数据库而建立的操作命令集。使用它的时候,“怎么做”是不用使用者考虑的,仅仅只需要发出“做什么”的命令。SQL优点可归纳为:功能强大、简单易学、使用方便。这些优点使它成为了数据库操作的基础,甚至目前几乎所有的数据库都支持SQL。

    SQL语言是一种交互式查询语言,允许用户直接查询存储数据,但它不是完整的程序语言,如它没有DO或FOR 类似的循环语句,但它可以嵌入到另一种语言中,也可以借用VB、C、JAVA等语言,通过调用级接口(CALL LEVEL INTERFACE)直接发送到数据库管理系统。SQL基本上是域关系演算,但可以实现关系代数操作。

SQL数据库的数据体系结构大体上是三级结构,但使用术语与传统关系模型术语不同。在SQL中,关系模式(模式)称为“基本表”(base table);存储模式(内模式)称为“存储文件”(stored file);子模式(外模式)称为“视图”(view);元组称为“行”(row);属性称为“列”(column)。名称对称如^00100009a^。

SQL语言具有的特点:基本上独立于数据库本身、操作系统网络使用的机器、,DBMS产品基于SQL的可以运行的范围很广,包括:小型机大型机各种计算机系统个人机、基于局域网工作站,使用SQL语言编写的产品具有良好的可移植性。可以看出标准化的工作是很有意义的。早在1987年就有些有识之士预测SQL的标准化是“一场革命”,是“关系数据库管理系统的转折点”。数据库和各种产品都使用SQL作为共同的数据存取语言和标准的接口,使不同数据库系统之间的互操作有了共同的基础,进而实现异构机、各种操作环境的共享与移植。

2.3 HTML技术介绍

HTML的英文全称是"Hypertext Markup Language",中文译为“超文本标记语言”。“超文本”就是指页面内可以包含图片,联接,甚至音乐,程序等非文字的元素。在几年前作为SGML的一个子集开发的。

一个HTML文件中包含了所有将显示在网页上的文字信息,其中也包括对浏览器的一些指示,如哪些文字应放置在何处,显示模式是什么样的等。如果你还有一些图片、动画、声音或是任何其它形式的资源,HTML文件也会告诉浏览器到哪里去查找这些资源,以及这些资源将放置在网页的什么位置。浏览的网页就是由HTML语言编写出来的。虽然HTML是一种语言,但HTML不是程序语言,如 C++ 和 Java 之类,它只是标示语言,你只要明白了各种标记的用法便算学会了HTML.HTML 的格式非常简单,只是由文字及标记组合而成,因此任何文本编辑器都可以制作HTML页面。

在编辑器中输入html代码即可完成对网页的设计,如果在其中加入VB,JAVA等脚本文件以及数据库连接有关的语句指令,便可对已知数据进行查询,从而生成动态网页的一部分。

2.4 MySQL简介

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。

MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。所以本次毕业设计使用MySQL数据库。

2.5 MyEclipse相关知识

2.5.1 MyEclipse简介

    Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具。

MyEclipse企业级工作平台(MyEclipseEnterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate

2.5.2 MyEclipse连接MySQL

接下来介绍Myeclipse连接数据库mysql

2.6 B/S三层体系结构

Browser/Serve:(B/S)结构是一种以Web技术为基础的新型MIS系统结构模式。B/S结构是C/S结构的一种特殊形式,主要应用于Internet环境或者是覆盖广阔领域的Intranet环境。B/S结构也有两层、三层之分。静态网页采用的是两层B/S结构,而动态网页则是采用三层B/S结构。一个商业或企业MIS系统主要指支持动态网页的三层或多层B/S结构。

B/S结构把C/S结构中的服务器部分分解为一个数据库服务器与一个或多个应用服务器(Web服务器),从而构成一个三层或多层结构的客户服务器体系。

第一层表示层(浏览器)是用户与整个系统的接口,客户机应用程序精简到一个通用的浏览器软件,如微软的IE浏览器将HTML代码转化成图文并茂的网页呈现给用户。网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求,这个后台就是第二层的Web服务器。

第二层逻辑层(Web服务器)将启动相应的进程来响应第一层中用户提出的请求,动态生成一串HTML代码,并在其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。最后一层数据库服务器负责协调不同的Web服务器发出的SQL请求,管理数据库。

第三层数据层(后台数据库)负责管理对数据库数据的读写。

以上三层结构如图1-1所示。

图1-1 B/S结构模式

在B/s体系结构的系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。B/S结构简化了客户机的工作,客户机上只需配置少量的客户端软件。服务器将负担更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。

这种结构不仅把客户机从沉重的负担和不断对其提高的性能的要求中解放出来,也把技术人员从繁重的维护与升级工作中解脱出来。由于客户机把事务处理逻辑部分给了功能服务器,使客户机成为“瘦客户”,不再负责处理负责计算和数据访问等关键事务,只负责显示部分,所以维护人员不再用为程序的维护工作奔波于每个客户之间,而把主要精力放在功能服务器上程序的更新工作。这种三层结构在层与层之间相互独立,任何一层的改变都不会影响其他层的功能。

  1. 系统分析

    了解用户要求。此用户即为系统的使用人员(管理员,浏览用户,注册用户)。了解他们在系统功能、性能等方面的要求及用户在硬件配置、开发周期处理方式等方面的意向与打算。把用户要求成文,完成系统分析报告。系统的逻辑模型由一系列的图表和文字组成。在逻辑上描述了系统的目标和所具备的功能于性能。

3.1 系统需求分析

    新生报到系统是大学校园网信息化建设重要组成部分,系统由三个大模块组成:新生综合数据管理模块、新生报到流程控制模块和新生个人信息查询模块。新生综合数据管理模块,是整个系统的数据源,由学校各部门及院系提供综合、准确、实时的新生信息,并且可以合理的管理和统计这些信息;新生报到流程控制模块,显示了新生报到的具体步骤,以及一个新生完成了哪些步骤,还需要哪些步骤才能完成报到;新生个人信息查询模块是专门为新生提供的,新生在这里可以查询自己的基本信息,了解自己的报到状况,获取与入校后生活学习相关的若干信息。

    通过对各大高校新生报名程序的认真调研,得出新生报到的基本流程:新生携带报到通知书到报到处报到,完成学生学籍生成、学生宿舍安排、学生学费缴纳统计、班级分配管理。

要完成相应的新生报到流程之前,系统管理员要有登陆系统、密码修改、宿舍管理、班级管理、辅导员信息管理、财务处信息管理、专业管理、宿舍楼管理等使用资源的权限,并完成新生报到的前期基础信息导入工作。

系统实现功能如下(分前台和后台两个大模块进行分析):

前台功能模块

大学公告:在第一时间传达学校的通告,让学生更好的了解学校相关信息

校园新闻:发布学校近来的一些新闻

校园风光:学校美丽风景的展示

学生个人信息查询:学生可以用指定的帐号登陆系统,查看自己的相关信息,了解自己的报到流程及报到进度。

系统管理:后台管理员、辅导员、财务处登录入口

后台功能模块

用户数据管理:管理员管理各级别用户的相关数据及控制用户的操作权限

宿舍楼管理:管理员管理宿舍楼信息,可以针对宿舍进行添加和删除。

学生宿舍管理:管理员匹配学生宿舍信息,可以为学生分配、更换宿舍。

学生学籍管理:管理员针对导入的学生的学籍信息进行管理,标记学生年级、专业、所属管理员等信息。

新生信息管理:管理学校各部门及院系提供的新生信息

辅导员管理:管理员管理老师信息,添加删除辅导员。

班级管理:管理员管理班级信息及所属专业。

专业管理:管理员分配学院所有专业信息。

辅导员查询及管理:辅导员登录并查询自己管理学生信息、以及更改所辖学生信息。

财务处管理:财务处针对学生缴费情况进行录入更改、查看。

新闻发布管理:管理员分别管理和发布、修改、删除学校公告、新闻、风光照片墙

新生报到模板制定:制定新生报到的流程,新生根据报到的先后步骤,办理相关报到手续(新生携带报到通知书到报到处报到,完成学生学籍生成、学生宿舍安排、学生学费缴纳统计、班级分配管理。)

新生报到流程管理:接受新生提交的相关报到申请,审核学生报到信息,并且限定新生只能按照规定的流程报到,如果不按照流程,不能继续报到

数据导入导出:新生、宿舍的相关信息可以导入导出

报到回执单的打印:新生完成相关报到流程,可以打印出回执单,作为入住的凭据

系统需求方面还包括以下内容:

用户界面需求

表3-1 用户界面需求表

需求名称

详细要求

风格

界面友好,布局合理,美观大方,实用性强,操作简单

颜色

淡蓝色系为主

分辨率

1024*768

软硬件环境需求

表3-2 软硬件环境需求表

需求名称

详细要求

运行速度

系统启动运行时间不超过5min,人机界面交互时间不超过5s

容量

占用内存大于15MB

操作系统性能

10/100M bit/s

网络传输率

10/100M bit/s

产品质量需求

表3-3 产品质量需求表

主要质量属性

详细要求

正确性

经过测试达到了预期的效果

健壮性

具有一定的健壮性

可靠性

容错能力强,测试质量合格

性能,效率

性能优,效率高

易用性

跨平台操作

清晰性

安全性

安全可靠性极佳

可扩展性

优良的可靠的接口

兼容性

可作用于任何平台

可移植性

正确的进行软件配置后,就可以正常运行程序

3.2 系统性能分析

精度

(1)、在计算机执行删除数据操作时,防止由于程序自身的原因而造成多删除了数据或者删除失败的情况发生;

(2)、在数据修改时,要能够保持对应的准确性;

(3)、在数据增加时,防止出现由于程序自身的原因导致的增加操作失败或者重复增加数据的情况发生;

(4)、每月要求15M的额外的数据存储空间。

数据库要有安全保障性能,必须只有授权的用户才能操作。同时,所有数据采用集中式存储,数据位于数据库服务器上。

时间特性要求

在运行环境规定的条件下,当用户执行修改、增加以及删除等操作时,用户单次的操作响应时间限制在2秒内。

数据查询时,程序能够返回100行数据,并且单次操作的响应时间限制在2秒内。

灵活性

(1)、操作方式:

在一般的应用环境下,通过鼠标或者键盘进行程序的输入和输出操作,对于用户界面显示的(提交、重置等)执行按钮,通过点击鼠标完成,不过,使用必须有只依靠键盘就能够对界面执行定位操作,也就是说,对于没有安装鼠标的计算机,也能够使用该系统的全部功能。

(2)、运行环境:

要求程序能够运行于Windows XP及后续的MS高级操作系统之上。

故障处理要求

(1)、当使用系统的用户输入不合理数据时,系统可以通过界面给予相应的提示信息,系统不能由于错误的输入导致系统发生运行错误,或者系统程序停止运行;

(2)、当程序运行的时候,系统能够对网络通信或者服务器故障识别并给出提示,在故障排除之后,程序能够恢复正常的运行;

(3)、要求数据库有备份机制,防止某些不可控因素造成全部数据的丢失。

其他专门要求

1、可扩充性:系统在开发完毕以后,应允许进行功能的扩展或者功能的重新解释和实现。

    2、健壮性:系统应该保证在一次开机三个月之内稳定运行,数据库在一些灾难事故中能够在系统安装好之后,两小时内恢复。

3.3 可行性分析

3.3.1 技术可行性

大学课程中的《数据库原理》,《操作系统知识》,《网络基础》等多门课程为整个课题开发提供了坚实的基础。C#是一种相对简单的语言,SQL Server也是一种简单的数据库,所以技术难度并不高。

3.3.2 操作可行性

该系统如投入使用,预期作到界面友好,管理方便,使用简单,管理人员经过培训,也是完全能够使用本系统管理书店的相关信息的。

3.3.3 经济可行性

本系统无论从开发成本,相关材料等各方面看都具备经济可行性。开发成本低,相关书籍都可以在图书馆借到,需求分析相对简单,只需与指导老师进行交流,充分了解工作需求、研究步骤,而无须多少经费,并且在开发过程中只需要一台PC机,并不需要别的大型设备。而且在本系统开发完成后,不必增加管理工作人员的岗位,故没有人力资源成本的增加,反而,可以充分提高相关人员的工作效率,用很低的成本就可实现较大的效益。从这几方面说,本系统具备经济可行性。

3.4系统业务流程分析

通过本章3.1节的需求分析,分析到系统工作流程为:打开系统,进入主界面(所有的用户都能够浏览系统的主页面),然后输入用户名、密码登录。接下来进入系统可操作界面,可以对系统信息进行添加、修改和删除的权限,及对系统管理的所有功能进行操作。

为扩展服务范围,初步设计一个销售平台以利于信息发布和管理。为了使系统在各项管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下系统开发目标:

具体目标如下:

(1)操作简单、界面友好(2)即时可见(3)功能完善(4)方便移植(5)动态管理。

所设计的系统的业务流程图如下:

图3-1 系统业务流程图

 为了使系统在各项管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下系统开发目标:

1.操作简单、界面友好:完全控件式的页面布局,使得信息的录入工作更简便。

2.即时可见:对信息的处理(包括添加、修改、删除)将立即在对应的版块显示出来,达到"即时发布、即时见效"的功能。

3.功能完善:不仅包括常见系统的信息管理的各个方面:信息录入、浏览、删除、修改、查询等各个方面,完整地实现了系统对即时信息的管理要求。而且,还能进行上传下载相关资源的管理。

4.方便移植:系统应具有实用性、可靠性和适用性。系统界面中所需的数据都存放于数据文件中,只要对该文件做部分修改,就能在系统界面上实现及时更新的效果,减少了更改系统源代码的复杂性。

5.动态管理:对系统数据库实行动态操作,能实现对数据库信息的动态查询、动态更新修改和动态录入数据。

3.5数据流程分析

数据流程分析主要包括对信息的流动、传递、处理、存储等的分析。数据流程分析的目的就是要发现和解决数据流通中的问题。现有的数据流程分析多是通过分层的数据流程图(data flow diagram,简称DFD)来实现的。其具体的做法是:按业务流程图理出的业务流程顺序,将相应调查过程中所掌握的数据处理过程,绘制成一套完整的数据流程图。

通过对本系统的需求分析,系统的基本功能已经确定。整个系统的数据流程图如图3-2所示:

图3-2  系统的数据流程

  1. 系统设计

本章内容主要从系统各模块的具体需要实现功能入手,结合数据库进行系统的设计。内容包括:E-R,数据数据表设计,技术设计(与数据库框架设计相关技术)。

将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计,它是整个数据库设计的关键。概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。 

    本系统主要是以数据流图、E-R图、用例图为主要描述工具来勾画系统的概貌。下面对他们一一介绍:

4.1 界面设计

    一般而言,网页的设计应当简单、整洁。网页最好符合现有的风格的一般规则,而不应该追求额外的一些外表的华丽和与众不同以提高系统运行数据。在系统界面设计过程中,主要按照以下原则进行:

①一致的准则,确立标准并遵循

    无论是页面使用,提示信息措辞,还是颜色、窗口布局风格,遵循统一的标准,做到真正的一致。

②颜色使用恰当,遵循对比原则

    统一色调,针对软件类型以及用户工作环境选择恰当色调。在浅色背景上使用深色文字,深色背景上使用浅色文字,蓝色文字以白色背景容易识别,而在红色背景则不易分辨,原因是红色和蓝色没有足够反差,而蓝色和白色反差很大。除非特殊场合,杜绝使用对比强烈,让人产生憎恶感的颜色。

③资源

    人机交互界面需要遵循统一的规则,包括上述颜色表的建立,图标的建立步骤也应该尽可能的形成标准。有标准的图标风格设计,有统一的构图布局,有统一的色调、对比度、色阶,以及图片风格。

④字体

    使用统一字体,字体标准的选择依据操作系统类型决定。

⑤文字表达

    提示信息、帮助文档文字表达遵循口语化、客气使用统一的语言描述。

⑥控件风格,不要使用错误控件,控件功能要专一

    有设计好的同一风格的控件,如果没有能力设计出一套控件,则使用标准控件,绝对不能不伦不类,杂乱无章不要错误使用控件。

⑦控件布局,窗口不拥挤,按功能组合控件

采用统一的控件间距,通过调整窗体大小达到一致,即使在窗体大小不变的情况下,宁可留空部分区域,也不要破坏控件间的行间距。一行控件,纵向中对齐,控件间距基本保持一致。

4.2 系统E-R图设计    

由P.P.S Chen 首创的实体—关系图(E-R图)是直观描述数据库中各种数据之间的关系的概念模型工具,在数据库设计中早已广泛应用。由于这种图的直观、明了地表达数据间的复杂关系,所以在结构化分析模型中,尤其对于某些包含复杂数据的应用,也将它用作数据分析和建模的工具。它有四个基本成分: 

  1.   矩形框,表示实体类型(考虑问题的对象)。
  2.   菱形框,表示联系类型(实体间的联系)。 

(3)  椭圆形框,表示实体类型和联系类型的属性。对于关键码的属

性,在属性名下划一横线。 

(4)  直线,联系类型与其涉及的实体类型之间以直线连接

本系统设计中所使用到的实体-关系图如下:

  1. 管理员

图4-1 管理员E-R图

     2、在线留言

图4-2 在线留言E-R图

3、校园新闻

图4-3 校园新闻E-R图

  1. 校园风光

图4-4 校园风光E-R图

  1. 宿舍楼信息

图4-5 宿舍楼信息E-R图

  1. 班级信息

图4-6 班级信息E-R图

  1. 专业信息

图4-7 专业信息E-R图

  1. 新生报到

图4-8 新生报到E-R图

  1. 友情链接

图4-9 友情链接E-R图

系统全局E-R图如下:

图4-10 系统全局E-R图

4.3 系统功能模块图

根据第3章3.1节的需求分析,可以做出系统的功能模块如下图:

4.4数据库设计

由于,数据库是信息系统的核心和基础,数据库能够提供给存储、维护、检索功能,使用数据库可以方便、及时、准确地获取信息。只有对数据库进行合理的逻辑设计和物理设计才能开发出完善和高效的信息系统。通过对系统功能的分析,班级网站系统将数据信息划分为以几个表:

allusers表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

username

VarChar

50

255

3

pwd

VarChar

50

255

4

cx

VarChar

50

255

5

addtime

DateTime

8

23

dx表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

leibie

VarChar

50

255

3

content

Text

16

255

goumaijilu表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

bianhao

VarChar

50

255

3

mingcheng

VarChar

300

255

4

leibie

VarChar

50

255

5

yuanjia

VarChar

50

255

6

tuangoujia

VarChar

50

255

7

tuangoushu

VarChar

50

255

8

kucun

VarChar

50

255

9

goumaishuliang

VarChar

50

255

10

goumairen

VarChar

50

255

11

beizhu

VarChar

500

255

12

issh

VarChar

2

255

13

addtime

DateTime

8

23

14

isyx

VarChar

50

255

liuyanban表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

cheng

VarChar

50

255

3

xingbie

VarChar

2

255

4

QQ

VarChar

50

255

5

youxiang

VarChar

50

255

6

dianhua

VarChar

50

255

7

neirong

VarChar

500

255

8

addtime

DateTime

8

23

9

huifuneirong

VarChar

500

255

shangpinleibie表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

leibie

VarChar

50

255

3

addtime

DateTime

8

23

shangpinxinxi表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

bianhao

VarChar

50

255

3

mingcheng

VarChar

300

255

4

leibie

VarChar

50

255

5

tupian

VarChar

50

255

6

yuanjia

VarChar

50

255

7

tuangoujia

VarChar

50

255

8

tuangoushu

VarChar

50

255

9

xianshi

VarChar

50

255

10

kucun

VarChar

50

255

11

beizhu

VarChar

500

255

12

addtime

DateTime

8

23

xinwentongzhi表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

biaoti

VarChar

300

255

3

leibie

VarChar

50

255

4

neirong

Text

16

255

5

tianjiaren

VarChar

50

255

6

shouyetupian

VarChar

50

255

7

dianjilv

Int

4

10

8

addtime

DateTime

8

23

yonghuzhuce表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

yonghuming

VarChar

50

255

3

mima

VarChar

50

255

4

xingming

VarChar

50

255

5

xingbie

VarChar

2

255

6

chushengnianyue

VarChar

50

255

7

QQ

VarChar

50

255

8

youxiang

VarChar

50

255

9

dianhua

VarChar

50

255

10

shenfenzheng

VarChar

50

255

11

touxiang

VarChar

50

255

12

dizhi

VarChar

300

255

13

beizhu

VarChar

500

255

14

addtime

DateTime

8

23

15

issh

VarChar

2

255

youqinglianjie表:

序号

字段名称

字段类型

大小

允许为空

最大长度

备注

1

ID

Int

4

自增编号

10

2

wangzhanmingcheng

VarChar

50

255

3

wangzhi

VarChar

50

255

4

addtime

DateTime

8

23

第5章 模块设计

    本章将该系统主要的功能模块代码列写出来,并同时给出在网页中的实现情况:(鉴于篇幅过长,部分模块未给出实现代码)

通过查阅资料和参考相关网站,可以把系统设计如下:

5.1 系统实现情况

5.1.1 前台页面

图5-1

5.1.2 系统后台

图5-2 管理员后台

图5-3 财务管理后台

图5-4 学生后台

5.2 在线留言

图5-5

下载地址: https://download.csdn.net/download/qq_41221322/89557008

其他的定制服务  下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 或者私信作者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/382384.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言 | Leetcode C语言题解之第282题给表达式添加运算符

题目: 题解: #define MAX_COUNT 10000 // 解的个数足够大 #define NUM_COUNT 100 // 操作数的个数足够大 long long num[NUM_COUNT] {0};long long calc(char *a) { // 计算表达式a的值// 将数字和符号,入栈memset(num, 0, sizeof(num));in…

【每日刷题Day85】

【每日刷题Day85】 🥕个人主页:开敲🍉 🔥所属专栏:每日刷题🍍 🌼文章目录🌼 1. 125. 验证回文串 - 力扣(LeetCode) 2. 43. 字符串相乘 - 力扣(L…

【数据分享】2013-2022年我国省市县三级的逐月SO2数据(excel\shp格式\免费获取)

空气质量数据是在我们日常研究中经常使用的数据!之前我们给大家分享了2000——2022年的省市县三级的逐月PM2.5数据和2013-2022年的省市县三级的逐月CO数据(均可查看之前的文章获悉详情)! 本次我们分享的是我国2013——2022年的省…

大数据-38 Redis 高并发下的分布式缓存 Redis简介 缓存场景 读写模式 旁路模式 穿透模式 缓存模式 基本概念等

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: HadoopHDFSMapReduceHiveFlumeSqoopZookeeperHBaseRedis 章节内容 上一节我们完成了: HBase …

优选算法之二分查找(上)

目录 一、二分查找 1.题目链接:704. 二分查找 2.题目描述: 3.算法流程: 4.算法代码: 二、在排序数组中查找元素的第一个和最后一个位置 1.题目链接:34. 在排序数组中查找元素的第一个和最后一个位置 2.题目描述…

大语言模型-RetroMAE-检索预训练模型

一、背景信息: RetroMAE是2022年10月由北邮和华为提出的一种密集检索预训练策略。 RetroMAE主要应用于检索模型的预训练,模型架构为非对称的Encoder-Decode结构。 二、整体结构: RetroMAE的模型架构为非对称的Encoder-Decode结构。 Encod…

Linux嵌入式学习——数据结构——概念和Seqlist

数据结构 相互之间存在一种或多种特定关系的数据元素的集合。 逻辑结构 集合,所有数据在同一个集合中,关系平等。 线性,数据和数据之间是一对一的关系。数组就是线性表的一种。 树, 一对多 图,多对多 …

k8s中部署Jenkins、SonarQube、StorageClass部署流程

部署Jenkins 系统环境: • kubernetes 版本:1.23.3 • jenkins 版本:2.172 • jenkins 部署示例文件 Github 地址:https://github.com/my-dlq/blog-example/tree/master/jenkins-deploy 一、设置存储目录 在 Kubenetes 环境下…

机器学习·概率论基础

概率论 概率基础 这部分太简单,直接略过 条件概率 独立性 独立事件A和B的交集如下 非独立事件 非独立事件A和B的交集如下 贝叶斯定理 先验 事件 后验 在概率论和统计学中,先验概率和后验概率是贝叶斯统计的核心概念 简单来说后验概率就是结合了先验概…

【SpingCloud】客户端与服务端负载均衡机制,微服务负载均衡NacosLoadBalancer, 拓展:OSI七层网络模型

客户端与服务端负载均衡机制 可能有第一次听说集群和负载均衡,所以呢,我们先来做一个介绍,然后再聊服务端与客户端的负载均衡区别。 集群与负载均衡 负载均衡是基于集群的,如果没有集群,则没有负载均衡这一个说法。 …

springcolud学习05Feign

Feign Feign是一个声明式的http客户端,我们知道,在不使用Feign之前,在微服务中,一个模块如果想要调用另一个模块中的某个功能,需要向其发起请求http请求,如果不使用Feign,我们就需要通过硬编码的形式去编写构建http请求 新建模型,建立一个和consumer一样的module,不…

Python 实现PDF和TIFF图像之间的相互转换

PDF是数据文档管理领域常用格式之一,主要用于存储和共享包含文本、图像、表格、链接等的复杂文档。而TIFF(Tagged Image File Format)常见于图像处理领域,主要用于高质量的图像文件存储。 在实际应用中,我们可能有时需…

leetcode算法题之接雨水

这是一道很经典的题目,问题如下: 题目地址 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 解法1:动态规划 动态规划的核心就是将问题拆分成若干个子问题求解&#…

TCP与UDP网络编程

网络通信协议 java.net 包中提供了两种常见的网络协议的支持: UDP:用户数据报协议(User Datagram Protocol)TCP:传输控制协议(Transmission Control Protocol) TCP协议与UDP协议 TCP协议 TCP协议进行通信的两个应用进程:客户端、服务端 …

GD32相较于STM32的优劣势

优势 1.更高的主频 GD32单片机的主频可以达到108MHz,‌而STM32的最大主频为72MHz,‌这意味着GD32在代码执行速度上具有优势,‌适合需要快速处理数据的场景 2.更低的内核电压 GD32的内核电压为1.2V,‌而STM32的内核电压为1.8V。…

【保姆级介绍服务器硬件的基础知识】

🌈个人主页: 程序员不想敲代码啊 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步! 🦭服务器硬件基础知识 1. 🦭前言2. 🦭中央处理器(CPU)3. 🦭…

LeYOLO, New Scalable and Efficient CNN Architecture for Object Detection

LeYOLO, New Scalable and Efficient CNN Architecture for Object Detection 论文链接:http://arxiv.org/abs/2406.14239 代码链接:https://github.com/LilianHollard/LeYOLO 一、介绍 本文关注基于FLOP的高效目标检测计算的神经网络架构设计选择&am…

STM32CUBEIDE FreeRTOS操作教程(一):LED闪灯

STM32CUBEIDE FreeRTOS操作教程(一):LED闪灯 STM32CUBEIDE(不是STM32CUBEMX)开发环境集成了STM32 HAL库进行FreeRTOS配置和开发的组件,不需要用户自己进行FreeRTOS的移植。这里介绍最简化的用户操作类应用教程。以STM32F401RCT6开…

利用PyTorch进行模型量化

利用PyTorch进行模型量化 目录 利用PyTorch进行模型量化 一、模型量化概述 1.为什么需要模型量化? 2.模型量化的挑战 二、使用PyTorch进行模型量化 1.PyTorch的量化优势 2.准备工作 3.选择要量化的模型 4.量化前的准备工作 三、PyTorch的量化工具包 1.介…

微软的Edge浏览器如何设置兼容模式

微软的Edge浏览器如何设置兼容模式? Microsoft Edge 在浏览部分网站的时候,会被标记为不兼容,会有此网站需要Internet Explorer的提示,虽然可以手动点击在 Microsoft Edge 中继续浏览,但是操作起来相对复杂&#xff0c…