- 1、本文档共46页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
Java基于TCP编程使用实例;一、任务描述
二、任务分析、设计
三、任务实施
四、运行结果;3;二、任务分析、设计;实现思路;三、编码实现;定义服务器端类ServerWithTCP;ServerWithTCP类继承JFrame类,以实现图形界面。
封装图形界面所使用的属性、输入输出流对象以及ServerSocket和Socket对象等属性。
封装构造方法ServerWithTCP(),初始化图形界面
定义setServer()方法,设置服务器服务。
定义getClientInfo()方法,获取客户端发送来的消息
定义main方法。;其运行效果图如图所示。;用户在文本框中输入信息
点击“发送”按钮,按钮响应事件处理
按钮事件处理做三件事:将本文本框中的信息写入输出流,发送给客户端;将信息追加到本地的文本框中,用于本地显示;清空文本框。;第一步,编写服务器端类的构造方法,实现界面的初始化;“发送”按钮响应事件处理,一般步骤:
注册事件监听器
实例化监听器类
重载actionPerformed()方法;button.addActionListener(newActionListener(){
publicvoidactionPerformed(finalActionEvente){
//将要发送的文本框中信息写入输出流
writer.println(jtfSend.getText());
//同时将要发送的文本框中信息显示在多行文本框中
jtaShow.append(服务器发送的信息是:+jtfSend.getText()+\n);
//将单行文本框清空
jtfSend.setText();
}
});;首先,“发送”按钮button调用addActionListener方法,用于注册监听器,即把监听器添加在事件源button上。
然后通过newActionListener()实例化一个监听器对象,此处采用匿名类。
最后重写actionPerformed()方法。在actionPerformed()方法中,做三件事:将文本框中信息写入输出流;将文本框中信息显示在文本域中;将文本框清空。;第二步,建立服务器端服务等待客户端连接。在setServer()方法中编写如下代码。;(2)侦听并接受客户端的连接请求;(3)建立输入输出流,用于接收/发送数据;首先调用socket的getInputStream()方法获得客户端套接字的字节输入流,然后
创建InputStreamReader字符输入流对象,再创建BufferedReader缓冲字符输入流对象,
最后调用getClientInfo()方法,从reader中读取信息,从而获取客户端发来的消息。;创建输出流对象,用于发送数据到客户端;第三步,服务器端接收客户端数据。编写getClientInfo()方法代码;循环调用reader.readLine()方法读取客户端发送的信息
如果消息不为空,则追加到多行文本框中显示。
最后关闭Socket及相关资源
reader.close();
socket.close();;第四步,编写main()方法。;创建服务端的对象,通过构造函数初始化图形界面,设置可显,调用setServer()方法设置服务端的服务。;2创建客户端类;定义客户端类ClientWithTCP;ClientWithTCP类继承JFrame类,以实现图形界面。
封装图形界面所使用的属性、输入输出流对象以及ServerSocket和Socket对象等属性。
封装构造方法ClientWithTCP(),初始化图形界面
定义setConnect()方法,请求与服务器端的连接。
定义getServernfo()方法,接受服务器端发送来的消息
定义main方法。;其运行效果如图所示。;客户端发送信息给服务器端的步骤:
用户在文本框中输入信息
点击“发送”按钮,按钮响应事件处理
按钮事件处理做三件事:将本文本框中的信息写入输出流,发送给服务端;将信息追加到本地的文本框中,用于本地显示;清空文本框。;第一步,编写客户端类的构造方法,实现界面的初始化;按钮响应事件处理,一般步骤:
注册事件监听器
实例化监听器类
重载actionPerformed()方法;button.addActionListener(newActionListener(){
publicvoidactionPerformed(finalActionEvente){
//将要发送的文本框中信息写入输出流
writer.println
文档评论(0)