freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

java終極大作業(yè)報告-資料下載頁

2024-10-08 12:35本頁面

【導讀】在此基礎上我們選擇了題目一作為本組的目標,識,比如數據庫的創(chuàng)建于連接。由組長XXX1負責整合所學內容。我們設計了如下的流程圖:。其中功能為截圖;功能為建立客戶端;注冊效果如圖3-4所示,注冊后數據庫數據改變效果如圖3-5

  

【正文】 der r = new BufferedReader( new InputStreamReader(()))。 PrintWriter w = new PrintWriter(socket .getOutputStream())。 // 接收客戶端的基本用戶信息 String inf = ()。 StringTokenizer st = new StringTokenizer(inf, @)。 User user = new User((), ())。 // 反饋連接成功信息 (MAX@服務器:對不起, + () + () + ,服務器在線人數已達 上限,請稍后嘗試連接! )。 ()。 // 釋放資源 ()。 ()。 Java語言程序設計(報告) 35 ()。 continue。 } ClientThread client = new ClientThread(socket)。 ()。// 開啟對此客戶端服務的線程 new sc(socket2).start()。//開啟接受文件線程 //if(()==1){ //new FileOutputThread(socket2).start()。 //} (client)。 /* (().getName())。// 更新在線列表 (().getName() + ().getIp() + 上線 !\n)。 */ } catch (IOException e) { ()。 } } Java語言程序設計(報告) 36 } } class ClientThread extends Thread { private Socket socket。 private BufferedReader reader。 private PrintWriter writer。 private User user。 public BufferedReader getReader() { return reader。 } public PrintWriter getWriter() { return writer。 } public User getUser() { return user。 } public ClientThread(Socket socket) { try { = socket。 reader = new BufferedReader(new InputStreamReader(socket .getInputStream()))。 Java語言程序設計(報告) 37 writer = new PrintWriter(())。 // 接收客戶端的基本用戶信息 String inf = ()。 StringTokenizer st = new StringTokenizer(inf, @)。 user = new User((), ())。 // 反饋連接成功信息 (() + () + 與服務器連接成功 !)。 ()。 // 反饋當前在線用戶信息 if (() 0) { String temp = 。 for (int i = () 1。 i = 0。 i) { temp += ((i).getUser().getName() + / + clients .get(i).getUser().getIp()) + @。 } (USERLIST@ + () + @ + temp)。 ()。 } Java語言程序設計(報告) 38 // 向所有在線用戶發(fā)送該用戶上線命令 /*for (int i = () 1。 i = 0。 i) { (i).getWriter().println( ADD@ + () + ())。 (i).getWriter().flush()。 } */ } catch (IOException e) { ()。 } } public void run() {// 不斷接收 客戶端的消息,進行處理。 String message = null。 while (true) { try { message = ()。// 接收客戶端消息 if ((CLOSE))// 下線命令 { // (().getName() //+ ().getIp() + 下線 !/n)。 // 斷開連接釋放資源 ()。 Java語言程序設計(報告) 39 ()。 ()。 // 向所有在線用戶發(fā)送該用戶的下線命令 /* for (int i = () 1。 i = 0。 i) { (i).getWriter().println( DELETE@ + ())。 (i).getWriter().flush()。 } */ //(())。// 更新在線列表 // 刪除此條客戶端服務線程 for (int i = () 1。 i = 0。 i) { if ((i).getUser() == user) { ClientThread temp = (i)。 (i)。// 刪除此 Java語言程序設計(報告) 40 用戶的服務線程 ()。// 停止這條服務線程 return。 } } } else { dispatcherMessage(message)。// 轉發(fā)消息 } } catch (IOException e) { ()。 } } } public void dispatcherMessage(String message) { StringTokenizer stringTokenizer = new StringTokenizer(message, @)。 String source = ()。 String owner = ()。 String content = ()。 message = source + 說: + content。 (message + \n)。 if ((ALL)) {// 群發(fā) for (int i = () 1。 i = 0。 i) { Java語言程序設計(報告) 41 (i).getWriter().println(message)。 (i).getWriter().flush()。 } } } } } 四、數據庫直連和文件線程 數據庫直連核心代碼: package ceshi。 import .*。 public class User { private String name。 private String ip。 public User(String name, String ip) { = name。 = ip。 } public String getName() { return name。 Java語言程序設計(報告) 42 } public void setName(String name) { = name。 } public String getIp() { return ip。 } public void setIp(String ip) { = ip。 } User(){ try{ (ver)。 }catch(ClassNotFoundException e){ (加載橋連接驅動器失敗
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1