JAVA 의 scoket 간단 한 사용법
package client;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.util.Scanner;
import javax.xml.ws.handler.MessageContext.Scope;
public class Client1 {
private Scanner sc=new Scanner(System.in);
private OutputStream out;
private InputStream in;
private Socket socket;
public Client1(){
try {
// socket
socket = new Socket("127.0.0.1",8888);
System.out.println(" ...");
while(true){
System.out.println(" :");
out = socket.getOutputStream();
//
String next = sc.next();
out.write(next.getBytes());
in = socket.getInputStream();
byte[] b=new byte[1024*1024];
int len = in.read(b);
String string = new String(b, 0, len);
if("bye".equals(string)){
break;
}
System.out.println(" :"+string);
}
in.close();
out.close();
socket.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
Client1 c=new Client1();
}
}
서버 쪽
package server;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class Server1 {
private Scanner sc=new Scanner(System.in);
public Server1(){
try {
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println(" .....");
Socket socket = serverSocket.accept();
System.out.println(" ");
while(true){
InputStream in = socket.getInputStream();
byte[] b=new byte[1024*1024];
int len = in.read(b);
String id=new String(b,0,len);
System.out.println(" :"+id);
OutputStream out = socket.getOutputStream();
String next = sc.next();
out.write(next.getBytes());
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
Server1 s=new Server1();
}
}
다 중 스 레 드 서버 엔 드
package more.server;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class ServerMore {
public static void main(String[] args) {
ServerMore s=new ServerMore();
}
public ServerMore(){
try {
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println(" .....");
while(true){
Socket socket = serverSocket.accept();
System.out.println(" ");
ServerThread st=new ServerThread(socket);
new Thread(st).start();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
class ServerThread implements Runnable{
private Socket socket;
private InputStream in;
private OutputStream out;
public ServerThread(Socket socket){
this.socket=socket;
}
@Override
public void run() {
try {
while(true){
in = socket.getInputStream();
byte[] b=new byte[1024];
int len = in.read(b);
String msg=new String(b,0,len);
System.out.println(" :\t"+msg);
if("bye".equals(msg)){
break;
}
out=socket.getOutputStream();
out.write(" ".getBytes());
}
in.close();
out.close();
socket.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.