ТАВРОФОРУМ

Вернуться   ТавроФорум > Не автомобильные темы > Решение бытовых проблем

Решение бытовых проблем Не вся жизнь в машине. Иногда что-то и дома сделать нужно.

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.08.2011, 22:44   #1
deivan
 
deivan
 
Адрес: Dnipro
Возраст: 48
Сообщений: 1,495
Машина: GetmanCar
Длина: 8530мкм
Диаметр: 32мм
По умолчанию Java delevoper-ы есть?.. у мну пара вопросов

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

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

подскажите как начать, через сокеты? RMI? ресурсы с примерами не помешали бы..
deivan вне форума   Ответить с цитированием
Старый 15.08.2011, 22:50   #2
Bad Santa
 
Bad Santa
 
Адрес: Днiпро
Сообщений: 6,086
Машина: Kia/Hyundai
Длина: 150240мкм
Диаметр: 39мм
Отправить сообщение для Bad Santa с помощью ICQ
По умолчанию

я не специалист, но в современном мире программ обмен данными между ПО происходит при помощи XML протокола. А "клиент" можно писать абсолютно на чём угодно, в этом и заключается вся суть. Книгу по XML изучить надо тебе.
Bad Santa вне форума   Ответить с цитированием
Старый 15.08.2011, 23:45   #3
Igorka
 
Адрес: Днепр
Сообщений: 2,171
Машина: Fiesta Cross ST 1.4 TDCi, WJ 4.7
Длина: 28830мкм
Диаметр: 28мм
Отправить сообщение для Igorka с помощью ICQ Отправить сообщение для Igorka с помощью Skype™
По умолчанию

Цитата:
Сообщение от Bad Santa Посмотреть сообщение
я не специалист, но в современном мире программ обмен данными между ПО происходит при помощи XML протокола. А "клиент" можно писать абсолютно на чём угодно, в этом и заключается вся суть. Книгу по XML изучить надо тебе.
Ну если не специалист, то зачем советовать?
Человек жеж написал, что надо написать КЛИЕНТ, на JAVA.
Нету возможности выбора формата данных.
Igorka вне форума   Ответить с цитированием
Старый 15.08.2011, 23:47   #4
Igorka
 
Адрес: Днепр
Сообщений: 2,171
Машина: Fiesta Cross ST 1.4 TDCi, WJ 4.7
Длина: 28830мкм
Диаметр: 28мм
Отправить сообщение для Igorka с помощью ICQ Отправить сообщение для Igorka с помощью Skype™
По умолчанию

deivan, а что за сервер?
Может он у тебя post/get принимает и JSON возвращает?
Если нет - то, через сокет, и делов-то.
Igorka вне форума   Ответить с цитированием
Старый 16.08.2011, 08:02   #5
deivan
 
deivan
 
Адрес: Dnipro
Возраст: 48
Сообщений: 1,495
Машина: GetmanCar
Длина: 8530мкм
Диаметр: 32мм
По умолчанию

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

"делов-то через сокет" - вот это я не умею, покажите пример, плиз
deivan вне форума   Ответить с цитированием
Старый 16.08.2011, 20:48   #6
AndreyK
Гость
 
Сообщений: n/a
По умолчанию

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

Последний раз редактировалось AndreyK; 16.08.2011 в 20:51.
  Ответить с цитированием
Старый 16.08.2011, 20:54   #7
deivan
 
deivan
 
Адрес: Dnipro
Возраст: 48
Сообщений: 1,495
Машина: GetmanCar
Длина: 8530мкм
Диаметр: 32мм
По умолчанию

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

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

Код:
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();
      }

    }
работает, мож пригодится кому..
deivan вне форума   Ответить с цитированием
Старый 16.08.2011, 21:05   #8
Solmyr
энджойрекатор
 
Solmyr
 
Возраст: 42
Сообщений: 13,551
Длина: 204480мкм
Диаметр: 50мм
По умолчанию

это жава? очень на шарп похожа.
__________________
We were in the jungle, there were too many of us, we had access to too much money, too much equipment, and little by little we went insane.
Solmyr вне форума   Ответить с цитированием
Старый 16.08.2011, 23:22   #9
deivan
 
deivan
 
Адрес: Dnipro
Возраст: 48
Сообщений: 1,495
Машина: GetmanCar
Длина: 8530мкм
Диаметр: 32мм
По умолчанию

не, это шарп с жавы слямзил..
deivan вне форума   Ответить с цитированием
Старый 17.08.2011, 10:54   #10
fox_12
 
Адрес: Донецк
Сообщений: 817
Машина: Славута 1.2L, Renault Duster 4x4 MT 2.0, VW Golf 5
Длина: 4560мкм
Диаметр: 35мм
Отправить сообщение для fox_12 с помощью ICQ
По умолчанию

А обязательно на джаве нужно реализовать?
Да и точнее ТЗ хотелось бы увидеть.
fox_12 вне форума   Ответить с цитированием
Старый 18.08.2011, 10:18   #11
deivan
 
deivan
 
Адрес: Dnipro
Возраст: 48
Сообщений: 1,495
Машина: GetmanCar
Длина: 8530мкм
Диаметр: 32мм
По умолчанию

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

а теперь у меня другая беда - сервер отдает информацию списками коммон лисп, нужно писать парсер для переноса ответов в переменные, а списки там зело злые..
буду рад ссылкам на код парсеров лисп-списков
deivan вне форума   Ответить с цитированием
Старый 18.08.2011, 14:55   #12
Igorka
 
Адрес: Днепр
Сообщений: 2,171
Машина: Fiesta Cross ST 1.4 TDCi, WJ 4.7
Длина: 28830мкм
Диаметр: 28мм
Отправить сообщение для Igorka с помощью ICQ Отправить сообщение для Igorka с помощью Skype™
По умолчанию

Цитата:
Сообщение от deivan Посмотреть сообщение
ну, собственно первый вопрос - взаимодействие с сервером, я успешно решил на основе кода выше.
некий сервер отзывается на мои запросы и дает ответы.

а теперь у меня другая беда - сервер отдает информацию списками коммон лисп, нужно писать парсер для переноса ответов в переменные, а списки там зело злые..
буду рад ссылкам на код парсеров лисп-списков
А на профильном форуме не пробовал спрашивать?
Igorka вне форума   Ответить с цитированием
Старый 18.08.2011, 17:15   #13
deivan
 
deivan
 
Адрес: Dnipro
Возраст: 48
Сообщений: 1,495
Машина: GetmanCar
Длина: 8530мкм
Диаметр: 32мм
По умолчанию

уже спросил.
но надеялся, что джава-девелоперы ездят на славутах, видимо ошибся..
deivan вне форума   Ответить с цитированием
Старый 27.08.2011, 21:54   #14
-Alexey-
Гость
 
Сообщений: n/a
По умолчанию

Я бы RMI использовал..
  Ответить с цитированием
Старый 28.08.2011, 09:04   #15
deivan
 
deivan
 
Адрес: Dnipro
Возраст: 48
Сообщений: 1,495
Машина: GetmanCar
Длина: 8530мкм
Диаметр: 32мм
По умолчанию

вопрос №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}
deivan вне форума   Ответить с цитированием
Старый 30.08.2011, 11:36   #16
Igorka
 
Адрес: Днепр
Сообщений: 2,171
Машина: Fiesta Cross ST 1.4 TDCi, WJ 4.7
Длина: 28830мкм
Диаметр: 28мм
Отправить сообщение для Igorka с помощью ICQ Отправить сообщение для Igorka с помощью Skype™
По умолчанию

Цитата:
Сообщение от deivan Посмотреть сообщение
вопрос №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 парсишь?
Igorka вне форума   Ответить с цитированием
Старый 30.08.2011, 20:45   #17
deivan
 
deivan
 
Адрес: Dnipro
Возраст: 48
Сообщений: 1,495
Машина: GetmanCar
Длина: 8530мкм
Диаметр: 32мм
По умолчанию

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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


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


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