Web приложение - IShop
4.7 (7 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
51 students enrolled

Web приложение - IShop

Программирование на Java
4.7 (7 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
51 students enrolled
Created by DevStudy .net
Last updated 12/2018
Russian
Current price: $9.99 Original price: $19.99 Discount: 50% off
30-Day Money-Back Guarantee
This course includes
  • 14 hours on-demand video
  • 14 articles
  • 11 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to Udemy's top 3,000+ courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Основам протокола HTTP 1.1;
  • Использовать возможности основных web компонентов: Servlets, JSP, Filters, Listeners;

  • Создавать библиотеки тегов JSP и использовать JSTL;

  • Создавать web приложение на базе существующего шаблона;
  • Использовать шаблон MVC для создания web системы любой сложности;
  • Проектировать и создавать реляционную базу данных для web приложения;
  • Разбивать вашу будущую систему на отдельные модули с четким разграничением ответственности для каждого из них;
  • Писать чистый и понятный другому программисту код;
  • Использовать инструмент maven для создания web приложения;
  • А также повысите Ваши знания в области JDBC, HTML, JS, AJAX.
Course content
Expand all 34 lectures 14:13:16
+ Постановка задачи
1 lecture 15:10
  1. Создание web приложения IShop на базе HTML шаблона, со следующими функциями:

    1. Отображение всех товаров

    2. Отображение категорий товаров

    3. AJAX загрузка следующих порций товаров

    4. Отображение товаров по категориям

    5. Поиск товаров

    6. Добавление товара в корзину

    7. Просмотр корзины, удаление товаров из корзины

    8. Регистрация через Facebook

    9. Формирование заказа

    10. Просмотр всех заказов текущего пользователя

    11. Просмотр детальной информации по конкретному заказу

    12. Вылогинивание из системы

    13. Отображение страницы с ошибкой

    14. Контроль доступа к защищенным страницам и страницам другого пользователя

    15. Сохранение состояния корзины между сеансами пользователя

    16. Автоматическое сжатие HTML кода

  2. Краткий обзор теоретических знаний, необходимых для реализации данного проекта.

  3. Установка необходимых приложений для разработки проекта:

    1. Скачивание и установка JDK

    2. Установка системного свойства JAVA_HOME

    3. Скачивание и установка Eclipse IDE For Java EE Developers

    4. Установка workspace

    5. Настройка JDK в Eclipse

    6. Скачивание и установка Git for Windows

Preview 15:10
+ Краткие теоретические сведения
16 lectures 06:30:52
  1. Определение протокола HTTP

  2. Свойства протокола

  3. URI (Uniform Resource Identifier)

  4. Структура протокола

  5. Стартовая строка HTTP

  6. Методы запроса

  7. Коды состояния

  8. Заголовки HTTP

  9. Тело сообщения HTTP

  10. Версии протоколов

Лекция 1. Протокол HTTP 1.1
24:04
  1. Web компонент и web контейнер

  2. Определение и функции web контейнера

  3. Типы web компонентов

  4. Структура JEE web приложения

  5. Tomcat Web контейнер

  6. Выбор версии Tomcat

  7. Структура Tomcat

  8. Загрузчики классов

  9. Поиск классов в web приложении

  10. Отладочный режим Tomcat

  11. Алгоритм поиска web приложения в сети

  12. Создание maven проекта

  13. Servlet и JSP dependencies

  14. Настройки maven web проекта в Eclipse

  15. Создание локального репозитория на git для проекта

Лекция 2. Web компоненты JEE
39:41
  1. Понятие Servlet

  2. Жизненный цикл Servlet

  3. Обработка запроса в Servlet

  4. Извлечение данных из запроса

  5. Установка данных ответа

  6. Конфигурирование сервлетов с помощью аннотаций

  7. Конфигурирование сервлетов с помощью XML

  8. Конфигурирование сервлетов с помощью Java классов

  9. Конкурентный доступ

  10. Чтение параметров запроса

  11. Передача управления. Forward.

  12. Передача управления. Include.

  13. Передача управления. Redirect.

  14. Передача данных между компонентами

  15. Версии Servlets API

  16. Примеры использования. Отображение картинки.

  17. Примеры использования. Login сервлет.

Лекция 3. Сервлеты (Servlets)
57:43
Домашнее задание: Сервлеты (Servlets)
00:23
  1. Выполнение домашнего задания с предыдущего урока

  2. Определение Cookie

  3. Схема обмена Cookie

  4. Работа с Cookie

  5. Преимущества и недостатки Cookie

  6. Отслеживание сеанса

  7. Организация сессий

  8. Сессии в JEE

  9. Данные, общие для всего приложения

  10. Области хранения данных в приложении (Scope)

  11. Примеры использования

Лекция 4. Куки (Cookie), Сессии (Sessions) и области хранения данных (Scope)
47:14
Домашнее задание: Куки (Cookie), Сессии (Sessions) и области хранения данных
00:38
  1. Выполнение домашнего задания с предыдущего урока

  2. Определение JSP

  3. Преимущества JSP

  4. Схема работы JSP

  5. JSP: скомпилированный сервлет

  6. Вставка кода в JSP страницы

  7. Предопределенные переменные

  8. Директивы JSP

  9. Подключение файлов

  10. Передача управления и данных

  11. Сервлеты vs. JSP

  12. Пример передачи управления и данных

  13. Expression language (EL) базовые операции

  14. Expression language (EL) зарезервированные объекты

  15. Примеры использования JSP

Лекция 5. JSP (JavaServer Pages)
01:02:43
Домашнее задание: JSP (JavaServer Pages)
00:04
  1. Выполнение домашнего задания с предыдущего урока

  2. Определение фильтров

  3. Схема работы фильтра

  4. Жизненный цикл фильтра

  5. Конфигурирование фильтров с помощью аннотаций

  6. Конфигурирование фильтров с помощью аннотаций + XML

  7. Конфигурирование фильтров с помощью XML

  8. Конфигурирование фильтров с помощью Java классов

  9. Цепочка фильтров

  10. Передача управления и данных

  11. Порядок фильтров в цепочке

  12. Привязка фильтров

  13. Примеры использования: Проверка доступа к защищенным страницам

  14. Примеры использования: Установка кодировок

  15. Примеры использования: Обработка всех ошибок

  16. Примеры использования: Форматирование HTTP ответа

Preview 36:32
Домашнее задание: Фильтры (Filters)
00:09
  1. Выполнение домашнего задания с предыдущего урока

  2. Определение слушателя

  3. ServletContextListener слушатель

  4. ServletContextAttributeListener слушатель

  5. HttpSessionListener слушатель

  6. HttpSessionAttributeListener слушатель

  7. HttpSessionBindingListener слушатель

  8. HttpSessionActivationListener слушатель

  9. HttpSessionIdListener слушатель

  10. ServletRequestListener слушатель

  11. ServletRequestAttributeListener слушатель

  12. Конфигурирование слушателей с помощью аннотаций

  13. Конфигурирование слушателей с помощью XML

  14. Конфигурирование слушателей с помощью Java классов

  15. Порядок выполнения слушателей

  16. Примеры использования: Инициализация глобальных объектов

  17. Примеры использования: Обновление статуса пользователя в БД

Лекция 7. Слушатели (Listeners)
38:57
Домашнее задание: Слушатели (Listeners)
00:11
  1. Выполнение домашнего задания с предыдущего урока

  2. Определение библиотеки тегов

  3. Преимущества библиотеки тегов

  4. Схема обработки тегов

  5. Жизненный цикл тега

  6. Методы тегов

  7. Обработчик простого тега

  8. XML дескриптор для тега

  9. Использование тега на JSP

  10. Обработчик тега с атрибутом

  11. Обработчик тега с телом

  12. Обработчик тега с итерациями

  13. Обработчик тега, изменяющего тело

  14. SimpleTagSupport JSP 2.0

  15. Обработчики простого тега, тега с атрибутами, с телом, с итерациями и изменяющего тело для JSP 2.0

  16. Создание tag файлов

  17. Использование tag файлов на JSP

  18. Пример использования: Tag модального окна

  19. Пример использования: Использование тега модального окна

Лекция 8. JSP теги и библиотеки тегов
48:41
Домашнее задание: JSP теги и библиотеки тегов
00:18
  1. Выполнение домашнего задания с предыдущего урока

  2. Определение JSTL

  3. Библиотеки тегов

  4. Использование JSTL

  5. Core

  6. XML

  7. I18N

  8. SQL

  9. Functions

  10. Примеры использования

Лекция 9. JSTL (JavaServer Pages Standard Tag Library)
33:21
Домашнее задание: JSTL (JavaServer Pages Standard Tag Library)
00:10
+ Разработка приложения
17 lectures 07:27:20
  1. Выполнение домашнего задания с предыдущего урока

  2. MVC шаблон

  3. MVC в WEB

  4. Выбор Web компонентов

  5. Шаблонизация представления

  6. Структура проекта

  7. page-template.jsp

  8. Controllers

  9. Page view

  10. Error handler (Filter)

  11. Доступ к бизнес сервисам

  12. Доступ из слушателя приложения

  13. Доступ из слушателя сессии

  14. Доступ из сервлета

  15. Доступ из фильтра

  16. Доступ из JSP страницы

  17. Доступ из JSP тега

Лекция 1. MVC шаблон и шаблонизация JSP
41:46
Домашнее задание: MVC шаблон и шаблонизация JSP
00:14
  1. Создание проекта с указанной в предыдущей лекции структурой

  2. Удаление всех тестовых компонентов с предыдущих занятий

  3. Создание AbstractController, AbstractFilter, ServiceManager,  IShopApplicationListener, ErrorHandlerFilter, ErrorController,  AllProductsController

  4. Добавление логгера в проект http://logback.qos.ch/

  5. Добавление глобальных настроек проекта из файла application.properties

  6. Декомпозиция HTML шаблона https://devstudy-net.github.io/ishop-layout/products.html

  7. Отображение интерактивного макета на http://localhost:8080/products

  8. Создание ProductService и OrderService

  9. Maven plugin для автоматического копирования библиотек в папку lib

  10. Демонстрация работы интерактивного макета

  11. Создание контроллера для AJAX загрузки новой порции товаров AllProductsMoreController

Лекция 2. Создание рабочего шаблона web приложения
55:20
Домашнее задание: Создание рабочего шаблона web приложения
00:08
  1. Выполнение домашнего задания с предыдущего урока

  2. Скачивание и установка сервера Postgresql https://www.postgresql.org/download/

  3. Скачивание и установка SQL Manager for Postgresql http://www.sqlmanager.net/en/products/postgresql/manager

  4. Использование PGAdmin для создании пользователя и базы данных

  5. Создание таблиц: category, producer, product, account, order, order_item

  6. Создание внешних ключей к таблицам

  7. Создание последовательностей: account_seq, order_seq, order_item_seq

Лекция 3. Создание базы данных. Заполнение тестовыми данными
28:50
  1. Выполнение домашнего задания с предыдущего урока

  2. Добавление JDBC драйвера в проект

  3. Структура war архива, создаваемого mvn install

  4. Создание абстрактной и реальных сущностей для проекта

  5. Добавление методов загрузки товаров в ProductService

  6. Утилитные классы для работы с JDBC. Использование ResultSetHandler интерфейса.

  7. Скачивание и конфигурирование DBCP2

  8. Модификация AllProductsController и AllProductsMoreController контроллеров для отображения продуктов из базы данных

  9. Модификация product.jsp для отображения данных модели из контроллера

  10. Демонстрация отображения товаров из базы данных

Лекция 4. Отображение данных из базы данных
47:06
Домашнее задание: Отображение данных из базы данных
00:12
  1. Выполнение домашнего задания с предыдущего урока

  2. Реализация постраничного отображения данных.

  3. Считывание динамических параметров при выполнении AJAX запроса

  4. Модификация HTML кода во время выполнения

  5. Создание класса формы SearchForm для параметров поиска

  6. Преобразование HTML формы в объект Java

  7. Простой метод поиска по продуктам

  8. Модификация контроллеров для выполнения поиска и загрузки новой порции результатов

  9. Отображение введенного параметра поиска на JSP

Лекция 5. Постраничное отображение и поисковая форма
48:46
Домашнее задание: Постраничное отображение и поисковая форма
00:06
  1. Выполнение домашнего задания с предыдущего урока

  2. Установка уровня логирования конкретному классу

  3. Сортировка производителей по алфавиту

  4. Сохранение состояния выбранных опции поиска при отображении результатов

  5. Модификация модели корзины

  6. Создание бизнес метода добавления нового товара в корзину

  7. Модификация фильтра восстановления корзины из cookie

  8. Создание AJAX контроллера для добавления нового товара в корзину

  9. Работа с JSON форматом в Java

  10. Работа с JSON форматом на стороне клиента в JavaScript функции

  11. ОТображение текущего состояния корзины на JSP странице

Лекция 6. Добавление продукта в корзину
45:49
Домашнее задание: Добавление продукта в корзину
00:09
  1. Выполнение домашнего задания с предыдущего урока

  2. Схема взаимодействия web приложения и Facebook

  3. Создание Facebook приложения

  4. Подключение Facebook API в web приложении

  5. Создание сервиса взаимодействия с социальной сетью на примере Facebook

  6. Создание моделей для интеграции

  7. Контроллеры для логина в систему и обработки ответа от Facebook

  8. Сервис аутентификации пользователя через Facebook

  9. Залогинивание и вылогинивание из системы

  10. Демонстрация работы web приложения и Facebook

Preview 52:40
Домашнее задание: Интеграция с социальными сетями. Facebook API
00:10
  1. Выполнение домашнего задания с предыдущего урока

  2. Реализация бизнес сервиса по созданию заказа

  3. Пакетное добавление нескольких записей в базу данных

  4. Реализация контроллера по созданию заказа

  5. Отображение заказа из базы данных

  6. Контроль доступа к заказам в базе данных

Лекция 8. Создание заказа в системе
38:59

Домашнее задание

  1. Реализовать order.jsp, которая отобразить данные заказа

  2. Отобразить все заказы текущего пользователя отсортированные по-убыванию

  3. Возможность AJAX загрузки новой порции данных всех заказов текущего пользователя

Решение данного задание описывается в следующей лекции

Домашнее задание: Создание заказа в системе
00:07
  1. Выполнение домашнего задания с предыдущего урока

  2. Создание error.jsp

  3. Иерархия исключений для проекта

  4. Логика обработки ошибок в ErrorHandlerFilter

  5. Переопределение методов sendError

  6. Обработка ошибок на стороне клиента в JavaScript функции

  7. Обработка ошибки добавления продукта в корзину

Лекция 9. Обработка ошибок в web приложении
42:48
  1. Проверка работоспособности всех функций web приложения, заявленных при постановки задачи

  2. Обзор использования для реализации текущего web приложения теоретических знаний,полученных в первой части курса

Финальный обзор web приложения
44:08
Requirements
  • Знание основ Java Standard Edition
  • Знания основ HTML, CSS, JavaScript
Description

Данный курс предназначен для изучения основ Java Enterprise Edition (JEE) для создания web приложений с помощью языка Java.

Данный курс состоит из двух частей: в первой части рассматривается  теоретический обзор основных web компонентов: Servlets, Filters,  Listeners, JSP, JSP tags, JSTL, а  также основы HTTP протокола,  а во второй части полученные теоретические знания применяются для  создания полноценного web приложения интернет магазина на базе макета,  созданного в курсе Макет интернет магазина - IShop.

После прохождения курса Вам предлагается выполнить самостоятельное  задание: разработать web приложение персональный блог, на основе знаний и  навыков, полученных в рамках данного курса.  В последнем уроке в качестве домашнего задания будет подробно описано  задание на разработку персонального блога.

В качестве редактора кода будет использован Eclipse, в качестве основного браузера будет использован Google Chrome.

Курс ориентирован на Java программистов, которые собираются работать в Web направлении.

Разработанное в рамках данного курса web приложение будет использовано в курсе Рефакторинг Web приложения - IShop для более глубокого изучения технологий Java Enterprise Edition и  понимания основных принципов, на базе которых работают современные популярные Java фреймворки

Who this course is for:
  • Данный курс предназначен для изучения основ Java Enterprise Edition (JEE) для создания web приложений с помощью языка Java.