Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

JAVA. Серверные приложения

.pdf
Скачиваний:
0
Добавлен:
06.09.2026
Размер:
2 Мб
Скачать
Приложения 321
Создание хранимой процедуры можно полностью доверить SPB или
часть работ переложить на плечи программиста. Работа по созданию хранимой процедуры выполняется в несколько этапов. На первом этапе создается профиль соединения с существующей базой данных. В SPB имеется большое количество JDBC-драйверов для самых популярных современных СУБД. Это позволяет получить доступ к любой локальной СУБД, а при наличии сетевых драйверов — к удаленным серверам баз данных. При работе с ODBC источниками, данные источники должны быть прописаны в системных переменных. При работе с существующей базой данных желательно, чтобы используемая СУБД поддерживала работу с SQL-операторами, и сервисы загрузки ядра СУБД были загру­жены до начала работы с SPB (рис. П34).
После создания нового проекта или вызова существующего, SPB
предлагает создать хранимую процедуру для указанной базы данных, при этом автоматически запуская ядро самой базы данных. SPB, по­ставляемый с версией DB2 6.0 и выше предлагает в качестве основного языка хранимой процедуры использовать Java, но возможности SPB значительно шире, поддерживаются и другие языки программирования: COBOL, REXX и пр. (рис. П35).
После проведения всех подготовительных работ в дело вступают
«помощники» (SmartGuides), помогающие программисту избежать руко­писного ввода и проверить результаты выполнения хранимой процеду­ры. Последующие этапы указывают тип возвращаемых значений, гене­рируют SQL-запрос. Далее программист указывает входящие и выходя-
Ðèñ. Ï34
322 Приложения
Ðèñ. Ï35
щие переменные, тип переменных: IN для входящих, OUT для переменных, передаваемых в программу, INOUT для переменных как передающих свое значение в процедуру, так и принимающих какое-ли­бо значение из процедуры. На данном этапе программист может также
Ðèñ. Ï36
Приложения 323
определить тип данных используемых в хранимой процедуре и привес­ти их в соответствие с типам основного языка, на котором создана хра­нимая процедура — в данном случае Java (рис. П37).
Наконец на последнем этапе SPB предлагает программисту выбрать
тип созданной хранимой процедуры: динамическое приложение с испо­льзованием JDBC или процедура со статическим SQL-операторами, SQLJ-приложение (рис. П38).
Заключительный этап генерирует тело хранимой процедуры, добав-
ляя необходимые классы и переменные, а также методы обработки ошибок. И если разработчика полностью устраивает созданный код, то SPB сохранит все этапы по созданию хранимой процедуры в отдельном файле с именем, указанным программистом, и расширением .spp в рабо­чей папке проекта. В противном случае разработчику предоставляется возможность вручную изменить сгенерированный код хранимой проце­дуры (рис. П39).
Совместное использование SPB и VisualAge предназначено для уда-
ленной отладки и тестирования различных хранимых процедур, реали­зованных на Java, независимо от используемого API. Для использова­ния данной возможности, хранимая процедура должна быть создана в
Ðèñ. Ï37
324 Приложения
Ðèñ. Ï.38
debug-режиме. В данном случае хранимая процедура размещается на сервере DB2, а удаленная отладочная машина с установленным Visual­Age, вызывает данную процедуру, поэтапно выполняя все инструкции, описанные в процедуре, отражая состояние переменных и вызываемые методы. Для использования режима отладки хранимой процедуры в Vi­sualAge необходимо добавить или изменить настройки IP-соединения для удаленного DB2-сервера.
Еще одно маленькое замечание, а именно: определение версии уста-
новленного JDK на локальной машине и на удаленном DB2-сервере. Ес­ли разработчик решит использовать JDBC 2.0, то и сервер DB2 должен
Ðèñ. Ï39
Приложения 325
Ðèñ. Ï.40
также работать с версией JDK 1.2, называемый в народе — Java 2. Для установки специальной версии Java, в системном окружении DB2-сер­вера указывается версия используемого JDK. Тоже самое касается вер­сии VisualAge. Если версия работает с JDK 1.1, то необходимо либо им­портировать пакеты по работе с JDBC 2.0 в рабочую область VisualAge, либо установить более новую версию поддерживающую работу с Ja­va 2 (рис. П40).
При работе с EJB-сервером, использующим в качестве основной ба-
зы данных сервер DB2, управление версиям особенно актуально, по­скольку именно на сервере устанавливаются параметры работы JVM, а также, емкостные характеристики как пула самой JVM, так и EJB-кон­тейнеров. В отличие от VisualAge, на сервере DB2, все системные пере­менные по работе с Java — PATH, CLASSPATH, LIB_PATH — должны быть установлены корректно. Все хранимые процедуры, так же как и пользовательские функции, выполняются на сервере. DB2 использует различные механизмы вызова Java-машины, но во всех случаях JVM работает до полного окончания работы хранимой процедуры.
Вообще DB2 очень умная и очень тонко настраиваемая СУБД, и луч-
ше потратить некоторое время на знакомство с системным окружением, особенно для Java-приложений, чем потом требовать от программиста невероятных усилий по обработке миллионных записей базы данных установленной на PC с операционной системой Windows.
Все Java-классы, используемые в хранимых процедурах, должны
быть размещены обязательно в jar-архиве. Именно через вызов соот­ветствующих jar-архивов, DB2 обращается к хранимым процедурам, реализованным на Java. После написания SQLJ-приложения и помеще­ния его в jar-архив, его необходимо поместить в окружение СУБД. Для осуществления данной операции, в DB2 описан оператор CALL SQLJ.INSTALL_JAR. После установки jar-архива, DB2 самостоятельно выделяет все Java-классы хранимых процедур и размещает их в сис­темном каталоге.
326 Приложения
Приложение D
Глоссарий
ACID Atomicity, Consistency, Isolation, Durability — характеристики тран-
закций — неделимость, согласованность, изолированность, устойчивость.
ASCII American Code for Information Interchange — самая распространен-
ная система кодирования текстовых символов, основанных на латинском напи­сании плюс математические символы.
ANSI American National Standards Institute — Американский националь-
ный институт стандартов, очень часто упоминаемая организация.
API application programming interface — стандартизированный набор при-
кладных библиотек классов, предназначенный для стандартизации и облегче­ния создания приложений.
Applet — аплет, апплет — маленькая программа (Java класс) загружаемая
Web-браузером, часто используется для «оживления» картинки.
ASP — Active Server Page — технология создания динамических Web-
страниц, предлагаемая компанией Microsoft, основанная на совместном исполь­зовании языка программирования Visual Basic и языке гипертекстовой размет­ки HTML. В отличие от JSP, используются COM-объекты, технология MTS.3
ASP Application Service Provider — программа, предоставляющая некие
услуги.
AWT Abstract Windowing Toolkit — разработанная компанией SUN библио-
тека графических элементов пользовательского интерфейса.
B2C Business-to-consumer — бизнес-сценарий, один из самых распростра-
ненных сценариев, описывающих взаимодействие между компанией и потреби­телем.
B2E Business-to-employee — бизнес-сценарий, описывающий внутрикорпо-
ративные взаимоотношения между компанией и ее работниками. В основном служащие работают по данному бизнес-сценарию с данными, находящемся внутри самой компании.
B2B Business-to-business — бизнес-сценарий внешнего взаимодействия
различных компаний между собой.
B2M2B Business-to-eMarketPlace-to-business — бизнес-сценарий, описыва-
ющий взаимоотношения нескольких партнеров в одном виртуальном месте eMarketPlace.
CCI Common Client Interface — набор специфических API, поставляемых
различными производителями ERP для создания клиентских приложений для данных систем.
CASE Computer-Aided Software Engineering — case технология, компью-
терное проектирование программного обеспечения.
CRM Customer relationship management — управление отношениями с
клиентами, используемая в e-commerсe инфраструктура, описывающая все взаимоотношения между предприятием и покупателем.
DB2 DATABASE 2 — семейство СУБД для различных платформ, разрабо-
танное компанией IBM.
DDL Data Definition Language — язык определения данных, описывает
SQL-операторы по работе с объектами СУБД: CREATE, DROP, ALTER.
DBCS double-byte character set — двухбайтовая кодировка символьных
строк, используемая на больших машинах.
Приложения 327
DBMS database management system — система управления базой данных.
Òî æå, ÷òî è ÑÓÁÄ.
DLL dynamic link library — исполняемый программный модуль. DML Data Manipulation Language — язык манипулирования данными,
стандартные SQL-операторы по работе с данными: SELECT, INSERT, DELETE, UPDATE, COMMIT, ROLLBACK.
DOM Document Object Model — набор API, предназначенный для работы с
объектной моделью документа.
DTD document type definition — структура, описывающая XML-теги. DNS domain name server — система указания имен ресурсов, в удобном
для человека виде (www.rrlabs.com), аналог IP-адреса, указывающего числовое значение адреса ресурса (102.29.114.3).
DRDA Distributed Relational Database Architecture — архитектура распре-
деленных реляционных баз данных. Стандарт компании IBM, позволяющий ис­пользовать кроме стандартного языка SQL и его диалекты при обращении к базе данных.
EAR file — JAR-архив, содержащий J2EE-приложение. Стандарт распро-
странения Java-программ.
EJB container — специальное системное окружение, описывающее работу
всех EJB-компонентов, располагается на отдельном сервере либо на сервере приложений, поддерживающем J2EE-платформу.
EJB home object — один из основных объектов EJB, описывающий способы
доступа к экземпляру EJB.
EJB JAR file — jar-архив, содержащий классы и интерфейсы EJB, а также
дополнительные ресурсы.
EJB server — программный продукт, реализующий функции, необходимые
для выполнения EJB-программ, основным компонентом которых является EJB­контейнер.
ECD edit-compile-debug — система основных требований современных IDE. EDI Electronic data interchange — автоматическая межмашинная передача
документа.
EJB Enterprise Java bean — технология компании SUN по созданию рас-
пределенных систем. Основана на использовании концепции контейнера и встроенных элементов.
EIS Enterprise Information System — в многоуровневой Web-архитектуре
последние звенья, описывающие общие информационные ресурсы предприя­тия, так называемые legacy system, существующие системы, которые нельзя заменить или игнорировать. В большинстве случаев под EIS подразумеваются непосредственно данные предприятия, а не сервисы, предоставляемые для до­ступа к этим данным, хотя то и другое можно назвать EIS.
ERP Enterprise Resource Planning — система планирования ресурсов пред-
приятия.
ESS Enterprise Solution Structure — архитектурное описание готового ре-
шения.
FTP File Transfer Protocol — сетевой протокол передачи данных. GUI graphical user interface — графическое представление данных, облег-
чающее взаимодействие между человеком и машиной.
HTML Hypertext Markup Language — способ разметки текста с помощью
предопределенных знаков, тегов.
HTTP Hypertext Transfer Protocol — протокол передачи данных, использу
åìûé â Web.
-
328 Приложения
IBM International Business Machines Corporation — крупнейший произво-
дитель весов для мясников и настенных часов, а также других электронных компонентов.
IDE integrated development environment — визуальное средство разработ-
ки программного обеспечения.
IDL interface definition language — язык CORBA технологии, описываю-
щий состояние класса.
IIOP Internet inter-ORB protocol — новый сетевой протокол, используемый
в CORBA технологии.
IMS Information Management System — система управления данными
предприятия.
J2EE Java 2, Enterprise Edition — платформа создания Java-приложений
уровня предприятия.
J2ME Java 2, Micro Edition — платформа создания встроенных Java-прило-
жений.
J2SE Java 2, Standard Edition — платформа создания стандартных Java-
приложений.
J2EE Server — сервер для работы J2EE-приложениями. Java client — программа, выполняемая непосредственно на JVM. J2EE SDK Java 2 SDK, Enterprise Edition — решение компании Sun для со-
здания Java-приложений уровня предприятия.
JMS Java Message Service набор — API для создания систем сообщений,
очень похож на решение компании IBM MQ Series, только в отличие от про­дукта IBM, вышедшего уже в пятом релизе, достаточно сырая версия. Став­ший в последнее время популярным набор API, предназначенный для созда­ния программ, использующих сообщения для взаимодействия между с собой.
JavaBean API — переносимый межплатформенный набор API для програм-
мных компонентов Java.
JavaBeans component — стандартный Java-класс, имеющий графические
элементы и запакованный в jar-архив для распространения.
Java Wallet — компонент начального уровня для создания клиентских
платформ, используемых в кредитных картах и электронных платежах.
JAR Java archive — средство архивирования Java-классов, стандарт рас-
пространения JavaBean.
JAAS Java Authentication and Authorization Service — стандартный набор
API обеспечения безопасности Java-приложений. Описывает основные две час­ти обеспечения секретности данных. Авторизация и аутентификация.
JDK Java Developer’s Kit — программный пакет, содержащий основные ин-
струменты по созданию Java-программ и набор API.
JDBC Java Database Connectivity — программный интерфейс доступа к
СУБД, набор API, предназначенный для работы Java-приложений с СУБД.
JFC Java Foundation Classes — основной набор API для создания графиче-
ских Java-программ, в Java 2 JFS расширяется swing-формами и пакетом 2D.
JNDI Naming Service — обеспечивает поддержку произвольных имен в
распределенных средах. Этот сервис полностью совместим как с Sun Java Na­ming and Directory Interface (JNDI), так и со спецификацией OMG CosNaming. Доступ к объекту осуществляется из системного окружения контейнера. Ана­лог стандартной файловой системы с некоторыми упрощениями, работает только с именованием файлов.
JNI Java Native Interface — интерфейс использования в Java-программах
вызовом методов, реализованных с помощью других языков программирова ния.
-
Приложения 329
JSP Java server page — серверная технология, использования языка Java
как скриптового в HTML-страницах.
JRE Java Runtime Environment — среда выполнения Java-программ, мини-
мальный набор утилит, предназначенный для работы Java приложений.
JTA Java Transaction API — набор API для работы с транзакциями. JTS Java Transaction Service — программа, написанная на Java, обеспечи-
вающая взаимодействие различных программ посредством IIOP-протокола. Программный модуль, реализованный с помощью JTA.
JVM Java Virtual Machine — прослойка между операционной системой и
исполняемым Java-байт-кодом. Кроме компании SUN несколько различных компаний предлагают свои версии JVM. Компания IBM предлагает улучшен­ные версии JVM как для своих платформ, так и для платформ других произ­воителей.
Java IDL — технология совместного использования CORBA- и Java-прило-
жений.
JavaMail — набор API, предназначенный для работы с электронной почтой. JSP JavaServer Pages — технология расширения HTML-страниц при помо-
щи языка Java и технологий, основанных на нем.
JWS Java web server — web server компании SUN, полностью написанный
íà Java.
LOB large Object Binary — бинарный большой объект, стандартный тип
данных.
LUW logical unit of work — логическая единица транзакции. LAN local area network — локальная вычислительная сеть. MVC Model-View-Controller — концепция проектирования приложений. OLTP On-Line Transaction Processing — оперативная обработка транзак-
öèé.
PDA (personal digital assistant) — цифровая записная книжка с возможно-
стью подключения и передачи информации через сеть, один из типов совре­менных Web-клиентов.
PIN personal identification number — персональный идентификационный
номер.
RAD rapid application development — инструмент быстрой разработки, ча-
ще всего представляет визуальные средства создания программ из готовых программных модулей, компонентов.
RDBMS relational database management system — òî æå, ÷òî è ÑÓÁÄ. RM — либо латинская транскрипция инициалов автора книга, ëèáî òàê íà-
зываемый Resource Manager — программа управления доступом к EIS.
RMI Remote Method Invocation — способ вызова локальными программами
удаленных вызовов.
RMI-IIOP — использование rmi поверх IIOP-протокола. SAX Simple API for XML — упрощенный набор API для работы с XML-до-
кументами.
SPB Stores Procedure Builder — графическое средство создания хранимых
процедур, распространяемое компанией IBM
SQL structured query language — язык структурированных запросов. SQLCA — SQL Communications area — область данных СУБД, хранящая
информацию об ошибках, возникающих в момент исполнения программы.
SQLDA — SQL Data Area — область данных, описывающая структуру дан-
íûõ.
SQLJ — встраивание SQL-операторов в Java-програму.
330 Приложения
TCP/IP Transmission Control Protocol/InternetProtocol — основной прото-
кол передачи данных, используемый в Интернете.
Tag — основная структура, применяемая во всех языках разметки текста
HTML, SGML, XML. Может иметь несколько различных типов: начальный, ко­нечный, пустой, тег с телом.
UDF User defined function — функция, созданная пользователем. URL Uniform Resource Locator — сетевой адрес Web-документа с указан-
ным протоколом доступа и расположением документа на Web-сервере.
UI user’s interface — пользовательский интерфейс. UOW unit of work — единица произведенной работы. UDT-user defied type — пользовательский тип данных, хранимый в СУБД. VAJ- Visual Age for Java — интегрированная среда разработки, предлагае-
мая фирмой IBM для различных платформ и языков программирования.
WAR file — новый стандарт архива, применяется для сжатия всего Web-
приложения в целом.
Web Application — Web приложение, обычно коллекция статических
HTML-страниц и серверных приложений.
WWW World Wide Web — WEB — гипертекстовая система мировых сете-
вых информационных ресурсов.
WML Wireless Markup Language — язык разметки, используемый при бес-
проводном соединении.
XSL Extensible Style Language — язык определения каскадных таблиц в
XML-документе.
XSLT eXtensible Stylesheet Language Transformations — часть XSL s спе-
цификации, описывающая трансформацию таблицы стилей в стандартный XML-формат.
XML Extensible Markup Language — язык гипертекстовой разметки. XLink XML Linking Language — язык, используемый в XML-документе
для описания ресурсов встраиваемых в XML-документ.
XPath XML Path Language — указатель ресурсов, используемый в XML-
документе.
X\OPEN — стандарт SQL для использования в системах UNIX.