tcp员工信息管理系统代码
时间: 2023-07-02 15:06:52 浏览: 41
抱歉,我不能为您提供完整的代码。但是,以下是一个简单的 TCP 员工信息管理系统的框架,您可以根据自己的需求进行修改和完善。
服务端代码:
```python
import socket
import threading
# 定义服务器主机和端口号
HOST = 'localhost'
PORT = 8000
# 定义员工信息字典
employee_data = {}
# 处理客户端请求的函数
def handle_client(client_socket):
while True:
# 接收客户端消息
request = client_socket.recv(1024)
if not request:
break
# 解析请求消息
command, key, value = request.decode().split('|')
# 根据请求类型执行相应操作
if command == 'add':
employee_data[key] = value
response = '员工信息添加成功!'
elif command == 'get':
response = employee_data.get(key, '未找到该员工信息!')
elif command == 'delete':
if key in employee_data:
del employee_data[key]
response = '员工信息删除成功!'
else:
response = '未找到该员工信息!'
else:
response = '无效的命令!'
# 向客户端发送响应消息
client_socket.send(response.encode())
# 关闭客户端连接
client_socket.close()
# 启动服务器
if __name__ == '__main__':
# 创建 socket 对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定主机和端口号
server_socket.bind((HOST, PORT))
# 开始监听客户端连接
server_socket.listen(5)
print('服务器已启动,等待客户端连接...')
# 处理客户端请求
while True:
client_socket, _ = server_socket.accept()
print('客户端已连接:', client_socket.getpeername())
client_thread = threading.Thread(target=handle_client, args=(client_socket,))
client_thread.start()
```
客户端代码:
```python
import socket
# 定义服务器主机和端口号
HOST = 'localhost'
PORT = 8000
# 创建 socket 对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务器
client_socket.connect((HOST, PORT))
print('已连接服务器:', (HOST, PORT))
# 添加员工信息
employee_name = input('请输入员工姓名:')
employee_id = input('请输入员工工号:')
request = f'add|{employee_id}|{employee_name}'
client_socket.send(request.encode())
response = client_socket.recv(1024).decode()
print(response)
# 获取员工信息
employee_id = input('请输入员工工号:')
request = f'get|{employee_id}|'
client_socket.send(request.encode())
response = client_socket.recv(1024).decode()
print(response)
# 删除员工信息
employee_id = input('请输入员工工号:')
request = f'delete|{employee_id}|'
client_socket.send(request.encode())
response = client_socket.recv(1024).decode()
print(response)
# 关闭客户端连接
client_socket.close()
```