需求
基于异常处理快递管理任务 , 加入网络编程+io处理。要求:快递数据永久存储在文件中 , 每次程序打 开加载数据. 客户端不存储任何数据, 全部传输到服务器来存储.
Service服务端源码:
package pers.sheng.demo;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import java.util.Scanner;
public class ServiceSystem {
public static void main(String[] args) {
try {
Service();
} catch (IOException e) {
System.out.println("最后一台客户机退出!");
}
}
static void Service() throws IOException {
System.out.println("--服务器已启动--");
ServerSocket s = new ServerSocket(9999);
Socket client = s.accept();
Scanner input = new Scanner(System.in);
DataInputStream dis = new DataInputStream(client.getInputStream());
DataOutputStream dos = new DataOutputStream(client.getOutputStream());
System.out.println("--服务器已与客户机建立连接--");
String company = null;
String orderNumber = null;
while(true) {
String context = null;
Parcel p2 = new Parcel();
Map map = new HashMap();
context = dis.readUTF();
switch(
context.substring(0,context.indexOf(":")).equals("1.1")?1:
(context.substring(0,context.indexOf(":")).equals("1.2")?2:
(context.substring(0,context.indexOf(":")).equals("1.3")?3:
(context.substring(0,context.indexOf(":")).equals("2.1")?4:
((context.substring(0,context.indexOf(":")).equals("3.1")?5:
((context.substring(0,context.indexOf(":")).equals("0")?6:0)))))))
) {
case 1://快递录入
company = context.substring(context.indexOf(":")+1, context.length());
System.out.println("客户输入的快递公司:"+company);
break;
case 2