В настоящее время я занимаюсь разработкой клиент-серверного приложения на Java и не могу определиться с тем, как спроектировать клиент.
На данный момент у меня есть сервер, который может принимать несколько соединений, и каждое соединение имеет цикл, который прослушивает команды и отвечает на них.Сервер выглядит следующим образом:
try{
mIn = new DataInputStream(mSocket.getInputStream());
mOut = new DataOutputStream(mSocket.getOutputStream());
while(true){
byte tPackType = mIn.readByte();
switch(tPackType){
case PackType.LOGIN:
login();
break;
case PackType.REGISTER:
register();
break;
default:
}
}
}catch (IOException e){
mLog.logp(Level.WARNING, this.getClass().getName(), "run()", "IOException in run()", e);
}finally{
try{
mOut.close();
mIn.close();
mSocket.close();
}catch (IOException e){
e.printStackTrace();
}
}
Теперь клиент - это всего лишь несколько методов, отправляющих запрос на сервер и возвращающих ответ.Я хочу иметь возможность получать обновления с сервера.Буду признателен за любые предложения по чтению, которые могут помочь мне найти решение.Могу ли я изучить какие-либо паттерны?
Заранее спасибо, veLr.