本文主要是介绍JavaSocket聊天器二客户端与服务端发送信息,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
客户端与服务端的信息传送
题接上篇,这篇博文记录的是:在客户端写信息输送给服务端。
关键性的点:理解Socket的作用,在服务端和客户端之间的桥梁作用,在通过输入输出流的相关操作,通过Socket得到相关信息。废话不多说:贴代码:
服务端:
public class Server {private ServerSocket server=null;private Socket socket=null;public Server(){try {System.out.println("服务器等待客户端连接......");//创建ServerSocket,并申请计算机的8088服务端口server = new ServerSocket(8088);socket = server.accept();/** 监听Socket的连接--来自客户端的Socket的。* 该方法是一个阻塞方法,直到一个客户端通过Socket连接后,accept会封装一个Socket,* 该Socket封装与表示该客户端的有关的信息。通过这个Socket与该客户端进行通信。*/System.out.println("服务器连接成功");} catch (IOException e) {e.printStackTrace();}}public void start() throws IOException{InputStream in = socket.getInputStream();InputStreamReader isr = new InputStreamReader(in,"UTF-8");BufferedReader br = new BufferedReader(isr);String str = br.readLine();System.out.println(str);}public static void main(String[] args) throws IOException {Server server = new Server();server.start();}}
客户端:
public class Client {private Socket socket=null;public Client() throws IOException{socket = new Socket("localhost",8088);/** 创建Socket的同时就发起连接,若连接异常会抛出异常。* 我们通常创建Socket时会传入服务端的地址以及服务端口号。* 1,服务器IP地址* 2,计算机服务端口*/}public void start() throws IOException{Scanner scanner = new Scanner(System.in);OutputStream out = socket.getOutputStream();OutputStreamWriter osw =new OutputStreamWriter(out,"UTF-8");PrintWriter pw = new PrintWriter(osw,true);pw.println(scanner.nextLine());}public static void main(String[] args) throws IOException {Client client = new Client();client.start();}}
总结:重要的知识点:还是那一句话,理解Socket,与Socket的相关流的操作。
未完待续.....
这篇关于JavaSocket聊天器二客户端与服务端发送信息的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!