养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

swing如何实现服务端交互

时间:2024-11-12 05:47:53

Swing为java设计的一套GUI解决方案,java图形化编程的常见方式,虽然已经不再受宠,但是作为java初学者还是值得学习的。这里介绍一种通过socket与后台通信的方式。

swing如何实现服务端交互

工具/原料

jdk8

idea

方法/步骤

1、客户端界面设计如图,放置一个输入框用于用户输入文字,一个按钮用于点击后向服务端发送消息。

swing如何实现服务端交互

2、客户端代码实现:界面实现,首先构造一个frame和一个panel,通过媚矩碌踝往pane里面放置一个提示panel,一个输入框JTextF足毂忍珩ield,一个JButton,设置布局和提示文字,最后把这个panel放到frame里面,然后调用frame.setVisible(true);就可以展示。因为需要从按钮监听方法中获取输入框文字信息,所以需要将输入框msgTxt设置成final。消息发送:这里每次通过构造一个新的Socket对象在本机地址的8899端口,然后通过skt.getOutputStream()获取流并构造一个PrintWriter发送消息。

swing如何实现服务端交互

swing如何实现服务端交互

3、服务端代码实现:如图代码,服务端通过构造一个ServerSo罕铞泱殳cket并监听在本机的8899端口,因为需要搏皋咬夼实时监听客户端发送消息,这个写了一个while实现的死循环,通过skt=sskt.accept();轮询获取流,并通过newBufferedReader(newInputStreamReader(skt.getInputStream()构造BufferedReader对象来获取客户端发送的消息。

swing如何实现服务端交互

4、本地测试:首先启动服务端,然后启动客户端,如图向客户端输入信息,点击发送。在客户端和服务端控制台打印出来的信息中,每条消息都已经成功向服务端发送

swing如何实现服务端交互

swing如何实现服务端交互

swing如何实现服务端交互

5、总结:这里通过java的swing、socket、IO流等技术实现了一个简单的swing通信程序。可以看出只实现了客户端向服务端发送消息的单工通信,后面的服务端同时向客户端发送消息感兴趣的读者自己实现。

© 一点知识