10. Апплеты и сервлеты Java как средства расширения возможностей браузера и Web-сервера.
Апплеты и сервлеты Java
Java- это оригинальный язык программирования, разработанный корпорацией Sun Microsystems. Сегодня язык Java быстро становится фактически стандартным языком программирования для сложных Web-приложений. Java является объектно-ориентированным языком программирования со строгим контролем типов, который интересен, прежде всего, возможностью построения Web-приложений, или апплетов (applet), и серверных приложений, или сервлетов (servlet). Java- это простой, объектно-ориентированный, распределенный, интерпретируемый, устойчивый, безопасный, архитектурно-нейтральный, переносимый, высокопроизводительный, многопоточный и динамический язык.
Компилятор Java считывает файл с расширением .java и генерирует файл с расширением .class, который содержит инструкции в виде байт-кода, не зависящего от любой конкретной компьютерной архитектуры. Текст байт-кода одинаково легко интерпретируется на любой платформе или же транслируется в характерные для нее методы. При этом виртуальная машина JVM, входящая в состав обозревателя, может интерпретировать и выполнять байт-код Java непосредственно на любой платформе, для которой созданы интерпретатор и система времени выполнения. Поскольку практически все разработчики Web-браузеров уже лицензировали Java и реализовали в своих продуктах встроенную виртуальную машину JVM, приложения Java могут выполняться на подавляющем большинстве существующих платформ.
Концепция мобильных Java байт-кодов (апплетов) была специально разработана для использования в WWW. Для использования апплетов в язык гипертекстовой разметки HTML был введен тег APPLET, указывающий имя апплета и параметры его вызова. При этом обработка HTML-документов выполняется браузером также, как и при обработке встроенной в документ графики. Сначала запрашивается документ, анализируется его содержание, а потом, если имеются теги APPLET, подгружаются апплеты. После получения всех апплетов они могут быть выполнены. Из этой схемы ясно, что браузер является одновременно и интерпретатором байт-кодов. Используя библиотеку классов, можно разработать эффектные динамические мультимедийные страницы. Кроме того, применение байт-кодов позволяет организовать распределенные процедуры вычислений с использованием различных серверов, с которыми можно взаимодействовать по разным протоколам. Сервлеты, в отличие от апплетов, выполняется на стороне сервера и служат для обработки запросов от обозревателя.