Applets and Servlets. The Applet Class. The Applet Context. Web Applications

Страницы работы

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.

Фрагмент текста работы

Applets and Servlets

Александр Кораблин

1

  • java.applet.Applet (AWT)
    • для графических приложений
  • javax.swing.Japplet (Swing)
    • GUI приложений

2

The Applet Class

void destroy( ) - Called by the browser just before an applet is terminated. AppletContext getAppletContext( ) - Returns the context associated with the applet. String getAppletInfo( ) - Returns a string that describes the applet. AudioClip getAudioClip(URL url) - Returns an object that encapsulates the URL getCodeBase( ) - Returns the URL associated with the invoking applet. URL getDocumentBase( ) - Returns the URL of the HTML doc that invokes the applet. Image getImage(URL url) - Returns an Image object that encapsulates the image found at the location specified by url. String getParameter(String paramName) - Returns the parameter associated with paramName. null is returned if the specified parameter is not found. void init( ) - Called when an applet begins execution. boolean isActive( ) - Returns true if the applet has been started. It returns false if the applet has been stopped. void resize(int width, int height) - Resizes the applet according to the dimensions void start( ) - Called by the browser when an applet should start (or resume) execution. void stop( ) Called by the browser to suspend execution of the applet.

Demo1

3

<html> <head> <title>Demo Applet</title> </head> <body> <p>My applet</p> <applet code=“Demo1.class" width=“200" height="100"> If your browser could show Java, you would see an applet here. </applet> </body> </html> Другие атрибуты: align, vspace, hspace, alt, name (имя для скриптов) code=“com.myApplets.Demo.class” - имя класса аплета codebase=“URL for locating the class files” archive="MyClasses.jar,corejava/CoreJavaClasses.jar"

4

Передача параметров

<applet code="FontParamApplet.class" width="200" height="200"> <param name="font" value="Helvetica"/> </applet> public class FontParamApplet extends JApplet { public void init() // только в init() !!! { String fontName = getParameter("font"); . . .

5

Видео и звук

  • Форматы:
    • GIF,PNG, or JPEG
    • AU, AIFF, WAV, or MIDI
  • Image cat = getImage(getCodeBase(),"images/cat.gif");
  • AudioClip meow = getAudioClip(getCodeBase(), "audio/meow.au");
  • play(getCodeBase(), "audio/meow.au");

6

The Applet Context

  • public AppletContext getAppletContext()
    • Applet ap = getAppletContext().getApplet(“name");
    • Enumeration<Applet> e = getAppletContext().getApplets();
    • URL u = new URL("http://java.sun.com/index.html");
    • getAppletContext().showDocument(u);
    • // void showDocument(URL url, String where)
  • “_self” (show in current frame), “_parent” (show in parent frame), “_top” (show in topmost frame), and “_blank” (show in new window).

7

JAVA НА СТОРОНЕ СЕРВЕРА: СЕРВЛЕТЫ

8

  • 1. Чтение данных, переданных пользователем.
  • 2. Получение прочей информации, переданной в HTTP-запросе.
  • 3. Генерация результатов.
  • 4. Форматирование результатов обработки.
  • 5. Установка параметров HTTP-ответа.
  • 6. Передача документа клиенту.

9

  • Эффективность
  • Простота использования
  • Богатые возможности
  • Переносимость
  • Защита
  • Низкая стоимость

10

Обзор сервлетов

GenericServlet

  • javax.servlet & javax.servlet.http
  • Apache Tomcat 6.0.20\lib\servlet-api.jar

Servlet ServletConfig ServletRequest ServletResponcse

HttpServlet

& Cookie

11

  • import j a v a x . s e r v l e t . *;
  • import j a v a x . s e r v l e t . h t t p . *;
  • p u b l i c c l a s s ServletTemplate extends H t t p S e r v l e t {
  • p u b l i c void d o G e t ( H t t p S e r v l e t R e q u e s t r e q u e s t,
  • H t t p S e r v l e t R e s p o n s e response)
  • throws S e r v l e t E x c e p t i o n , lOException {
  • / / Параметр r e q u e s t используется для чтения полей
  • / / заголовка, содержащихся в HTTP-запросе, и данных,
  • / / введенных пользователем посредством HTML-формы.
  • / / Параметр r e s p o n s e " используется для установки кода
  • / / состояния HTTP-ответа и полей заголовка.
  • P r i n t W r i t e r out = r e s p o n s e . g e t W r i t e r ( );
  • / / Объект out используется для передачи данных броузеру.
  • }
  • }

12

13

Настройка контейнера-сервлетов

  • Установка, например, Apache Tomcat
  • Задаём путь к Tomcat в О.С.
    • CATALINA_HOME=C:\Program Files\Apache Software Foundation\Apache Tomcat 6.0.20
  • Путь к JDK
    • JAVA_HOME=G:\Program Files\Java\jdk1.6.0
  • Путь к библиотеке
    • CLASSPATH=C:\Program Files\Apache Software Foundation\Apache Tomcat 6.0.20\lib\servlet-api.jar
  • Запуск и остановка Tomcat
    • Apache Tomcat 6.0.20\bin\startup.bat
    • Apache Tomcat 6.0.20\bin\shutdown.bat
  • Запуск сервлета
  • http://localhost:8080/examples/servlets/servlet/HelloWorldExample

14

Установка сервлета в контейнер

  • Копируем файлы сервлета в каталог:
    • С:\Program Files\Apache Software Foundation\Apache Tomcat 6.0.20\webapps\examples\WEB-INF\classes
  • Регистрируем сервлет в файле
  • \webapps\examples\WEB-INF\ web.xml
    • <servlet>
    • <servlet-name>Example1</servlet-name>
    • <servlet-class>SDemo1</servlet-class>
    • </servlet>
    • <servlet-mapping>
    • <servlet-name>Example1</servlet-name>
    • <url-pattern>/servlets/SDemo1</url-pattern>
    • </servlet-mapping>

15

Web Applications

16

Структура Web приложения

If the servlets or other .class files are bundled inside JAR files, then the JAR files should be placed in WEB-INF/lib.

Copy myWebApp to tomcat_dir/webapps

17

18

Состав JSP

  • Текст шаблона: Статический HTML
  • Элементы скриптов JSP
    • Выражения, имеющие форму <%= выражение %>, которые обрабатываются и направляются на  вывод,
    • Скриплеты, имеющие форму <% код %>, которые вставляются в метод service сервлета
    • Объявления, имеющие форму <%! код %>, которые вставляются в тело класса сервлета, вне существующих методов.

19

Пример Current time: <%= new j a v a . u t i l . D a t e () %> В результате в тело метода j s p S e r v i c e (вызываемого из метода s e r v i c e ) будут помещены следующие строки кода: out.print("Current time: " ); out.println(new java.util.Date ());

20

Объекты JSP

  • request – позволяет обращаться к параметрам запроса, типу запроса (GET, POST, HEAD, и т.д..), и входящим HTTP заголовкам
  • response - объект связанный с ответом на запрос клиента
  • out - объект типа PrintWriter, используемый для отправки вывода клиенту

Похожие материалы

Информация о работе

Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.

Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.

Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.

Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.

Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.

Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.