java電子通訊錄畢業設計_(C)JAVA001電子通訊錄(帶系統托盤)

打開Server Socket,創建一個服務器型套接字和一個普通套接字,服務器型套接字在指定端口為客戶端請求的Socket 服務;? 使用ServerSocket類的accept()方法使服務器型套接字處于監聽狀態并把監聽結果返回給普通套接字;? 為該普通套接字創建輸入和輸出流;? 從輸入和輸出流中讀入或寫入字節流,進行相應的處理,并將結果返回給客戶端;? 在客戶端和服務器工作結束后關閉所有的對象,如服務器型的套接字,普通套接字,輸入和輸出流。正是由于Java系統具有基于Socket的靈活通信機制,因而其應用程序能自由地打開和訪問網絡上的對象,就象在本地文件系統中一樣。(2) Applet之間的通信:Applet之間的通信使用Applet Context類的getApplet()方法。只要在程序中加入 Applet oneapplet=getAppletContext().getApplet(“first”);便可使用name為first的Applet中的方法了。在該課題中大量使用了該種通信方法,因為專門同服務器端通信的 Applet中包含接收信息方法和發送信息方法,所有客戶端的Applet都要使用負責通信的Applet中的方法,所以客戶端的Applet同負責通信的Applet必須進行通信。 copyright paper51.com

//服務器端程序S.java 負責與客戶端通信這部分的代碼? 如下

http://www.paper51.com

import java.io.*;import java.net.*;import java.lang.*;import T2; 內容來自論文無憂網 www.paper51.com

class ThreadEchoHandler extends Thread //創建線程{T2 theT2=new T2(); paper51.com

Socket incoming;int counter; 內容來自www.paper51.com

ThreadEchoHandler(Socket i,int c){ incoming=i;counter=c; } copyright paper51.com

public void run(){try{DataInputStream in=new DataInputStream(incoming.getInputStream());DataOutputStream out=new DataOutputStream(incoming.getOutputStream());System.out.println ("hello"); boolean done=false; http://www.paper51.com

while(!done){ String aa="";String str=in.readUTF(); //從客戶端得到字符串

內容來自論文無憂網 www.paper51.com

//在此加入各自的服務程序 copyright paper51.com

System.out.println (str);

內容來自www.paper51.com

theT2.pass(str); //解碼theT2.tongji(); //修改監控庫中的信息 copyright paper51.com

aa=theT2.guan(); //操縱數據庫System.out.println ("string z is:"+aa); copyright paper51.com

if(aa.compareTo("null")!=0 ) //若是查詢數據庫,返回查詢后的結果{ //若不是查詢數據庫,不向客戶端輸出信息 out.writeUTF(aa);out.flush(); }}//while

內容來自www.paper51.com

incoming.close(); //線程關閉

內容來自論文無憂網 www.paper51.com

}//try

內容來自論文無憂網 www.paper51.com

catch(IOException e){System.out.println(e);}}//end run}

paper51.com

//----------------------------------------class S{ public static void main(String[] args){ int i=1;try{ServerSocket s=new ServerSocket(1111);for(;;){Socket incoming=s.accept();System.out.println("connect: "+i);new ThreadEchoHandler(incoming,i).start();i++;}}catch(Exception e){ System.out.println(e); }} } http://www.paper51.com

copyright paper51.com

//客戶端通信小應用程序 Echo.java

copyright paper51.com

import java.io.*;import java.net.*;import java.awt.*;import java.applet.*; 內容來自論文無憂網 www.paper51.com

public class Echo extends Applet{TextArea ta;Socket echoSocket;DataOutputStream os;DataInputStream is;String Line;

內容來自論文無憂網 www.paper51.com

public void init() { setBackground(Color.white);ta=new TextArea(5,80);ta.setEditable(false);add(ta); try{echoSocket=new Socket("10.102.4.41",1111);} //與服務器建立連接catch(IOException e){System.out.println("error");} copyright paper51.com

} 內容來自www.paper51.com

//本系統還做成了系統托盤,比較時尚的小功能 http://www.paper51.com

http://www.paper51.com

融合了JDK1。6的全新功能

paper51.com

public void st(String stri) //發送字符串的方法{try{ DataOutputStream os=new DataOutputStream(echoSocket.getOutputStream());DataInputStream is=new DataInputStream(echoSocket.getInputStream()); os.writeUTF(""+ stri ); //向服務器輸送stringos.flush();}catch(IOException e){System.out.println(" error:"+e); } } http://www.paper51.com

public String st1() //接收字符串的方法{String Line="";try{ DataOutputStream os=new DataOutputStream(echoSocket.getOutputStream());DataInputStream is=new DataInputStream(echoSocket.getInputStream()); Line=is.readUTF(); //從服務器讀來的信息ta.appendText(""+Line); //在文本域中輸出信息}catch(IOException e){System.out.println(" error:"+e); }return Line;

http://www.paper51.com

以上代碼全部實現下面的功能模塊

copyright paper51.com

(1)??????????????}歡迎界面 copyright paper51.com

(2)??????????????用戶登陸界面

paper51.com

(3)??????????????主功能界面

paper51.com

(4)??????????????創建界面

copyright paper51.com

(5)??????????????查詢界面(單一查詢和全部查詢)

內容來自論文無憂網 www.paper51.com

(6)??????????????添加信息界面 http://www.paper51.com

(7)??????????????用戶信息修改界面

paper51.com

(8)??????????????幫助界面} http://www.paper51.com

程序調試心得:1) 在建立Socket連接時,兩端的端口號必須設為一致,否則建立不了連接。服務器端必須有主機IP地址或主機名參數。2) 連接建立好之后應確定輸入和輸出流。起初程序中用的是DataInputStream和PrintStream,結果只能傳輸英文,傳輸中文時產生亂碼,將PrintStream改為DataOutputStream,使用readUTF()和writeUTF()方法后,中文傳輸問題得到解決。3) 如果一個使用某端口的程序沒有關閉,另一個程序就不能使用這個端口。4) 開始進行通信的程序均為 Application,因不符合客戶機/服務器機制,應將客戶端的Application改為Applet。其轉化的主要步驟如下:? 創建一個包含APPLET標簽的HTML文件;? 去掉應用程序中的main()方法;? 類名應繼承Applet類,而不是Frame類,并在程序開頭加入import java.applet.*;語句;? 用init()方法代替Application程序中的構造方法,當瀏覽器創建Applet類對象的時候,它自動執行init()方法;? 如Application中缺省使用了BorderLayout布局管理器,應在Applet的init()方法中重新設定;? 如果Application中有setTitle()方法,必須將其去掉,如Application中使用了菜單,在Applet中用按鈕來替換。5) 懂得了在一程序中如何引用自定義的類中的方法和變量,在程序開頭加入import 類名;在程序中加入 類名實例=new 類名(); 然后使用 實例.方法(),實例.變量即可

paper51.com

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/534871.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/534871.shtml
英文地址,請注明出處:http://en.pswp.cn/news/534871.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python進行數據分析需要安裝哪兩個庫_對Python進行數據分析_關于Package的安裝問題...

一、為什么要使用Python進行數據分析?python擁有一個巨大的活躍的科學計算社區,擁有不斷改良的庫,能夠輕松的集成C,C,Fortran代碼(Cython項目),可以同時用于研究和原型的構建以及生產系統的構建。二、Python的優勢與劣勢&#xff…

java orcl自動_Oracle自動生成編號

祝大家新年快樂,有任何問題可與我聯系:今天用JAVA向Oracle數據庫中插數據時,每次都要去計算ID,覺得好麻煩,于是想到了用數據庫自帶的ID來做,具體如下:1、首先得創建一序列序列(SEQUENCE)序列是一…

bat批處理執行python_.bat批處理添加Python任務

一、常用命令含義例一、多進程python 任務 -- start 命令echo offstart python C:\Users\ntitled\n\update_restt\test_bat.pypython C:\Users\ntitled\iin\update_restt\test_bat.pypython C:\Users\ntitled\jin\update_restt\test_bat2.pyexit1、它的作用是讓執行窗口中不顯…

import java.awt.BorderLayout;_Swing-布局管理器之BorderLayout(邊界布局)-入門

邊界布局管理器(BorderLayout)把容器的的布局分為五個位置:CENTER、EAST、WEST、NORTH、SOUTH。依次對應為:上北(NORTH)、下南(SOUTH)、左西(WEST)、右東(EAST),中(CENTER),如下圖所示。特征:l 可以把組件放在這五個位…

一分鐘學會python編程_用Python教你一分鐘檢驗出來!不用群發_編程語言_Python課程_Python教程_課課家...

Python大法已經被網友們玩兒的出神入化了, 最近有網友用Python寫了一個腳本, 這個腳本能夠自動檢測你的微信好友中誰把你刪除了? 而且不需要群發消息, 整個過程好友們是完全不知情的。使用范圍Mac和Linux經過測試, 確認可用, Windows等待大家的測試反饋, 可以在評論中反饋哦~~…

java 建造者實際中的用法_java中j建造者模式詳解和使用方法

建造者模式(Builder Pattern)使用多個簡單的對象一步一步構建成一個復雜的對象。這種類型的設計模式屬于創建型模式,它提供了一種創建對象的最佳方式。一個 Builder 類會一步一步構造最終的對象。該 Builder 類是獨立于其他對象的。介紹意圖:將一個復雜的…

python垃圾回收機制為什么標記能解決循環引用問題_python 關于循環引用以及標記清除的問題...

1 在循環引用的情況下,引用計數就不好事了,這時候就需要用到標記清除循環引用的危害: 會造成內存溢出,因為循環引用計數不可能為零解決方法:標記清除2 關于標記清除的效率問題(低)引用計數引用一次就加1,值減到0以后就應該被回收,那這里就產生了一個問題cpython的垃圾回收機制不…

jsp測試mysql_Jsp登陸與MySQL對接驗證

最近在做一個Web項目,賬戶登陸驗證是Web項目中必不可少的環節,所以需要階段性的記錄,幫助自己更好的掌握其中的知識。Jsp登陸涉及到POST方法參數獲取,以及MySQL數據庫信息的獲取。可能因為自己是新手,剛開始寫的項目有…

數據歸一化處理方法_科研常用的實驗數據分析與處理方法

科研常用的實驗數據分析與處理方法對于每個科研工作者而言,對實驗數據進行處理是在開始論文寫作之前十分常見的工作之一。但是,常見的數據分析方法有哪些呢?常用的數據分析方法有:聚類分析、因子分析、相關分析、對應分析、回歸分…

java專業術語 ioc_什么叫IOC(編程術語

IoC就是Inversion of Control,控制反轉。在Java開發中,IoC意味著將你設計好的類交給系統去控制,而不是在你的類內部控制。這稱為控制反轉。下面我們以幾個例子來說明什么是IoC假設我們要設計一個Girl和一個Boy類,其中Girl有kiss方…

python群控模擬安卓系統_手機群控腳本通用版安裝包下載-手機群控腳本通用版apk(云控平板)v1.0.01真機模擬版_新綠資源網...

手機群控腳本通用版apk是一款真機模擬云控平板應用,支持工作室批量掛機搬磚、直播刷人氣點贊、云手機試玩項目、吸粉營銷、智能引流賺錢等功能,無需多部手機,一個APP控制上萬部手機,下載安裝吧!應用介紹:云…

java jsonobject.parse_JSON.parseObject的幾種用法

import com.alibaba.fastjson.JSONObject;一.result格式:{"success":"true";"returnAddress":"123"}JSONObject jsonObjectJSON.parseObject(result); //轉換成objectjsonObject.getString("returnAddress") //獲取object中…

信息系統項目管理師_信息系統項目管理師通過率是多少?

答:信息系統項目管理師考試每個地區的通過率都是不一樣的,一般全國在10%-20%左右,這個20%的通過率是按參考人數作為統計,就是除去了那些報名了但是沒去參加考試的考生,如果算上所有報名考生的通過率數據,那…

類型“unknown”上不存在屬性“foreach”_JavaScript紅寶書第四版精簡解析系列--映射Map數據類型...

Map數據類型顧名思義也就是映射類型,包含一個[[Entries]]私有特性我們可以使用一個二維數組作為初始值const map1 new Map([[1, 1],[2, 2],[3, 3],]); console.log("Map數據類型>", map1);當然也可以使用迭代器進行初始化const map2 new Map({[Symbol.iterator]…

java面試筆試題整理(學習java基礎理論最好的資料)_2020Java筆試/面試題(持續收集整理更新)...

說明:java本篇用于收集知識點方便隨時鞏固,持續更新與糾錯。數組關于JDK版本,若無特殊說明,默認為JDK 1.8,。緩存關于JVM版本,若無特殊說明,默認為 HotSpot。安全目錄數據結構1、Java 基礎1.1 Java中的基本…

JAVA服務器沒回應_Java如何面對無服務器的挑戰?

這是來自jaxcenter組織的一個討論,談論了Java在無服務器浪潮沖擊下面臨的機會和挑戰。下面摘錄主要部分:Spring推動者Pivotal有一個名為 Riff的函數即服務平臺,它是一個開源的、Apache 2許可的、函數即服務平臺,基于Kubernetes和剛…

使用系統調用pipe建立一條管道線_使用Unixbench對服務器綜合性能打分及測試結果...

Unixbench是一個類unix系統(Unix,BSD,Linux)下的性能測試工具,一個開源工具,被廣泛用與測試linux系統主機的性能,簡稱UB。Unixbench的主要測試項目有:系統調用、讀寫、進程、圖形化測試、2D、3D、管道、運算…

java.io.file.sync_Java(25)IO流和File類

IO流File類File類講IO流之前先來講以下File類。Java的標準庫Java.io提供了File類來操作文件和目錄。操作可以有:新建、刪除、重命名等,但是不能訪問文件本身的內容,如果想要訪問,需要使用IO流。新建File對象:package day01;import…

val_loss突然變很大_女朋友突然變得很冷淡是怎么回事?該怎么辦

原本和女朋友戀愛之后她一直都表現得比較比較熱情,但是最近這段時間她突然對自己冷淡起來,很多男生可能就會很疑惑:女朋友突然變得很冷淡是怎么回事?該怎么辦呢?一、女朋友突然變得很冷淡原因不管怎么說,女…

進程調度rr算法java實現_Java實現進程調度算法(二) RR(時間片輪轉)

一、概述因為這次os作業對用戶在控制臺的輸入輸出有要求,所以我花了挺多的代碼來完善控制臺的顯示。也因為我這次要實現多個類似算法,所以將一些共性單獨提取出來作為一個類。如果只想要和算法有關的核心代碼,看RR類的calc()即可。實現思路&a…