JAVA SOCKET多线程等待接受客户端信息实现
服务端程序:
public class Demo {
public static void main(String[] args) {
// TODO 自动生成的方法存根
try {
ServerSocket server =new ServerSocket(6666);
Socket client = null;
int i=0;
while(true) {
client = server.accept();
new Thread(new ServerThread(client)).start();
i++;
System.out.println("当前是第:"+i+"个用户连进来了。接入的客户端的IP地址:"+client.getInetAddress().getHostAddress());
}
} catch (Exception e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } }
}
class ServerThread implements Runnable{
Socket client =null;
ServerThread(Socket temp){
this.client=temp;
}
@Override
public void run() {
// TODO 自动生成的方法存根
try {
InputStream in = client.getInputStream();
InputStreamReader reader = new InputStreamReader(in);
BufferedReader buff = new BufferedReader(reader);
String str="";
while((str=buff.readLine())!=null){
System.out.println("接受到客户端请求:"+str);
}
client.shutdownInput();
OutputStream out = client.getOutputStream();
PrintWriter p = new PrintWriter(out);
p.write("欢迎您");
p.flush();
reader.close();
in.close();
p.close();
out.close();
client.close();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
客户端程序:
public class Demo {
public static void main(String[] args) {
// TODO 自动生成的方法存根
try {
Socket client =new Socket(InetAddress.getLocalHost(),6666);
OutputStream out = client.getOutputStream();
String str="登录名:张三 密码:123";
out.write(str.getBytes());
out.flush();
client.shutdownOutput();
InputStream in = client.getInputStream();
InputStreamReader reader =new InputStreamReader(in);
BufferedReader buff =new BufferedReader(reader);
String request="";
while((request=buff.readLine())!=null) {
System.out.println("获取服务端返回:"+request);
}
out.close();
reader.close();
in.close();
client.close();
} catch (UnknownHostException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
} }
JAVA SOCKET多线程等待接受客户端信息实现的更多相关文章
- java socket 多线程网络传输多个文件
http://blog.csdn.net/njchenyi/article/details/9072845 java socket 多线程网络传输多个文件 2013-06-10 21:26 3596人 ...
- java Socket多线程聊天程序
参考JAVA 通过 Socket 实现 TCP 编程 参考java Socket多线程聊天程序(适合初学者) 以J2SDK-1.3为例,Socket和ServerSocket类库位于java.net包 ...
- Java Socket 多线程聊天室
本来这次作业我是想搞个图形界面的,然而现实情况是我把题意理解错了,于是乎失去了最初的兴致,还是把程序变成了功能正确但是“UI”不友好的console了,但是不管怎么样,前期的图形界面的开发还是很有收获 ...
- java socket 单服务器多客户端实时通信
想用JAVA做一个服务器,请问怎么利用TCP和线程,实现多个客户端同时在线,能与服务器进行交互? 服务器监听端口 做个无限循环 接到一个连接就创建一个通道线程,并将通道线程存储到一个list集合中 1 ...
- java socket 多线程通讯 使用mina作为服务端
客户端代码不变,参照 http://www.cnblogs.com/Westfalen/p/6251473.html 服务端代码如下: import java.io.IOException; impo ...
- java socket 多线程通讯
1.目录结构 2.Server.java 代码 package de.bvb.server; import java.net.ServerSocket; import java.net.Socket; ...
- Java socket 多线程编程 示例
参照网上代码: 1.工程: 2.代码: Client.java package com.my.socket.test; import java.io.BufferedReader; import ja ...
- java基础-多线程 等待唤醒机制
/** * @param args * 等待唤醒机制 */ public static void main(String[] args) { final Printer p = new ...
- Java Socket实现HTTP客户端来理解Session和Cookie的区别和联系
HTTP协议本身是无状态的,即使是同一台电脑同一个浏览器打开同一个页面两次,服务器不知道这两次请求是同一个客户端发送过来的,两次请求是完全独立的.例如,第一次请求时已经登录了,第二次再请求服务器会“忘 ...
随机推荐
- 哪些工具可以提升PHP开发效率
本文就我自己在开发过程中的一点经验,谈谈如何利用工具来提升开发工作的编码效率, IDE(phpstorm 收费) 一个好的IDE真的可以给开发人员节省大量的时间,我从最开始使用editplus 到su ...
- Django框架初体验
前言 从今天开始学习测试开发知识,并会把每一次学习的过程和成果记录到博客,由于我也没怎么接触过python相关的开发框架,所以前期应该是艰难的,但是我相信努力就会有收获,如果你和我一样是个小白,那我们 ...
- 数字任意组合 - gcd
链接:https://www.nowcoder.com/acm/contest/160/A来源:牛客网 题目描述有一个计数器,计数器的初始值为0,每次操作你可以把计数器的值加上a1,a2,...,an ...
- 从网上下载DLL
1,微软官网 2:https://www.zhaodll.com/ 3:http://www.dllzj.com/
- spark和mapreduce的区别
spark和mapreduced 的区别map的时候处理的时候要落地磁盘 每一步都会落地磁盘 reduced端去拉去的话 基于磁盘的迭代spark是直接再内存中进行处理 dag 执行引擎是一个job的 ...
- 使用ajax向后台发送请求跳转页面无效的原因
Ajax只是利用脚本访问对应url获取数据而已,不能做除了获取返回数据以外的其它动作了.所以浏览器端是不会发起重定向的. 1)正常的http url请求,只有浏览器和服务器两个参与者.浏览器端发起一个 ...
- 不要把 JWT 用作 session
现在很多人使用 JWT 用作 session 管理,这是个糟糕的做法,下面阐述原因,有不同意见的同学欢迎讨论. 首先说明一下,JWT 有两种: 无状态的 JWT,token 中包含 session 数 ...
- IDEA中的JUNIT测试
安装插件 Ctrl+Alt+s→Plugins→junitgenerator v2.0 Alt+insert 选中JUnit test 中JUnit4 package test.com.demo.co ...
- Manipulating Data from Oracle Object Storage to ADW with Oracle Data Integrator (ODI)
0. Introduction and Prerequisites This article presents an overview on how to use Oracle Data Integr ...
- CTRL-IKun团队选题报告
1. 团队简介 1.1团队名称:CTRL-IKun 1.2队员学号列表 姓名 学号列表 廖志丹 201731032125 王川 201731021132 江天宇 201731024132 张微玖 20 ...