欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    一对一客户通知器Java课程设计报告.docx

    • 资源ID:759329       资源大小:132.25KB        全文页数:23页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    一对一客户通知器Java课程设计报告.docx

    面对对拿程本领计课程设计报告题目一对一客户通知器姓名:学号:专业:一计算机科学与技术一班级:计科指导教师:职称:讲师计算机与电子工程学院2009年6月课程设计评审表姓名学院计算机与电子工程学院学号专业班级计科题目一对一客户通知器评审意见评审成绩指导教师签名职称评审时间年月日1课程设计题目描述和基本设计要求1.1 题目描述1.2 基本设计要求2系统r分析与42111f4211¢0匕T4212422*VI5221I*I52225VI*53系统,贝!IJl与使用说明.731/51!)732IJ9321'I"dl-iI104.1遇到的问题及解决办法10附录一对一客户通知器1课程设计题目描述和基本设计要求1.1 题目描述本程序是基于对单个特殊用户(如VIP用户)进行实时通知的需求而产生的。要求实现在服务器端发送消息,并显示发送时的具体时间,由单个客户端接收。1.2 基本设计要求界面应尽量简洁,易于操作,功能一目了然。2系统需求分析与设计2.1 系统需求分析2.1.1 功能需求分析1、能进行由服务器端到客户端的实时消息的发送;2、只支持单一客户端一对一发送消息;3、由服务端先发送请求,客户端同意接收时开始发送;2.1.2 其他需求分析(1)性能要求使用性强,占用内存空间小,运行速度快。(2)设计约束开发工具:jdkl.5运行环境:Windows2000,WindowsXP(3)界面要求可视图形界面,以JAVA的默认观感为UI,确保能在移植的情况下正常使用。2.2 系统设计2.2.1 总体设计在用户界面方面,尽量做到美观大方,简洁易用。无菜单栏,因为完成信息的发送不需要用户过多的设置,使操作更为简单。整个界面大约占到桌面的1/16,小巧精致。在服务器端包含“侦听”“发送”两个按钮,而在客户端只包含“连接”一个按钮。服务端与客户端都有可滚动的文本显示域,方便查看已发送的信息。在服务端有输入文本的区域。最重要的是客户端和服务端都有端口地址的输入域,只有保证这个域的内容相同才能成功进行连接。客户端有一个本地IP域。整个工作2.2.2 详细设计这个简易客户通知器由用户界面和网络两部分构成。(1)用户界面包含有以下几个类的使用:JFramejava.awt.Frame的扩展版本,该版本添加了对JFC/Swing组件架构的支持。它是本程序中使用的框架,与Frame不同,它特属SWing的组件,拥有更强的功能特性。JPanel它是本程序的面板,其本身也是一个容器。与普通的容器不同的是,它具有显示绘图的功能。JTextFieIdJTextField具有建立字符串的方法,此字符串用作针对被激发的操作事件的命令字符串。它是本程序中使用的文本域,是一个固定文本域。JTextArea多行纯文本显示域。JLabel标签域,用于显示固定的不可更改的字符,具有提示用户的作用。JButton按钮,有触发事件的功能。JScrollPane可设横向与纵向滚动功能的文本域,由它可以显示大量文本信息。Thread线程,可根据系统需要单独执行一项程序。CalendarDateFormat使用calendar来生成实现日期和时间格式化所需的时间字段值。子类应将此calendar初始化为适合于与此DateFOrmat关联的语言环境的口历。包含以下接口的实现:ActionListener用于监听事件的发生,用actionPerformed方法来实现事件的反应机制。网络在网络应用的实现方面,需要导入一个包,由于要借助流来实现,java.io包和java.util包也是需要的。Socket由于要实现网络通讯,套接字是一个不错的选择。它想一条虚拟的光缆,将两台(或多台)主机连接起来。套接字是通讯双方的一种约定,用套接字中的相关函数来完成通信过程。区别不同应用程序进程间的通信过程,主要有三个参数。它们是:通信的目的IP地址、使用的传输层协议(TCP或UDP)、使用的端口号。SOCket原意是“插座”。通过将这3个参数结合起来,与一个“插座”SoCket绑定,应用层就可以和传输层通过套接字接口,区分来自不同应用程序进程或网络连接的通信,实现数据传输的并发服务。套接字的工作图示如下:图1套接字3系统测试与使用说明3.1 系统测试执行服务端程序后,会出现如下界面:图2测试1其中端口号是预置的,为“4700”o可以清楚地看到,窗体中共有三个标签“端口号”、“请输入信息”、“已发送信息”,三个文本域(其中有一个是带纵向滚动功能的),两个按钮“侦听”、“发送”。由于是DefaUltLOOkAndFeeKjaVa的默认观感),界面的放大、缩小按钮以及关闭按钮都已经自动生成,形状也己统一画好。当要完成发送信息的任务时,我们可以先在服务端这边点“侦听”按钮,等待客户端响应;当客户端点击“连接”按钮后,便会在客户端与服务端提示已连接成功,此时连接工作便完成了。以下是客户端的初始状态图示:图3测试2其中,主机名称和端口号的值是预置的。客户端只有一个按钮“连接”,它需要在服务端的“侦听”按钮被按下后被按下。连接成功后,会出现以下界面:图4测试3此时,客户端与服务端的“连接”“侦听”按钮上的文字改为“连接成功”,同时在服务端的“已发送信息”文本框中显示信息“客户端已经连接到服务器”,客户端的“已收到信息”文本框中显示信息“收到:(16点59分49秒)已经成功连接”,表示在本机时间16点59分49秒成功建立连接。好的,接下来就可以给客户端发送信息了!例如,服务器端发送信息”今天8点到贤德11栋楼下会面”,先在服务器端“请输入信息”后输入信息,点发送,便会出现如下图所示的效果:jserver玄缀臻三绥乡徼./窈蕊因端口号4700连接成功请输入信息今天8点到贤德11栋楼下会面。已发送信息客户端已经连接到服务器发送点50分35秒)今天8点到贤德11栋楼下会面。client口”端口号4700主机名称127.0.0.1连接成功已收到信息收到:(20点49分35秒)已经成功连接。收到20点50分35秒)今天8点到贤德11栋楼下会面。图5测试4客户端成功接收到信息,成功。3.2 系统使用说明在客户端和服务器端同时运行的前提下,确保端口号一致。其实系统预置的端口号是一致的,用户不需要更改。客户端的主机名称要填好,系统预置是“127.0.0.1”,用户也不需要更改。服务器端点击“侦听”按钮,待客户端点击“连接”按钮后,等待到按钮文字变为“连接成功”时,表示已经成功连接。由服务器端在“请输入信息”栏中输入需要发送的信息,然后点击“发送”按钮。若成功,在服务器端的“已发送信息”文本框和客户端的“已收到信息”文本框会显示发送的信息和当前主机的时间。3.2.1 系统中存在的问题由于时间有限,本系统还存在很多不足之处。比如,当服务器端按“侦听”按钮后,客户端无法获知服务器端是否按下“侦听”按钮。只有在两者知道通信时间时才能在正确的时间按下按钮。4课程设计总结4.1 遇到的问题及解决办法在此次课程设计过程中,经历了艰难的调试过程。因为方法是死的,类也有详实的记载,将类和发法组合到一篇代码中也不是件难事。但是在调试的过程中遇到了各种各样的问题,让我不得不一遍又一遍的修改代码。有时甚至完全颠覆当初的思路,改换其他的方法。后来我通过思考,了解到,之所以会遇到这么大的困难,主要是对JAVA这门计算机语言的认识很不够,一些细节根本不知道。但是事己至此,必须要在规定的时间内赶出来,于是我不断参照不同程序编写者的方法,一个一个调试。可谓用汗水换来了集中他人智慧与我自己改良的最终程序。虽然和一开始的初衷不太一样,但是在我还想调试的时候,发现时间已经不够了,所以只好将这件“未完成”的作品呈上。对于我的初衷来说,它是不合格的;但是作为我这些天努力的回报,我觉得它还是一份令我满意的答卷。4.2 心得体会学习是一件极费脑力的活,必须以相当认真的态度去对待。通过这次的学习,我发现我还要学的东西有很多,不仅仅是一门计算机语言,更重要的是对问题的态度以及如何解决它的一些技巧。比如在写一大版代码时,有时我自己都觉得十分凌乱,这时我就开始重新将这些代码分块,每一块都不大,但能够实现一个简单的功能。将创建的每一个类和变量取一个合适的名字,这样有利于自己理解。后来,我回过头来看自己写的代码,也不觉得凌乱了。附录/clientprogramimportjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjava.io.*;.*;importjava.util.*;publicclassClient2extendsJFrameimplementsActionListenerContainercont=newContainer();JPanelContentPane;JLabeljLabel1=newJLabel();JLabeIjLabe12=newJLabel();JTextFieIdjTextFieIdl=newJTextFieldC'127.0.0.');JTextFieIdjTextField2=newJTextField("4700");JButtonjButtonl=newJButton();JScrollPanejScrollPane1=newJSCrolIPane();创建一个带有滚动条的面板。JTextAreaJTextArea1=newJTeXtArea();/创建一个多行纯文本区域。JLabeljLabe14=newJLabel();ServerSocketserver=null;服

    注意事项

    本文(一对一客户通知器Java课程设计报告.docx)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

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

    收起
    展开