建立简单的服务器端程序
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                建立简单的服务器端程序
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                ? 參考自core java
 
使用線程實現(xiàn)多個客戶端同時訪問:
package com.lujinhong.corejava;import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner;public class MultiEchoServer {public static void main(String[] args) {try {ServerSocket serverSocket = new ServerSocket(8189);while (true) {Socket socket = serverSocket.accept();Runnable r = new ThreadedEchoHandler(socket);Thread thread = new Thread(r);thread.start();}} catch (IOException e) {e.printStackTrace();}}}class ThreadedEchoHandler implements Runnable {private Socket s = null;public ThreadedEchoHandler(Socket socket) {s = socket;}@Overridepublic void run() {try {InputStream is = s.getInputStream();OutputStream os = s.getOutputStream();PrintWriter pw = new PrintWriter(os);Scanner sc = new Scanner(is);Boolean flag = false;String line = null;String exitString = "bye";while (!flag && sc.hasNextLine()) {pw.println("Hello, type " + exitString + " to exit!");line = sc.nextLine();if (line.trim().equals(exitString)) {flag = true;} else {pw.println("Hello, " + line);}}sc.close();pw.close();} catch (IOException e) {e.printStackTrace();}} }In this program, we spawn a separate thread for each connection. This approach is not satisfactory for highperformance?servers. You can achieve greater server throughput by using features of the java.nio package. See?www.ibm.com/developerworks/java/library/j-javaio for more information.
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎
總結(jié)
以上是生活随笔為你收集整理的建立简单的服务器端程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: GitHub项目协作基本步骤
- 下一篇: Android4.0 以后不允许在主线程
