Java聊天室之實現(xiàn)運行服務(wù)器與等待客戶端連接
一、題目描述
題目實現(xiàn):運行服務(wù)器程序,等待客戶端程序連接。
二、解題思路
首先需要在服務(wù)器中建立服務(wù)器套接字,并等待客戶程序的連接。
創(chuàng)建一個類:ServerSocketFrame,繼承JFrame
通過ServerSocket類創(chuàng)建綁定到指定端口的服務(wù)器套接字對象。然后調(diào)用ServerSocket類的accept()方法監(jiān)聽客戶端的連接。
實例化Socket對象
server = new ServerSocket(9527); // 可指定端口
三、代碼詳解
ServerSocketFrame
package com.xiaoxuzhu; import java.awt.BorderLayout; import java.net.*; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTextArea; /** * Description: 服務(wù)器中建立服務(wù)器套接字,并等待客戶程序的連接。 * * @author xiaoxuzhu * @version 1.0 * * <pre> * 修改記錄: * 修改后版本 修改人 修改日期 修改內(nèi)容 * 2022/5/29.1 xiaoxuzhu 2022/5/29 Create * </pre> * @date 2022/5/29 */ public class ServerSocketFrame extends JFrame { private JTextArea ta_info; private ServerSocket server; // 聲明ServerSocket對象 private Socket socket; // 聲明Socket對象socket public void getServer() { try { server = new ServerSocket(9527); // 實例化Socket對象 ta_info.append("服務(wù)器套接字已經(jīng)創(chuàng)建成功\n"); // 輸出信息 while (true) { // 如果套接字是連接狀態(tài) ta_info.append("等待客戶機的連接......\n"); // 輸出信息 socket = server.accept(); // 監(jiān)聽客戶端連接 ta_info.append("連接成功......\n");//有客戶端連接上,才算監(jiān)聽成功,會輸入這一段 } } catch (Exception e) { e.printStackTrace(); // 輸出異常信息 } } public static void main(String[] args) { // 主方法 ServerSocketFrame frame = new ServerSocketFrame(); // 創(chuàng)建本類對象 frame.setVisible(true); frame.getServer(); // 調(diào)用方法 } public ServerSocketFrame() { super(); setTitle("建立服務(wù)器套接字"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 260, 167); final JScrollPane scrollPane = new JScrollPane(); getContentPane().add(scrollPane, BorderLayout.CENTER); ta_info = new JTextArea(); scrollPane.setViewportView(ta_info); } }
實現(xiàn)效果
到此這篇關(guān)于Java聊天室之實現(xiàn)運行服務(wù)器與等待客戶端連接的文章就介紹到這了,更多相關(guān)Java聊天室內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
idea項目啟動報錯,日志包沖突slf4j和logback沖突問題
遇到SLF4J沖突時,可以嘗試移除沖突的綁定或調(diào)整項目依賴,具體方法包括刪除多余的Logger綁定庫,如Logback或Log4j,或在項目配置文件中明確指定使用的日志框架,若使用WebLogic服務(wù)器,需在weblogic.xml中進行特定配置,適當調(diào)整pom.xml文件中的依賴版本也可能解決問題2024-09-09

SpringSecurity6.x多種登錄方式配置小結(jié)

Spring?main方法中如何調(diào)用Dao層和Service層的方法

java調(diào)用淘寶api聯(lián)網(wǎng)查詢ip歸屬地

IntelliJ?IDEA2022中的Java文檔注釋設(shè)置、操作方法