русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Cache' Server Pages (CSP).


Дата добавления: 2015-07-09; просмотров: 1406; Нарушение авторских прав


Основой концепции серверных страниц Cache' является автоматическое создание по запросу пользователя web-страниц, содержащих требуемую информацию из БД Cache'. Как видно из рис. 7., вся бизнес-логика CSP-приложений выполняется в непосредственной близости к хранилищу данных Cache', таким образом сокращается объем данных, которыми обмениваются web-сервер и сервер БД Cache', что приводит к выигрышу в производительности по сравнению с другими технологиями создания web-приложений. Для еще большего увеличения производительности CSP приложений при обмене данными между сервером Cache' и web-сервером используются высокоскоростные интерфейсы API.

Рис.7. Сравнение web-технологий.

 

Серверные страницы Cache' представляют собой текстовые HTML-файлы, расширяемые тегами приложений Cache' (Cache' Application Tags или CATs). Для создания CSP приложений можно воспользоваться стандартными средствами разработки HTML страниц (Cache' предоставляет add-in модуль для полной интеграции с Macromedia DreamWeaver) или, на крайний случай, обыкновенным текстовым редактором.

В Листинге 1 приведен пример небольшого CSP-приложения, которое выводит значения свойств объекта, хранящегося в БД Cache'.

 

Листинг 1.

<html>

<head></head>

<body>

<script language="Cache'" runat="Server">

set obj=##class(Sample.Person).%OpenId(1)

write obj.Name,"<br>"

write obj.Age,"<br>"

do obj.%Close()

</script>

</body>

</html>

 

Стандартные теги приложений Cache' приведены в Таблице 1. Однако пользователь не ограничен только стандартными тегами. Cache' предоставляет также интерфейсы для создания пользовательских тегов приложений.

Таблица 1. Стандартные теги CSP. Вставка данных:



#(а)# Вывод значения переменной/функции/метода

##(a)## тоже, но во время компиляции

Управление

<CSP:IF CONDITION='a=1'>

<b>Unautorized!!!</b>

</CSP:IF> Условие

<CSP:WHILE …>

<CSP:LOOP …> Циклы

Использование Cache' Script

<SCRIPT Language="Cache'"

RUNAT="Server/Compiler">

….

</SCRIPT> Скрипт внутри страницы

<SCRIPT Method=methodName

Arguments=spec [ReturnType=dataType]>Inner

Text</SCRIPT> Метод CSP класса

Запросы к БД

<CSP:QUERY …>

<CSP:SEARCH …>

<SCRIPT LANGUAGE="SQL" …> Запрос класса

Поисковая форма

SQL-запрос

Привязка объекта к форме

<CSP:OBJECT …>

<FORM CspBind="obj" …>

<INPUT CspBind="obj.Name" …> Открытие объекта

Привязка объекта к форме

Привязка свойства к полю

Управление параметрами класса

<CSP:CLASS [Encoded=encodedType]

[Private=accessType]

[Super=classList] …> Определение родительских классов, режима шифрования и пр.

При открытии CSP-страницы в браузере Cache' автоматически преобразует CSP-страницу в класс Cache' (по умолчанию классом-предком для CSP-классов является системный класс %CSP.Page). CSP-класс - это не просто способ представления кода. Это отражение полноценной объектной модели CSP-приложения. Т.е. можно использовать все преимущества объектного подхода к разработке при работе с CSP, такие как наследование и полиморфизм. После преобразования CSP-страницы в класс Cache' класс можно редактировать, используя возможности Object Architect, например, возможность контекстной подцветки кода методов.

Для изучения CSP можно воспользоваться примерами, поставляемыми в стандартной комплектации Cache'. Для этого необходимо установить Cache' и в браузере обратиться по адресу http://127.0.0.1:1972/csp/samples/menu.csp:

 

 

Использование классов %Net.SMTP и %Net.POP3 для отправки и приема электронной почты.

С помощью классов %Net.SMTP и %Net.POP3 системной библиотеки %Net, поставляемой в стандартной конфигурации, можно реализовать функции отправки и приема электронных писем на базе СУБД Cache'.

В Листинге 2 приведена Cache'-программа, с помощью которой реализуется отправка электронного письма с прикрепленным графическим файлом (test.jpg) по протоколу SMTP.

Листинг 2.

set s=##class(%Net.SMTP).%New()

set s.smtpserver="SMTP.mail.ru"

set s.timezone="-0400"

set m=##class(%Net.MailMessage).%New()

set m.From="test@company.com"

do m.To.Insert("receiver@another.com")

set m.Subject="Sent by Cache'' mail"

set m.Charset="iso-8859-1"

do m.TextData.Write("This is the main body.")

do m.TextData.Write($char(13,10))

do m.TextData.Write("This is the second line.")

do m.TextData.Write($char(13,10))

set status=m.AttachFile("c:\winnt","test.jpg")

set status=s.Send(m)

do m.%Close()

do s.%Close()

quit

 

Класс %Net.SMTP поддерживает также отправку сборных (multi-part) электронных писем.

Для реализации функции приема электронных писем можно воспользоваться системным классом %Net.POP3. В листинге 3 приведен пример использования класса %Net.POP3.

Листинг 3.

new mailserver,status,from,to,date,subject,messagesize,m,hdrs,key,mailMsg

set mailserver=##class(%Net.POP3).%New()

set mailserver.AttachDir="d:\attach\" ; need terminating \

set mailserver.Debug=0

set mailserver.StoreAttachToFile=1

write !,"Calling Connect"

set status=mailserver.Connect("moon.kinich.com","testjsl","jsltest")

write !,"Calling FetchMessage"

set status=mailserver.FetchMessage(13,.from,.to,.date,

.subject,.messagesize,.hdrs,.mailMsg,0)

write !,"from="_from

write !,"to="_to

write !,"date="_date

write !,"subject="_subject

write !,"messagesize="_messagesize

write !,"Closing mailserver="_mailserver.%Close()

write !,"Closing mailMsg="_mailMsg.%Close()

quit



<== предыдущая лекция | следующая лекция ==>
Инструментальные средства разработки приложений в СУБД Cache'. | Версии системы и поддерживаемые платформы.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.226 сек.