实验12 网络编程
一、实验目的
1. 掌握InetAddress类的使用。
2. 掌握TCP与UDP编程:Socket与Datagram的概念和编程方法。
3. 掌握URL类的使用:URL的概念和编程。
二、实验要求
通过Socket编程,掌握网络应用程序的开发方法;完成数据库的连接;掌握利用Java提供的基本组件进行网络传输;掌握Java提供的多线程机制,异常处理机制和低层对协议的通信机制,通过Socket编程,掌握网络应用程序的开发方法;设计测试,性能评估。上机练习之前,必须先完成程序的书写,再上机调试。
三、实验内容
(一)使用InetAddress类的方法
通过使用InetAddress类的方法,获取http://www.ytu.edu.cn/的主机的IP地址;获取本地机的名称和IP地址。
(二)Socket编程
使用Socket编程,客户机发送数据到服务器,服务器将接收到的数据返回给客户机。
(三)UDP编程
使用UDP编程,客户机发送数据到服务器,服务器将接收到的数据返回给客户机
(四)获取URL信息
1. 编写KY12_1.java 程序文件,源代码如下。
import java.net.*;
import java.io.*;
public class URLTest {
public static void main(String[] args){
URL url=null;
InputStream is;
try{
url=new URL("http://localhost/index.html");
is=url.openStream();
int c;
try{
while((c=is.read())!=-1)
System.out.print((char)c);
}catch(IOException e){
}finally{
is.close();
}
}catch(MalformedURLException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}
System.out.println("文件名:"+url.getFile());
System.out.println("主机名:"+url.getHost());
System.out.println("端口号:"+url.getPort());
System.out.println("协议名:"+url.getProtocol());
}
}
2. 编译并运行
(五)利用URL类获取网络资源
1. 编写KY12_2.java 程序文件,源代码如下。
import java.net.*;
import java.io.*;
public class URLReader {
public static void main(String[] args) throws Exception {
URL web = new URL("http://166.111.7.250:2222/");
BufferedReader in = new BufferedReader(new InputStreamReader(web.openStream()));
String inputLine;
while ((inputLine = in.readLine()) != null)System.out.println(inputLine);
in.close();
}
}
2. 编译并运行
(六)利用URLConnection对URL资源的读取
1. 编写KY12_3.java 程序文件,源代码如下。
import java.net.*;
import java.io.*;
public class URLConnectionReader {
public static void main(String[] args) throws Exception {
URL web = new URL("http://166.111.7.250:2222/");
URLConnection webc=web.openConnection();
//get an instance of URLConnection
BufferedReader in = new BufferedReader(new InputStreamReader(
webc.getInputStream())); //use of URLConnection
String inputLine;
while ((inputLine = in.readLine()) != null) System.out.println(inputLine);
in.close();
}
}
2. 编译并运行
(七)掌握URLConnection对URL资源的写入
1. 编写KY12_4.java 程序文件,源代码如下。
import java.io.*;
import java.net.*;
public class Reverse {
public static void main(String[] args) throws Exception {
if (args.length != 1) {
System.err.println("Usage: java Reverse string_to_reverse");
System.exit(1);
}
String stringToReverse=args[0];
URL url = new URL("http://java.sun.com/cgi-bin/backwards");
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
PrintWriter out = new PrintWriter(connection.getOutputStream());
out.println("string=" + stringToReverse);
out.close();
BufferedReader in = new BufferedReader(new InputStreamReader(
connection.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) System.out.println(inputLine);
in.close();
}
}
2. 编译并运行
四、思考题
1. 什么是URL?一个URL地址由哪些部分组成?
2. 网络环境下的C/S模式的基本思想是什么?什么是客户机?什么是服务器?它们各自的作用如何?C/S模式的基本工作过程如何?
3. 简述流式Socket的通信机制。它的最大特点是什么?
4. 数据报通信有何特点?简述Java实现数据报通信的基本工作过程
JAVA网络编程实验
- JAVA(102450)
相关推荐
Java网络编程与分布式计算
本书清晰地介绍了联网的基本原理,在进行网络编程时需要掌握的主要概念,以及在联网时可能遇到的问题和Java的解决方案。同时通过实例来介绍如何运用网络编程技术在Java平台上编写应用程序。本书不仅适合于网络编程的初学者,而且还适合于有一定网络编程经验的程序员。
2016-04-19 09:32:528
Java网络编程与分布式计算 pdf
Java网络编程与分布式计算清晰地介绍了联网的基本原理,在进行网络编程时需要掌握的主要概念,以及在联网时可能遇到到的问题和Java的解决方案。同时通过实例来介绍如何运用
2008-09-26 23:13:16137
Java程序设计之Java安全技术网络编程的详细资料说明
本文档详细介绍的是Java程序设计之Java安全技术网络编程的详细资料说明主要内容包括了:1 安全基本知识 ,2 Java的安全模型 ,3 Java的密码学结构
2019-02-26 14:15:096
Java数据库连接及网络程序设计
Java数据库连接及网络程序设计
一、实验目的: 通过Socket编程,掌握网络应用程序的开发方法;完成数据库的连接;掌握利用Java提供的基本组件进行
2008-12-05 23:56:261347
DevEco Studio里的java UI框架有没有必要做拖拽式编程呢?
DevEco Studio已经支持js UI框架拖拽式编程,你觉得java UI框架有没有必要做拖拽式编程呢?
2022-05-18 15:32:42
Java程序设计实验指导书六个实验详细资料说明
AWT 及 Swing 应用开发试验,实验项目四 Java Applet 及多线程开发实验,实验项目五 Java 网络应用程序开发试验,实验项目六 Java 数据库技术开发实验,附件 1 《Java 程序设计》课程实验教学大纲。
2019-05-21 08:00:000
基于Socket的java通信编程详解
Java最初是作为网络编程语言出现的,其对网络提供了高度的支持,使得客户端和服务器的沟通变成了现实,而在网络编程中,使用最多的就是Socket。像大家熟悉的QQ、MSN都使用了Socket相关的技术。下面就让我们一起揭开Socket的神秘面纱。
2017-12-28 17:37:222590
JAVA常用系统类的使用 实验
实验 6 常用系统类的使用 一、实验目的 了解 Java 常用的系统类,包括 Java Applet、字符串类、输入输出流类、数学函数类、日期类、随机数类以及向量类等的基
2008-09-23 19:01:541565
java编程思想 pdf
java编程思想为第四版,文件为 pdf格式。内容丰富,值得学习。java编程思想赢得了全球程序员的广泛赞誉,即使是最晦涩的概念,在Bruce Eckel的文字亲和力和小而直接的编程示
2008-12-06 12:19:32119
Java图形用户界面编程教程
8.1 Java图形用户界面编程知识本章主要介绍Java图形用户界面编程,对一个优秀的应用程序来说,良好的图形用户接口是必不可少的。缺少良好的图形用户界面,将会给用户
2009-04-10 15:16:4159
最流行的编程语言java,python
世界上最大的编程相关书籍出版商Packt Publishing进行的市场研究显示,Java和Python是当今最流行的编程语言,Java流行程度位居第3。 该公司通过调查11000受访者得出以上结论
2017-09-26 10:22:320
java流与文件实验
实验10 流与文件一、实验目的 1. 理解数据流的概念2. 理解Java流的层次结构3. 理解文件的概念二、实验要求 1. 掌握字节流
2008-09-23 19:04:081758
JAVA简单程序设计实验
JAVA简单程序设计实验
一、实验目的: 掌握下载和安装J2SE开发工具的方法;熟悉J2SE开发工具的使用;学习编写简单的Java Application
2008-12-05 23:53:331560
10个Java编程中异常处理最佳实践
这里是我收集的10个Java编程中进行异常处理的10最佳实践。在Java编程中对于检查异常有褒有贬,强制处理异常是一门语言的功能。在本文中,我们将尽量减少使用检查型异常,同时学会在Java编程中使用检查型VS非检查型异常。
2020-05-03 17:49:001613
Java编程思想_Thinking In Java_第四版中文版
电子发烧友网站提供《Java编程思想_Thinking In Java_第四版中文版.txt》资料免费下载
2015-10-12 17:50:1620
java多线程编程实例 (源程序)
java多线程编程实例
import java.awt.*;import javax.swing.*;
public class CompMover extends Object { 
2008-10-22 11:48:1342
JAVA教程之面向对象程序设计语言Java的系统环境概述
本文档的主要内容详细介绍的是JAVA教程之面向对象程序设计语言Java的系统环境概述主要内容包括了:1.1 编程语言的发展 ,1.2 网络时代的编程语言——Java,1.3 Java的开发运行环境,1.4 Java程序的运行步骤
2019-01-16 11:12:3913
JAVA图形与多媒体处理 实验
实验 8 图形与多媒体处理 一、实验目的 熟悉图形、图像的使用方法,理解计算机动画的原理和 Java 的多线程处理机制,能够编写 Applet中使用的动画
2008-09-23 19:03:01878
Java编程和c语言哪一种更有优势_C语言与JAVA的区别是什么
软件开发编程语言多达600余种,每种都有各自的特点和应用领域。目前,在国内,最热的几门编程语言无外乎Java、C、C++了,Java和C同为面向对象语言,是最相近的,因此,许多人在选择这两种编程语言时,经常会困惑,学哪一种有优势呢?Java和C有什么区别呢?请看下文
2018-02-05 17:23:2924144
面向对象编程练习
实验 3 面向对象编程练习 一、实验目的 通过编程和上机实验理解 Java 语言是如何体现面向对象编程基本思想,了解类的封装方法,以及 如何
2008-09-23 18:57:122751
当下最热门最好就业的编程语言还是java
Java:一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
2016-12-19 14:56:072957
JAVA编程思想下载(第3三版)
JAVA编程思想下载(第3版)内容丰富—从Java的基础语法到最高级特性,适合各层次的Java程序员阅读,同时也是高等院校讲授面向对象程序设计语言及Java语言的绝佳教材。
JAVA编
2008-12-06 12:10:5488
Java中包、接口与异常处理(exception) 实验
实验 4 包、接口与异常处理(exception) 一、实验目的 了解 Java 中包(package)、接口(interface)和异常处理(exception)的作用,掌握包、接口
2008-09-23 19:00:131022
基于Java+RMI的网络信息监控系统设计
在分析Java RMI 技术的基础上,论述了Java RMI 实现Java 同构环境下的分布式对象计算的关键技术,同时探讨了Java RMI 体系结构. 结合网络协议分析的应用技术,提出一个基于Java RMI 的分布式
2010-01-04 12:14:3617
java的stream编程调试技巧
java的stream编程给调试带来了极大的不便,idea 推出了streamtrace功能,可以详细看到每一步操作的关系、结果,非常方便进行调试。初遇StreamTrace这里简单将字符串转成它的字符数,并设置断点开启debug模式。
2022-10-11 11:06:461039
面向对象程序设计 - 课内实验1(Java语言概述)
了解 Java的数据类型
掌握各种变量的声明方式。
理解运算符的优先级。
掌握 Java基本数据类型、运算符与表达式、数组的使用方法。
理解 Java程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法。
通过以上内容,掌握 Java语言的编程规则。
2020-11-17 14:22:411
java程序设计100例
java程序设计100例通过100个精选的实例深入浅出地讲解了Java程序设计的主要应用,涵盖图形用户界面、Applet编程、多媒体处理、输入输出系统、网络编程、数据库编程、安全编程、
2008-12-08 11:23:19535
Java编程及相关书籍.O'Reilly.Creating.Ef
Java编程及相关书籍.O'Reilly.Creating.Effective.Javahelp
2017-03-19 11:23:450
JAVA线程实验
实验11 线程一、实验目的 1. 线程的概念、线程的生命周期。2. 多线程的编程:继承Thread类与使用Runnable接口。3. 使用多线程机制实
2008-09-23 19:04:441072
Java RMI在分布计算中的应用
随着网络技术、面向对象技术的成熟,分布计算已成为软件设计的主流技术。Java RMI是Java 实现网络分布计算应用模型的解决方案之一。本文简单介绍RMI 的编程方法,讨论了利用RM
2009-09-14 15:23:4511
Java编程思想_中文版4
《Java编程思想》这本书赢得了全球程序员的广泛赞誉,即使是最晦涩的概念,在Bruce Eckel的文字亲和力和小而直接的编程示例面前也会化解于无形。从Java的基础语法到最高级特性(深入的面向对象
2016-03-09 11:20:451
基于UDP协议的Socket网络编程模式的实现
传输层进行网络通信编程的接口是Socket&它是通用的开发网络通信程序标准) 本文介绍了基于UDP协议Socket编程机制和原理& 提出了在C/ S模型下以Java Socket来部署和实现网络
2010-09-09 15:10:4742
Java编程语言基础教程免费下载
本文档的主要内容详细介绍的是Java编程语言基础教程免费下载包括了:第一单元基本语法,第二单元基本语法,第三单元面向对象编程,第四单元面向对象编程,第五单元面向对象编程
2019-10-23 08:00:0017
学习Java有前途吗?Java岗位饱和了吗?这篇文告诉你!
现在学Java有前途吗?Java岗位饱和了吗?学Java前途是有的,Java流行的网络编程语言之一,比较不错的语言,java语言在当今信息化社会中发挥着重要的作用。学历是门槛,初中高中学历建议先提升学历。
2020-10-23 16:25:512536
Java-Matlab混合编程的研究
为了在Matlab环境下开发复杂的图形界面程序,本文对Java语言和Matlab语言混合编程进行了研究,提出了两种基于Java SWT图形开发技术的Matlab程序开发方法,详细说明了具体的开发步骤。以
2013-02-21 16:16:0233
Java程序设计教程之Java WEB服务器端编程的详细资料说明
本文档详细介绍的是Java程序设计教程之Java WEB服务器端编程的详细资料说明主要内容包括了:1 Java Web服务器介绍,2 Servlet介绍,3 JSP介绍,4 Struts介绍,5 Spring(自学)
2019-02-22 10:28:0411
JAVA工程师的前途怎么样
Java是门高端计算机编程语言,Java是门称霸世界的编程语言,Java还是门企业级编程语言,当下谷歌、eBay、淘宝、京东、阿里和其它的大型电子商务品牌都在使用Java来后台处理。
2019-04-08 15:48:462122
java编程思想中文版 (电子书)
java编程思想中文版第4版特点: 适合初学者与专业人员的经典的面向对象叙述方式,为更新的Java SE5/6增加了新的示例和章节。 测验框架显示程序输出。 设计模
2008-12-06 12:17:32394
Java可编程JoC模块简化硬件设计
Java on a Chip (JoC) 是世界上第一个 Java 可编程控制器模块,专为智能应用程序的创新和专业开发人员而设计。高度集成的 Java 可编程 JoC 模块可以替代传统的微控制器
2022-07-28 08:02:441110
Java编程基础PPT
程序必需转换为 Java 虚拟机能够理解的形式,这样,任何安装有Java虚拟机的计算机就可以解释并运行该程序。 打开命令行窗口,进入存储Welcome .java的目录,敲入下面的命令: javacWel
2011-08-22 17:27:15454
java高级编程实验报告
编写java程序,从文本文件stuinfo.txt中读取逗号分隔的字符串(每行对应一个字符串),其中包含学生ID,性别,年龄,语文,数学成绩,比如”001,male,15,96,80”.在程序中定义
2022-12-20 17:15:020
浅谈Java编程学习 Java基础语法注意项
每当说到IT行业时,很多朋友们会想到java,随着时代的发展,人们学习java的热度依然只增不减,但关于java,有人会问基础语法是怎样的,该如何学习?
2018-05-30 16:34:00780
如何在Ubuntu 22.04安装Java
Java是用于构建各种应用程序和系统的最流行的编程语言之一。Java可以在所有主流的操作系统和设备运行。您可以在手机和游戏机找到使用用Java开发的应用程序。
2022-12-12 17:25:284607
java并发编程实战之辅助类用法
Java并发编程:CountDownLatch、CyclicBarrier和Semaphore2017-09-18 13:07程序设计/58 在java 1.5中,提供了一些非常有用的辅助类来帮助
2017-09-27 16:50:300
评论
查看更多