首页 / JAVA / java 网络编程-多人登录面向对象
java 网络编程-多人登录面向对象
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java 网络编程-多人登录面向对象,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2883字,纯文字阅读大概需要5分钟。
内容图文
![java 网络编程-多人登录面向对象](/upload/InfoBanner/zyjiaocheng/1311/6f4436b0c68b4e2f94f080ce1b2ea5e0.jpg)
public class tcp {
public static void main(String[]args) throws IOException
{
System.out.println("服务器启动中...");
ServerSocket server=new ServerSocket(8888);
boolean flag=true;
while(flag) {
Socket client=server.accept(); //一个客户端建立连接
System.out.println("一个客户端建立了连接");
new Thread(new channel(client)).start();
}
}
static class channel implements Runnable{
private Socket client;
private DataInputStream dis; //输入流
DataOutputStream dos; //输出流
public channel(Socket client)
{
this.client=client;
try {
dis=new DataInputStream(client.getInputStream());
dos=new DataOutputStream(client.getOutputStream());
} catch (IOException e) {
e.printStackTrace();
release();
}
}
public void run()
{
String uname="";
String password="";
String data=receive();
String[] datas=data.split("&");
uname=datas[0];
password=datas[1];
if(uname.equals("杜雨龙")&&password.equals("你最帅"))
{
send("登陆成功");
}else
{
send("登录失败");
}
release();
}
//接收数据
private String receive()
{
String data="";
try {
data = dis.readUTF();
} catch (IOException e) {
e.printStackTrace();
}
return data;
}
//发送数据
private void send(String msg)
{
try {
dos.writeUTF(msg);
dos.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
//释放资源
private void release()
{
try {
if(null!=dis)
{
dis.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if(null!=dis)
{
dos.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if(null!=client)
{
client.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
客户端: 存储文件
public class tcp2 {
public static void main(String[]args) throws IOException
{
System.out.println("客户端启动中...");
Socket client=new Socket("localhost",8888);
//发送
new send(client).sendto(name+"&"+password);
new receive(client).receiveto();
client.close();
}
static class send{
private Socket client;
private DataOutputStream dos;
private BufferedReader br;
private String msg;
public send(Socket client)
{
this.client=client;
br=new BufferedReader(new InputStreamReader(System.in));
msg=init();
try {
dos =new DataOutputStream(client.getOutputStream());
} catch (IOException e) {
e.printStackTrace();
}
}
public void sendto()
{
try {
dos.writeUTF(msg);
dos.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
public String init()
{
try {
System.out.println("请输入用户名");
String name=br.readLine();
System.out.println("请输入密码");
String password=br.readLine();
return name+"&"+password;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
static class receive{
private DataInputStream dis;
private Socket client;
public receive(Socket client)
{
this.client=client;
DataInputStream dis=new DataInputStream(client.getInputStream());
}
public void receiveto()
{
String data;
try {
data = dis.readUTF();
System.out.println(data);
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
原文:https://blog.51cto.com/14437184/2433106
内容总结
以上是互联网集市为您收集整理的java 网络编程-多人登录面向对象全部内容,希望文章能够帮你解决java 网络编程-多人登录面向对象所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。