您的位置:首页 > 理论基础 > 计算机网络

Java作业-网络编程

2017-12-20 20:58 190 查看

Java网络编程

关于结合以前的大作业(即我的图书馆管理系统)

我感觉,图书馆管理系统更像是一个偏向于B/S模式的体系,如果想让他可用性变得更好,可以优化的地方只有使用数据库来代替文件,我个人是没有想出任何地方可以结合网络编程OTL。所以本周我实现的是一个让java-socket编程更容易的接口层

gif展示



Git地址:https://github.com/dongmingchao/java-Socket

核心部分代码

服务器

@Override
public void run() {
online = true;
socket = startServer();
new Thread(hand).start();
while (online) {
try {
server = socket.accept();
new Thread(sonServer).start();
} catch (IOException e) {
e.printStackTrace();
}
}
inLocal.close();
outLocal.close();
}


客户端

@Override
public void run() {
online = true;
Socket client = connect();
if (initStream(client)){
outLocal.println("已链接"+client.getRemoteSocketAddress());
new Thread(hand).start();
while(in.hasNextLine()){//这里阻塞
String got = in.nextLine();
outLocal.println(got);
if (got.equals("bye")) {
if (closeClient(client)) {
System.exit(0);
}else {
System.exit(1);
}
}
}
}
}


构想

[x] 一对一体系

[x] 多对一体系

[ ] 客户端隔离模式:服务器与客户端互通,客户端之间不能通信

[ ] 客户端交流模式:服务器与客户端互通,客户端之间可以通信

[ ] 全交流模式

[ ] 无链接模式

[ ] 仅服务器广播模式:只能由服务器向客户端发送消息

目前实现的

[x] 方便的使用一对一/多对一体系
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: