ТавроФорум

ТавроФорум (https://forum.tavria.org.ua/index.php)
-   Решение бытовых проблем (https://forum.tavria.org.ua/forumdisplay.php?f=28)
-   -   Java delevoper-ы есть?.. у мну пара вопросов (https://forum.tavria.org.ua/showthread.php?t=43546)

deivan 15.08.2011 22:44

Java delevoper-ы есть?.. у мну пара вопросов
 
Есть некоторый сервер в инете, который принимает текстовые запросы и дает текстовые ответы.

Нужно написать простецкий клиент для обмена сообщениями.
Я больше прикладной делфист клиент-сервер не покорял еще, но вот нужно на джаве написать нечто такое.

подскажите как начать, через сокеты? RMI? ресурсы с примерами не помешали бы..

Bad Santa 15.08.2011 22:50

я не специалист, но в современном мире программ обмен данными между ПО происходит при помощи XML протокола. А "клиент" можно писать абсолютно на чём угодно, в этом и заключается вся суть. Книгу по XML изучить надо тебе.

Igorka 15.08.2011 23:45

Цитата:

Сообщение от Bad Santa (Сообщение 1279946)
я не специалист, но в современном мире программ обмен данными между ПО происходит при помощи XML протокола. А "клиент" можно писать абсолютно на чём угодно, в этом и заключается вся суть. Книгу по XML изучить надо тебе.

Ну если не специалист, то зачем советовать?
Человек жеж написал, что надо написать КЛИЕНТ, на JAVA.
Нету возможности выбора формата данных.

Igorka 15.08.2011 23:47

deivan, а что за сервер?
Может он у тебя post/get принимает и JSON возвращает?
Если нет - то, через сокет, и делов-то.

deivan 16.08.2011 08:02

не пост/гет, это я и на пхп умею.
Санта, там не хмл, там все хитрее.

"делов-то через сокет" - вот это я не умею, покажите пример, плиз

AndreyK 16.08.2011 20:48

http://www.quizful.net/post/java-socket-programming
http://expertcode.ru/index.php/java/...14-java-socket

deivan 16.08.2011 20:54

да, неплохая статейка

но я сделал так:

Код:

String fromSrv = "", toSrv="";
      BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
     
      Socket socket = new Socket("X.X.X.X", 3203);
      try {
        System.out.println("socket = " + socket);
        BufferedReader in = new BufferedReader(new InputStreamReader(socket
              .getInputStream()));
       
        PrintWriter out = new PrintWriter(new BufferedWriter(
              new OutputStreamWriter(socket.getOutputStream())), true);

        System.out.println("from Server recive: "+fromSrv+"\nEnter command...");

       
        while (!(toSrv.equals("bye"))) {
            toSrv=r.readLine();
            out.println(toSrv);
            System.out.println("To Server send: "+toSrv);
           
            fromSrv=in.readLine();
            System.out.println("from Server recive: "+fromSrv+"\nEnter command...");
        }
 
      }
      finally {
        System.out.println("closing...");
        socket.close();
      }

    }

работает, мож пригодится кому..

Solmyr 16.08.2011 21:05

это жава? очень на шарп похожа.

deivan 16.08.2011 23:22

не, это шарп с жавы слямзил..

fox_12 17.08.2011 10:54

А обязательно на джаве нужно реализовать?
Да и точнее ТЗ хотелось бы увидеть.

deivan 18.08.2011 10:18

ну, собственно первый вопрос - взаимодействие с сервером, я успешно решил на основе кода выше.
некий сервер отзывается на мои запросы и дает ответы.

а теперь у меня другая беда - сервер отдает информацию списками коммон лисп, нужно писать парсер для переноса ответов в переменные, а списки там зело злые..
буду рад ссылкам на код парсеров лисп-списков

Igorka 18.08.2011 14:55

Цитата:

Сообщение от deivan (Сообщение 1283315)
ну, собственно первый вопрос - взаимодействие с сервером, я успешно решил на основе кода выше.
некий сервер отзывается на мои запросы и дает ответы.

а теперь у меня другая беда - сервер отдает информацию списками коммон лисп, нужно писать парсер для переноса ответов в переменные, а списки там зело злые..
буду рад ссылкам на код парсеров лисп-списков

А на профильном форуме не пробовал спрашивать?

deivan 18.08.2011 17:15

уже спросил.
но надеялся, что джава-девелоперы ездят на славутах, видимо ошибся.. :)

-Alexey- 27.08.2011 21:54

Я бы RMI использовал..

deivan 28.08.2011 09:04

вопрос №2:
есть в джаве такой класс объектов, как Map
в примерах описание его очень простое, на два-три объекта.
нужен пример, который описывает работу мапы со сложновложенным объектом типа:
{0=name, 1=1112233, 2={0=11, 1=12, 2=25}, 3=nil, 4=11222233, 5={0=0=zz, 1=asssasss, 2=12}, 1={0=xx, 1=joppppjopp, 2=35}}, 6=nil}

Igorka 30.08.2011 11:36

Цитата:

Сообщение от deivan (Сообщение 1306986)
вопрос №2:
есть в джаве такой класс объектов, как Map
в примерах описание его очень простое, на два-три объекта.
нужен пример, который описывает работу мапы со сложновложенным объектом типа:
{0=name, 1=1112233, 2={0=11, 1=12, 2=25}, 3=nil, 4=11222233, 5={0=0=zz, 1=asssasss, 2=12}, 1={0=xx, 1=joppppjopp, 2=35}}, 6=nil}

JSON парсишь?

deivan 30.08.2011 20:45

не, коммон лисп списки.
Уже решил, привинтив к мапу аррейлисты...


Текущее время: 07:52. Часовой пояс GMT +3.

Перевод: zCarot Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.