Меню сайта
Категории новостей
Голосования
Чего нехватает вашему сайту
Всего ответов: 26
Друзья
icq status
Главная » Статьи » Всё о создание Java игр

Связь приложений Java с расширениями сервера Web
Итак, мы расказали вам, как приложения Java могут получать с сервера Web для обработки произвольные файлы, а также как они могут передавать данные друг другу с применением потоковых или датаграммных сокетов. 

Однако наиболее впечатляющие возможности открываются, если организовать взаимодействие между приложением Java и расширением сервера Web, таким как CGI или ISAPI. В этом случае приложения или аплеты Java могли бы посылать произвольные данные расширению сервера Web для обработки, а затем получать результат этой обработки в виде файла. 
Взаимодействие приложения Java и расширения сервера Web 

Методика организации взаимодействия приложений Java и расширений сервера Web основана на применении классов URL и URLConnection. 

Приложение Java, желающее работать с расширением сервера Web, создает объект класса URL для программы расширения (то есть для исполняемого модуля расширения CGI или библиотеки динамической компоновки DLL расширения ISAPI). 

Далее приложение получает ссылку на канал передачи данных с этим расширением как объекта класса URLConnection. Затем, пользуясь методами getOutputStream и getInputStream из класса URLConnection, приложение создает с расширением сервера Web выходной и входной канал передачи данных. 

Когда данные передаются приложением в выходной канал, созданный подобным образом, он попадает в стандартный поток ввода приложения CGI, как будто бы данные пришли методом POST из формы, определенной в документе HTML. 

Обработав полученные данные, расширение CGI записывает их в свой стандартный выходной поток, после чего эти данные становятся доступны приложению Java через входной поток, открытый методом getInputStream класса URLConnection. 

На рис. 1 показаны потоки данных для описанной выше схемы взаимодействия приложения Java и расширения сервреа Web с интерфейсом CGI.


Рис. 1. Взаимодействие приложения Java с расширением сервера Web на базе интерфейса CGI 

Расширения ISAPI работают аналогично, однако они получают данные не из стандратного входного потока, а с помощью вызова специально предназначенной для этого функции интерфейса ISAPI. Вместо стандартного потока вывода также применяется специальная функция. 
Класс URLConnection 

Напомним, что в классе URL, рассмотренном нами в начале этой главы, мы привели прототип метода openConnection, возвращающий для заданного объекта класса URL ссылку на объект URLConnection: 
public URLConnection openConnection();

Что мы можем получить, имея ссылку на этот объект? 

Прежде всего, пользуясь этой ссылкой, мы можем получить содержимое объекта, адресуемое соответствующим объектом URL, методом getContent: 
public Object getContent();

Заметим, что метод с таким же названием есть и в классе URL. Поэтому если все, что вы хотите сделать, это получение содержимое файла, адресуемое объектом класса URL, то нет никакой необходимости обращаться к классу URLConnection. 

Метод getInputStream позволяет открыть входной поток данных, с помощью которого можно считать файл или получить данные от расширения сервера Web: 
public InputStream getInputStream();

В классе URLConnection определен также метод getOutputStream, позволяющий открыть выходной поток данных: 
public OutputStream getOutputStream();

Не следует думать, что этот поток можно использовать для записи файлов в каталоги сервера Web. Однако для этого потока есть лучшее применение - с его помощью можно передать данные расширению сервера Web. 

Рассмотрим еще несколько полезных методов, определенных в классе URLConnection. 

Метод connect предназначен для установки соединения с объектом, на который ссылается объект класса URL: 
public abstract void connect();

Перед установкой соединения приложение может установить различные параметры соединения. Некоторые из методов, предназначенных для этого, приведены ниже: 
setDefaultUseCaches

Включение или отключение кэширования по умолчанию
public void setDefaultUseCaches(
  boolean defaultusecaches);
setUseCaches

Включение или отключение кэширования
public void setUseCaches(boolean usecaches);
setDoInput

Возможность использования потока для ввода
public void setDoInput(boolean doinput);
setDoOutput

Возможность использования потока для вывода
public void setDoOutput(boolean dooutput);
setIfModifiedSince

Установка даты модификации документа
public void setIfModifiedSince(
  long ifmodifiedsince);

В классе URLConnection есть методы, позволяющие определить значения параметров, установленных только что описанными методами: 
public boolean getDefaultUseCaches();
public boolean getUseCaches();
public boolean getDoInput();
public boolean getDoOutput();
public long getIfModifiedSince();

Определенный интерес могут представлять методы, предназначенные для извлечения информации из заголовка протокола HTTP: 
getContentEncoding

Метод возвращает содержимое заголовка content-encoding (кодировка ресурса, на который ссылается URL)
public String getContentEncoding();
getContentLength

Метод возвращает содержимое заголовка content-length (размер документа)
public int getContentLength();
getContentType

Метод возвращает содержимое заголовка content-type (тип содержимого)
public String getContentType();
getDate

Метод возвращает содержимое заголовка date (дата посылки ресурса в секундах с 1 января 1970 года)
public long getDate();
getLastModified

Метод возвращает содержимое заголовка last-modified (дата изменения ресурса в секундах с 1 января 1970 года)
public long getLastModified();
getExpiration

Метод возвращает содержимое заголовка expires (дата устаревания ресурса в секундах с 1 января 1970 года)
public long getExpiration();

Другие методы, определенные в классе URLConnection, позволяют получить все заголовки или заголовки с заданным номером, а также другую информацию о соединении. При необходимости вы найдете описание этих методов в справочной системе Java WorkShop.

Категория: Всё о создание Java игр | Добавил: ALEX (03.11.2008)
Просмотров: 5948 | Комментарии: 15 | Рейтинг: 0.0/0 |
Всего комментариев: 151 2 »
15 Charlespak  
0
в аналогичных условиях с районом строительства; d0 — параметр, равный для суглинков и глин — 0,23, супесей, песков мелких и пылеватых — 0,28, песков гравелистых, крупных и средней крупности—0,3, крупнообломочных грунтов — 0,34. Песок, суглинок, глина? Как определить механический состав почвы на участке При определении доз извести, сроков внесения удобрений и их количества, http://grunt.dostavka.biz.ua/suglinok.html - нужен суглинок глубины запашки сидератов, а также при определении нормы полива необходимо учитывать механический состав почвы, иными словами - содержание в ней глинистых частиц. По этому показателю почвы подразделяются на пески, супеси, лёгкие, средние и тяжелые суглинки, а также на лёгкие, средние и тяжёлые глины. При этом некоторые садоводы ошибочно судят об этом свойстве почвы по её цвету. При такой оценке почв часто неправильно определяют механический состав, принимая временами супесь за суглинок, а суглинок - за глину.

14 arredeUtepe  
0
WEDGE

13 Attibeoffiple  
0
Бывает же такое! Вот в рамблере попал на статью http://rentrealtycrimea.com/dlitelno/page/5/ - сдам квартиру
и обрадовался. Кстати забыл с Вами поприветствоваться! В общем сдам недвижимость Симферополь
,я прочитал и до меня дошло, что жизнь уматовая штука – раз имеют место такие помещения. Поэтому каждому советую сайт http://rentrealtycrimea.com с Симферопольской недвижимостью.

12 SvetaVeri  
0
интернет знакомства mail ru
http://soundspeed.ru/forum/member.php?7528-SocSety

интернет знакомства ростов без регистрации
http://www.santralkarel.com/forum/index.php?action=profile;u=1983

видео интернет знакомства
http://cavalli.clicdev.com/f/index.php?trk=cavalli&s=f996fba63801e9633b25117f5a0cb8ef&showuser=232

интернет знакомства индивидуалки
http://www.forum.jurathek.de/member.php?u=3381

веб камера интернет знакомства бесплатно
http://www.cadspot.net/forum/member.php?1091-SocSets

интернет знакомства без аккаунта
http://www.corridosalmillon.com/member.php?874-SocSety

интернет знакомства для дам
http://lodos-dance.ru/talk/profile.php?id=71834

www интернет знакомства ru
http://bbs.sib.jp/profile.php?mode=viewprofile&u=1306355

интернет знакомства в иркутске
http://wamuz.pl/member.php?1181-SocSete

чат интернет знакомств бесплатно
http://z10.invisionfree.com/Helping_Others/index.php?s=7d389661ea7182ee7166bda8488661af&showuser=58

бесплатные интернет знакомства в перми

11 Loowseconcots  
0
http://shop-shoose.ru

10 Arreniabind  
0
Корчась и извиваясь под губительными лучами лицемерия, погружаясь в пучину немого равнодушия, я сотрясаю воздух избитыми фразами, и тону в океане человеческой глупости.http://touch2game.ru - ..

9 Lussiuyer  
0
http://www.duplicatephotofinder.com/forum/memberlist.php?mode=viewprofile&u=152447
http://www.theotherboleyngirlmovie.net/user/Vasilissa/
http://forum.mutant-production.de/User-Vasilissa
http://www.drihab.com/forum/member.php?action=profile&uid=15966
http://www.myinttradeship.com/user/Vasilissa/
http://nero-besplatno.com/user/Dusyyabe/
http://utro2.ru/user/Dusyyabe/
http://7prudov.ru/user/Dusyyabe/
http://info-manual.ru/user/Dusyyabe/
http://site.seimarfund.kz/user/Dusyyabe/
http://www.good-torrent.net/user/Tusyyabt/
http://ak-ufa.ru/user/Tusyyabt/
http://webholt.ru/user/Tusyyabt/
http://muzikaonline.ru/user/Tusyyabt/
http://soft-best.net/user/Tusyyabt/
http://mail.obzoravtonews.ru/user/Vasilissa/
http://lady-flower.net/user/Vasilissa/
http://torrent-porno.ru/user/Vasilissa/
http://mashina.zb-susu.ru/user/Vasilissa/
http://remont.uakiev.net/user/Vasilissa/

8 Lussiuyer  
0
http://nravitsya.ru/tips/?tip=ExternalLink&link=http://www.failoobmennik.org/
http://www.balancedmoments.net/mybb/member.php?action=profile&uid=25
http://7teh.ru/user/varvinnae/
http://nod-32eset.ru/engine/redirect.php?url=http://failoobmennik.ru/
http://antiqhistory.ru/user/failoobmen/
http://www.kom-p.ru/user/failoobmen/
http://stat.kau.edu.sa/content.aspx?Site_ID=13007&lng=EN&cid=48394&URL=www.failo-obmennik.ru
http://www.promotion.aha.ru/user/obmennikw/
http://www.oxo.com.ua/user/obmennikw/
http://cutplaza.from.tv/cgi/re/index.shtml?http://failoobmenniki.com
http://forum.etra.org.ua/member.php?u=8855
http://www.daza.net.ua/user/allelissa/
http://www.macraeanddick.com/motability-users/forms/sendtoafriend.aspx?voi=Ford%20Ka%20zetec%20from%20%C2%A3NIL%20advance%20payment&url=www.fayloobmennik.com
http://emeraldcoastmustangclub.net/phpBB2/profile.php?mode=viewprofile&u=253243
http://toyotatest.ru/user/lerracul/

7 Lussiuyer  
0
http://forum.nttuweb.com/index.php?action=profile;u=10266
http://www.toptenbuyer.com/forums/profile.php?mode=viewprofile&u=18064
http://cabpogin.com/forum/member.php?action=profile&uid=2122
http://eircomleague.forenking.com/profile.php?mode=viewprofile&u=257
http://www.proanna.ru/user/RenyRase/
http://more-prog.ru/user/RenyRase/
http://www.pvb-consult.com/user/RenyRase/
http://future2020.ru/user/RenyRase/
http://gpforum.nazory.cz/profile.php?mode=viewprofile&u=386
http://lasrum.com/forum/memberlist.php?mode=viewprofile&u=8589
http://forums.fleshlight.com/member.php?232844-XRumerTV
http://www.watchmoviesndownloads.com/member.php?11024-XRumerTV
http://gtrkkchr.ru/user/XRumerms/
http://www.bastion-ug.ru/user/XRumerms/
http://www.popkov.org.ua/user/XRumerms/
http://premier-tur.com/user/XRumerms/
http://www.msmag.eu/user/XRumerTV/
http://label.rap4me.com/user/XRumerTV/
http://www.bowlrentals.com/user/XRumerTV/
http://79.174.79.111/forum/index.php?showuser=80277

6 Lussiuyer  
0
http://www.maximusnik.ru/user/SocSetRu/
http://cool-project.ru/user/SocSetRu/
http://premionica.ru/user/SocSetRu/
http://1serial.tv/user/SocSetRu/
http://kok.kz/board/profile.php?mode=viewprofile&u=224101
http://egov.iii.org.tw/bbs/memberlist.php?mode=viewprofile&u=10042
http://xyru.ru/user/Zeraseus/
http://kuban-auto.com/user/Zeraseus/
http://pmr-racing.ru/user/AlenaTry/
http://89.163.170.82/forum/index.php?action=profile;u=178285
http://mobicompik.ru/user/AlenaTry/
http://viliya.com.ua/user/AlenaTry/
http://femdom.su/user/Tarentae/
http://www.savekb.de/profile.php?mode=viewprofile&u=329474
http://mobile-suite.ru/user/Tarentae/
http://ehh.ru/user/Tarentae/
http://bfblago.com/user/SocSetRu/
http://7555999.ru/user/SocSetRu/
http://magicjungle.ru/user/Lusiuyre/
http://jinfo.ru/user/Lusiuyre/
http://www.filmosvalka.ru/user/ChatLery/
http://www.crazylady.ru/user/ChatLery/
http://www.rabota-onlain.ru/user/ChatLery/
http://kto-predal-cccp.ru/user/ChatLery/
http://freeyaho.ru/user/VikaReni/
http://tvorbita.com/user/VikaReni/
http://sixmart.com/user/VikaReni/
http://www.qatarhr.net/forum/member.php?action=profile&uid=126500

1-10 11-15
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]