基于Java的研究生信息采集和反馈系统的研究与实现

来源 :中国教育信息化·高教职教 | 被引量 : 0次 | 上传用户:datang0826
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:本文主要叙述研究生信息采集和反馈系统的设计与实现,着重介绍了系统结构,开发技术与相关控件,设计流程,服务器端程序的实现以及客户端程序的实现。使用的编程语言主要是java,使用的开发平台是JBuilder10,使用的数据库则是SQL server2000。本系统主要面向两类人员使用:在校的研究生及管理研究生工作的教学秘书、辅导员,他们对系统的使用拥有不同的权限,其主要目的是便于研究生教学秘书、辅导员更好地管理研究生工作,更好地与研究生沟通、交流,从而提高高校研究生日常管理的效率。
  关键词:数据库管理系统 系统结构 服务器 客户端
  中图分类号:TP311.52 文献标识码:B 文章编号:1673-8454(2009)11-0022-04
  
  本文主要是利用Java的通信技术来实现多用户的研究生信息采集与反馈系统。系统中包含很多功能和模块,例如:研究生的注册和修改信息功能,教学管理员、辅导员的注册和修改信息,广播和向研究生选择性发送消息等功能。研究生信息的采集与反馈系统的主要理念是尽量减少无谓的人工干预,避免不必要的手头操作,提高高校研究生管理的办公自动化程度,同时减少误差,增加信息可靠性,最大限度地提高研究生教学管理、思想政治教育的效率。
  
  一、系统简介
  
  系统运行后,首先会有一个提示信息,要求用户选择以研究生身份登录,还是教学秘书身份登录。进入登录系统后,主要有两个应用程序,分别为服务器程序和客户端程序。服务器应用程序主要用于消息转发,客户登录信息的管理以及用户发送系统消息等;客户端应用程序主要用于客户信息的显示和信息的输入。
  用户首先启动服务器程序,服务器即处于监听状态,当用户以某种身份登录系统时,系统会根据数据库存储的用户信息验证用户所输入的内容,若输入有误则提示,否则进入研究生个人系统或者教学秘书个人系统。以研究生身份成功登录系统后,会提示登录成功等相关信息。若有来自教学秘书或者同学发来的消息时,则在个人信息界面提示,并可以直接进行回复。以教学秘书身份登录系统后,也在当前界面下提示登录成功等信息,若有来自研究生用户发来的消息时,则在个人信息栏中显示,并可直接进行回复。软件设计的主要思路是构建一个信息化平台,供研究生与教学秘书二者之间进行沟通,减少了无谓的手头操作,从而提高了办事效率。
  
  二、开发技术与相关控件
  
  要实现本系统,首先要了解一些必备的网络基本知识,在此基础上,才能易于理解本系统的基本原理。
  1.Internet知识及相关术语介绍
  Internet提供的服务很多,主要有WWW服务、文件传输服务、电子邮件服务和远程登录服务等。其中,WWW是一个基于超文本的信息查询方式,主要通过超文本方式将Internet上不同地址的信息有机地组织起来,并提供一个友好的界面,大大方便了人们的信息交流。
  TCP/IP实际上是一组协议的集合,它的协议栈示意图如图1所示。
  
  TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层、数据链路层、网路层、传输层、会话层、表示层和应用层。而TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:
  (1)应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。
  (2)传输层:此层提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。
  (3)互联网层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
  (4)网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)传送数据。
  网际协议IP是TCP/IP的心脏,也是网络层中最重要的协议。IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层——TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。高层的TCP和UDP服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP确认包含一个选项,叫作IP source routing,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCP和UDP的服务来说,使用了该选项的IP包好像是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选项是为了测试而存在的,说明了它可以被用来欺骗系统进行平常被禁止的连接。那么,许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。
  TCP协议主要是向应用层提供可靠的面向连接服务。如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向“上”传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。面向连接的服务(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。
  UDP与TCP位于同一层,但对于数据包的顺序错误或重发。因此,UDP不被应用于那些使用虚电路的面向连接的服务,UDP主要用于那些面向查询——应答的服务,例如NFS。相对于FTP或Telnet,这些服务需要交换的信息量较小。使用UDP的服务包括NTP(网络时间协议)和DNS(DNS也使用TCP)。欺骗UDP包比欺骗TCP包更容易,因为UDP没有建立初始化连接(也可以称为握手),也就是说,与UDP相关的服务面临着更大的危险。
  FTP(File Transfer Protocol),是文件传输协议的简称,是应用层的一个具体例子,用于Internet上的控制文件的双向传输。同时,它也是一个应用程序。用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置、连接的方式、甚至是是否使用相同的操作系统无关。假设两台计算机通过FTP协议对话,并且能访问Internet,你可以用FTP命令来传输文件。每种操作系统使用上有某一些细微差别,但是每种协议基本的命令结构是相同的。
  2. JBuilder10中的基本网络控件
  在Builder中有两个最基本的网络TCP套接字控件,一个是服务器端的,另一个是客户端的,将server socket类设计成在等待客户建立连接之前不做任何事的监听器,而socket类是为建立连向服务器套接字以及启动协议交换而设计的。
  
  三、设计流程
  
  本系统将采用Client/Server(C/S)体系结构,即客户机/服务器体系结构,C/S结构主要应用于构造数据库系统,它包括连接在一个网络中的多台计算机。处理应用程序并请求另一台计算机服务的计算机称为客户机,接受请求的计算机成为服务器。其特点是客户端只装载应用软件,而把数据库放在服务器上,这样就可以使客户端不需要存储数据,从而简化客户端软件,C/S体系结构如图2所示。
  研究生信息采集与反馈系统采用C/S结构,服务器专门用于监控用户状态和转发消息,当客户端进行多播或广播时,客户端只需把接收消息的用户序列和消息文本送到服务器,然后由服务器转发到各个用户,而不需要向每个用户建立连接后再发送消息,这样就大大减轻了客户端的任务。
  
  2.建立数据库的E-R模型
  根据系统的设计需求,主要考虑研究生的个人信息、教学秘书的信息,以及两者之间的信息传输,这里设计了研究生信息采集与反馈系统的E-R图,如图4所示。
  
  Teacher表主要用于存储教学秘书的相关信息,设置学号为主键,用于唯一标识用户,记录的信息包括教学秘书的姓名、编号、联系方式、职称、地址、消息栏等相关信息。
  Students表的结构如表2所示。
  
  Students表主要用于存储研究生的个人信息,设置学号为主键,存储的信息包括研究生的姓名、学号、联系方式、地址、政治身份、成绩、消息栏等信息。在研究生和教学秘书的消息栏目中主要是用于两者相关信息的传递的。
  这里,系统设置数据库的连接用户名为sa,密码为空,由于数据量不是很多(主要是针对本院研究生的,数量在几百左右),所以没有必要对数据库进行优化。
  3.实现模型
  服务器分配一个端口号,如果客户请求一个连接,服务器使用accept( )方法打开socket连接,客户在HOST的PORT端口建立连接服务器和客户inputstream,outputstream进行通信,由客户端向服务器端传递的主要消息,登录时将用户名称传给服务器。在广播模式下发送消息时,用户在当前界面上写入信息,然后将消息传送给服务器。在单播模式下发送消息时,在消息前面加入相关信息,以及目的用户学号(学号是唯一标识用户的),然后将消息传送给服务器。在用户退出系统时,退出用户名称,然后将消息传送给服务器。
  
  四、服务器端实现
  
  在完成了相关设计后,可以进行程序设计了,首先,进行服务器端的程序设计。在服务器端,首先要启动一个服务器程序,该程序的主要作用就是对客户端的程序进行监听,然后将监听的消息分类进行处理。其次,还需要在监听程序中实现连接的断开以及相应的错误处理。
  建立连接以及监听客户端程序:用户可以通过ServerSocket类建立一个服务器端,其实现的原理已经在前面进行了简单的叙述,在定义了以上的全局变量和添加好需要的包以后,开始设计服务器的连接和程序。
  对读取的客户端信息的处理和实现,监听客户端信息的主要就是消息在研究生和教学秘书用户间的传输。在用户收到信息流时,需要判断客户端需要发送的目标用户。
  客户端程序实现的过程是:在完成了服务器端的设计以后,现在开始实现客户端的程序,在客户端的程序中,首先要建立一个连接,然后建立线程,对服务器接收的所有消息进行处理,并将消息提交给服务器。在完成了客户端的连接和对服务器的信息监听后,就需要对监听信息进行处理,并且对服务器发送到客户端的信息进行处理。
  
  五、结束语
  
  本文主要实现了一个多功能的研究生信息采集与反馈系统,并介绍了网络的基本知识,如:TCP/IP。客户端/服务器的模式,程序的设计方法,在JBuilder10中有哪些对网络支持的控件类,以及其中的基本属性和方法,如何在网络编程中实现对信息的读取、发送,也就是如何利用流来实现信息的交换。除了以上的一些知识以外,本文还介绍了如何实现系统对信息流的分析,其中包含了一些基本的软件工程方法。?筅
  
  参考文献:
  [1]陆正中,马进德.jBuilder10软件开发项目实践[M].北京:清华大学出版社,2004.3
  [2]Carlo Ghezzi Mehdi Jazayeri Dino Mandrioli软件工程基础第二版[M].北京:中国电力出版社,2006.
  [3]小高知宏著,牛连强,刘本伟译. TCP/IP JAVA篇[M].北京:科学出版社,2003.
  [4]王珊.数据库概论[M].北京:高等教育出版社,2004.
其他文献
小班幼儿刚入园,对幼儿园的一切都感到陌生,具有不同程度的分离焦虑。分离焦虑不仅是每个家长的头号难题,同时也是小班教师刚开学的工作重点。因此,小班刚开学,我班思考以缓解幼儿分离焦虑为主题开展班级主题活动。  幼儿分离焦虑主要来源于3个方面:一是幼儿生活环境的变化引起对陌生环境的焦虑;二是依恋关系的变化引起的焦虑,幼儿入园后需要与陌生的教师、同伴形成依恋关系,这对幼儿来说是很大的挑战;三是对幼儿园生活
【摘 要】立德树人是各学科教师需要完成的主要的教学任务。实现此任务,教师要在学科教学中挖掘德育资源,创设德育活动,顺其自然地将德育与学科教学结合在一起,使学生们在获取学科知识、发展学科能力的过程中,受到德育熏陶,夯实全面发展的基础。本文将从挖掘德育资源、创设德育活动等方面入手,详细阐述德育渗透于小学音乐教学的策略,为一线教师落实立德树人教育的任务提供借鉴。  【关键词】小学音乐 德育 渗透策略  
老王在出远门之前一定会把许多准备工作做好、做细,特别是开车跑长途。跑长途不比那些拽着行李箱说走就走的主儿,人家是绅士、淑女,还有只背着一个小挎包就走的,玩儿的是一种风度。老王出远门儿是纯粹的劳动。当然,这还要看跑多远的路。如果是在省内,就可以准备得简单一点儿,毕竟老王在本省有熟悉的朋友,常来常往的,车一旦出了毛病,可以去找那些散居在龙江大地的朋友帮忙,还管他饭吃,然后,长亭外,古道边,把老王送到公
宏宏是个典型的多血质女孩,活泼好动,精力旺盛,常常把同学们惹毛,也经常让我们几个带班老师精疲力尽。最让人头疼的还不是她的活泼,而是她的“爱管闲事”。  宏宏就像是360度监控器一样,随时随地观察着每一个小朋友的动向,并且进行实况转播:“宋老师你看,萱萱又在掀衣服,女孩子不能掀衣服,你应该批评萱萱。”“宋老师你看,乐乐没有洗手,吃饭之前要洗洗小手,你快去说说乐乐啊!”  不得不承认,有时候因为宏宏的
相信很多老师在工作中都会遇到类似丁丁这样怀有一颗“爱美之心”的男孩。为什么当我们看到男孩穿裙子,就会觉得有些奇怪或担心存在一些隐患呢?  解读童心,明确教育方向  男孩子穿着裙子跳舞的画面,很容易引起老师的紧张情绪——担心孩子的性别认知出现混淆。我们不妨换一个角度思考,在我们生活的这个地球上,是否就完全没有男性穿裙子的情况,或是完全不允许男性穿裙子呢?答案当然是否定的。我们国家的藏族、蒙古族等一些
在前期调查中,小餐厅高票成为孩子们最喜欢的商铺之一,并顺利开张。刚开始,餐厅的生意十分红火。可是,当电影院、宠物店、游乐场、迪士尼酒店等其他有趣好玩的商铺陆续出现后,餐厅的生意越来越惨淡。  有一天,大班的艾莎来做掌柜,她对我说:“殷老师,我们的餐厅怎么没有人来呀?钱也赚不到!”我反问道:“小客人都不愿意来,那有什么办法能让他们吃到我们的食物呢?”她想了想说:“小客人不愿意过来,我们可以做外卖呀!
摘 要:MOOC的兴起为传统教育变革提供了机遇,文章选取“中国大学MOOC”平台《网络素养》课程,采取翻转课堂教学模式进行MOOC学习实验,学习者通过率达到100%。通过分析翻转课堂模式下的MOOC学习行为,表明学分认证等外部动力因素是MOOC通过率的关键,MOOC线上学习伙伴间的交流匮乏,线下课堂讨论能够弥补MOOC面对面交流感的缺失。  关键词:慕课;翻转课堂;学习行为  中图分类号:G434
一  细杜蹲在那儿,一动不动,已经有好几个时辰了。远远望去,宛如被随意丢弃在废墟里的一个旧雕像。  这样一个早春的午后,春寒、罡风、冻僵后悄悄苏醒的拆卸场地,空气清新而干冷。一排蚂蚁正在疾行,细蛇一般,穿过瓦砾、砖头渣、烂菜帮、煤渣、厕纸漫延的肮脏的工地。  细杜掏出小鸡鸡,对着蚂蚁浇了一番,热气腾腾的尿液把蚁群冲得七零八落,几只蚂蚁顺着瓦砾片儿上的浮灰给冲下来,跌落进废墟里头,有几只被淹在尿液里
班里的孩子们刚刚升入中班,转换楼层,变换教室,一切都是新奇的。为了让孩子们尽快适应新环境,并让幼儿通过生活环境对数字有初步的认知,我把每个幼儿的物品都进行了有序的编号。岳岳是我们班的1号,他喜欢叫自己是“NO.1”。每天早上的点名环节,他都会自豪地说:“岳岳,NO.1!”他自信的表情和高昂的情绪总是能感染我。  观察一:排队事件  户外活动的时间就要到了,小朋友们开始排队。突然,队伍里传来了岳岳急
请认真考虑一下,你的每一个学生是怎样以及在哪里利用(不是“度过”,而是“利用”)他的自由支配的时间的。而且要利用得合理。  这里,我又要提到书籍了。阅读应当成为吸引学生爱好的最重要的发源地。学校应当成为书籍的王国。可能你是在很边远偏僻的地方工作的,可能你那个村庄和文化中心要相距数千公里,学校里也许会有许多欠缺,但是如果你那里有一个书籍的王国,你就有可能把工作提高到这样的教育学素养的水平,并且取得这