多媒体课程设计报告

时间:2024.3.19

(一)课程设计原理

实现语言:java

开发平台:MyEclipse8.5

关于java的面向连接的通信方式介绍如下:

Java提供的套接字分为客户端和服务器端两种:

1、客户端的socket

Socket(String  host,int port):生成一个连接到某个主机内某个端口号码的套接字。

Socket(InetAddress  host,int port):生成一个连接到某个主机地址上某个端口号码的套接字。

InputStream  getInputStream():得到套接字的输入数据流。

OutputStream  getOutputStream():得到套接字的输出数据流。

工作完毕,使用流对象的close()方法关闭用于网络通信的输入、输出流,用Socket对象的close()方法关闭socket。

2、服务器端的socket

ServerSocket(int port):生成一个服务器套接字,并指定所使用的端口号码,在序列里等待连接的客户机的数目最大50,若端口的值为0,则使用任何可供使用的端口。

ServerSocket(int port,int  backlog):backlog表示在序列里等待连接的客户机的数目,若数目超过backlog,则客户机的连接被拒绝。

InputStream  getInputStream():得到套接字的输入数据流。

OutputStream  getOutputStream():得到套接字的输出数据流。

Socket  accept():等待接收来自客户的连接请求,服务器会等到联机为止。

工作完毕,使用流对象的close()方法关闭用于网络通信的输入、输出流,用ServerSocket对象的close()方法关闭监听socket。

(二)源代码

因为测试机器是本机,因此目的IP选用的是自测地址(127.0.0.1)

1、服务器端源代码

 import java.net.*;

import java.util.Scanner;

import java.io.*;

public class server{

     public static void main( String args[]){

         try{

              boolean flag = true;

              Socket clientSocket = null;

              int c;

              String outputLine;

              String inputLine;

              ServerSocket serverSocket = new ServerSocket( 8000);

              System.out.println("Server listen on" + serverSocket.getLocalPort());

              while( flag){

                   clientSocket = serverSocket.accept();

                   DataInputStream is = new DataInputStream( new

                            BufferedInputStream( clientSocket.getInputStream()));

                   PrintStream os = new PrintStream( new

                            BufferedOutputStream( clientSocket.getOutputStream()));

                   while( (inputLine = is.readLine()) != null ){

                       if( inputLine.equals("stop")){

                            System.out.println("warning: client ended this talk!");

                            flag = false;

                            os.println("warning: you ended this talk!");

                            break;

                       }

                       System.out.println("the client:" + inputLine);

                      

                       BufferedReader br = new BufferedReader( new InputStreamReader(System.in));

                       outputLine = br.readLine();

                      

                       os.println( outputLine );

                      

                       os.flush();

                   }

                   os.close();

                   is.close();

                   clientSocket.close();

              }

              serverSocket.close();

         }catch( IOException e){

              System.err.println( "Exception" + e );

         }

     }

}

2客户端源代码

import java.net.*;

import java.io.*;

public class client{

     public static void main( String args[]){

         try{

              Socket echoSocket = new Socket( "127.0.0.1",8000);

              OutputStream os = echoSocket.getOutputStream();

              DataInputStream is = new

              DataInputStream( echoSocket.getInputStream());

              int c;

              String responseLine;

              while( ( c = System.in.read()) != -1 ){

                   os.write( (byte)c);

                   if( c == '\n'){

                       os.flush();

                       responseLine = is.readLine();

                       System.out.println( "reply(server): " + responseLine );

                   }

              }

              os.close();

              is.close();

              echoSocket.close();

         }catch( Exception e){

              System.err.println( "Exception:" + e);

         }

     }

}

(三)运行结果

1、因为采用c/s经典模型,server的程序需要先运行,监听端口8000;运行client向server端口8000提出请求,server进行响应。

(简单说明:输入回车,表示确认发送,服务端接收到信息并打印在终端,服务器端也可发送信息给客户端,同样以回车作为确认发送。程序中,IP地址使用自测地址)

2、截图说明

若先运行client客户端。会发现异常如下:

 

原因是当client发出请求时,目的主机并未有服务程序处理,因此无法连接。

运行server端,截图如下:

表示服务端已在监听端口8000,当client提出连接请求时,服务端作出相应的响应。

再运行client客户端:

发现未出现任何异常。说明已经正常连接。

尝试在client客户端输入文字并发送。

Client端:

Server端:

如图,发送成功。

下面,server端也可输入信息,用于聊天。

Server端:

Client端:

表示成功接收server端发过来的信息。

终止聊天,在client端提出。终止指令为:stop。

现在在client端输入stop结束此次对话。

Client端:

Server端:

至此,会话结束。成功终止对话。

(四)实验体会与总结

Java提供socket类使得tcp连接的通信十分方便,在实现通信过程的时候,最主要的是理解java中的各种流类型起到的作用。


第二篇:《多媒体技术》课程设计报告格式


《 》

--《多媒体技术》课程设计报告

专 业: 班 级: 姓 名: 指导教师:

二○○七 年 十一 月三 十日

目 录

(空两行)

1………………………………………………………………页码 2………………………………………………………………页码 (要求:给出一级目录,宋体加粗,四号字,1.5倍行距。)

(报告正文部分):

(要求:正文部分一律用小四号字,宋体,1.5倍行距。一级大标题靠左,加粗。二级大标题靠左,不加粗。)

报告的内容:

1.设计的任务

2.对问题的分析理解

3.实现方法

4.设计用的计算机环境

5.设计实验过程

6.结 论(是否实现目标,对在设计中出现的问题是如何解决的) 报告正文格式:

1. 设计的任务

1.1XXXXX

1.2XXXXX

参考书目:(五号,宋体加粗)

[1] 柴诚敬,刘国维,李阿娜.《化工原理课程设计》.天津:天津科学技术出版社,1994

[2] 杨玉琥等.蜗杆凸轮机构精确度分析.天津:天津大学学报,1995,(1):62~67

(要求:五号字,宋体,单倍行距。按作者、书名、出版社、地点、出版时间格式逐一列出,中间用英文句号格开)

更多相关推荐:
多媒体课程设计报告(范本)

多媒体技术综合设计报告题目院系专业班级报告人学号指导教师二0一年月日1一综合设计任务二综合设计开发环境和工具1准备图像素材并利用Photoshop软件来进一步处理2准备其它相关媒体素材如音乐等3利用Author...

多媒体课程设计报告

《多媒体技术》课程报告学号:**姓名:***专业:计算机科学与技术20XX年12月多媒体技术的应用摘要多媒体技术是当今信息技术领域发展最快、最活跃的技术,集文本、图形、动画、声音、影视等各种交流媒介于一体的计算…

多媒体课件设计 总结报告1

课程设计总结这学期和大家一起学习了《多媒体教学软件设计》,又和小组成员合作完成了《一剪梅教学软件设计》,有了太多的体验和收获想要分享。多媒体课件制作是21世纪最热门的十大产业之一。由于教育具有其特殊性,并且课件…

多媒体课程设计报告[1]

广州大学机械与电气工程学院课程设计报告设计题目:采用matlab实现霍夫曼编码仿真专业班级:电信112姓名:学号:指导老师:***完成日期:20**年7月一、实现功能哈夫曼编码是一种无损压缩编码,它不会造成信息…

多媒体技术应用课程设计报告

多媒体技术课程设计报告题目多媒体技术应用课程练习专业年级组长学号组长姓名教师同组设计人员20xx年11月26日课程设计报告2345678

多媒体技术课程设计报告

多媒体技术课程设计报告专业年级班08级计算机科学与技术设计人罗亮设计指导教师邬培老师完成日期20xx年10月9日

多媒体技术与应用课程设计报告

目录1作品简介12设计工具及平台13构思及创意14素材来源241图片来源242音频来源243视频来源25设计方法技巧及简要步骤251图片处理252音频处理353视频处理36设计结果4总结5致谢5参考文献51我的...

多媒体课程设计

多媒体技术及应用课程设计报告FLASH影片制作世界第一等姓名班级学号指导教师成绩完成时间完成地点一设计题目描述当今社会电脑网络手机用户等等都是在不断的增加网络的发展壮大和完美电脑更加普及上网的人更多作为网页制作...

多媒体课程设计报告-机械时钟闹钟设计

多媒体课程设计报告课程名称多媒体软件设计技术班级学号姓名指导教师一丶前言本次课程设计主要考察我们对vb在多媒体方面的应用如何将所学理论知识运用于实际设计在程序设计过程中遇到过一些问题参考网络资料并借鉴一些内容二...

媒体播放器课程设计报告书

目录一内容提要3二程序功能简介3三设计步聚及内容41设计分析42程序说明53操作方法流程5四设计体会9一内容提要本次实习内容是利用VisualBasic设计一个简单的媒体播放器VisualBasic是美国推出的...

课程设计报告及心得体会15

管理信息系统课程设计报告个人大报告班级学号姓名指导老师秦胜君日期20xx年5月10日评阅成绩教师签名在这次设计过程中我主要负责第一阶段系统分析阶段对系统需求和可行性分析第二阶段数据流程图第四阶段编制系统使用说明...

Java课程设计心得体会

Java课程设计心得体会

多媒体课程设计报告(26篇)