實驗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
評論
查看更多