Базы данных Oracle - статьи


              

Создание сервлета на Java - часть 2


DECLARE xval XMLTYPE;

xnode1 XMLTYPE := XMLTYPE ( ' <servlet xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd"> <servlet-name>XMLDBServletPrimer</servlet-name> <servlet-language>Java</servlet-language> <display-name>Oracle XML DB Servlet Primer</display-name> <servlet-class>XMLDBServlet</servlet-class> <servlet-schema>SCOTT</servlet-schema> </servlet> ');

xnode2 XMLTYPE := XMLTYPE ( ' <servlet-mapping xmlns="http://xmlns.oracle.com/xdb/xdbconfig.xsd"> <servlet-pattern>/xdbserv</servlet-pattern> <servlet-name>XMLDBServletPrimer</servlet-name> </servlet-mapping> ');

BEGIN SELECT DBMS_XDB.CFG_GET ( ) INTO xval FROM dual;

SELECT INSERTCHILDXML ( xval, '/xdbconfig//servlet-list', 'servlet', xnode1

) INTO xval FROM dual ; SELECT INSERTCHILDXML ( xval, '/xdbconfig//servlet-mappings', 'servlet-mapping', xnode2

) INTO xval FROM dual ;

DBMS_XDB.CFG_UPDATE ( xval ); COMMIT; END; /

Теперь обращение по адресу:

даст результат:

Выдача данных в формате HTML и обращение к БД делается как обычно.

Например, для перехода к HTML в данном случае даже необязательно пользоваться классом HttpServlet. Достаточно в описании сервлета заменить text/xml на text/html и изъять строку out.println ( "<?xml version=\"1.0\"?>" );. Перетранслировав сервлет, получим по тому же адресу:

Обращение в тексте сервлета к данным БД делается как обычно для Java, и оставляется для самостоятельного упражнения.




Содержание  Назад