Oc-windows.ru

IT Новости из мира ПК
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Разработка сайтов на java

Java EE

Новые статьи и уроки JAVA

JAVA EE: Разработка web-приложения. Дизайн и настройка.

Третья статья по разработке web-приложения.

В данной статье мы спроектируем наше приложение, обговорим основные моменты, касающиеся его логики функционирования, а также приступим к работе со средой разработки (IDE).

Также мы рассмотрим способ подключение IDE к базе данных MySQL, создадим новую базу данных для нашего web-приложения.

Разрабатываемый нами сайт будет подобием мини-блога с возможностью чтения, добавления и редактирования статей. Также будет реализован функционал регистрации пользователей, комментирования статей и распределения прав доступа. Это первоначальный набор возможностей, который будет реализован, в дальнейшем будем вырабатывать новые требования к системе.

Структура сайта

Из приведенного выше описания можно составить структуру сайта:

  1. Главная страница сайта. Содержит список последних добавленных статей.
  2. Страница чтения статьи. Содержит полное содержание выбранной статьи.
  3. Страница регистрации.
  4. Зона администрирования. Ограниченный вход только для авторизованных пользователей, имеющих права администратора сайта.

Наглядно расписанную структуру можно увидеть на рисунке ниже:

Архитектура Java EE проекта

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

При работе с JSP можно уместить бизнес-логику внутри jsp страниц с использованием скриплетов , однако такой подход не рекомендуется даже для малых проектов. Причин, почему этот подход является плохим, можно найти множество на просторах интернета, в частности:

  1. Скриплеты не масштабируемы и трудно поддерживаемы.
  2. Смесь программирования, верстки и дизайна в одном флаконе: верстальщик явно не обрадуется, глядя на jsp страницу с кучей непонятного для него кода.
  3. Читать такие страницы крайне неудобно.
  4. Сложность тестирования.

И это список далеко неполный.

Из вышесказанного выведем еще одно важное правило:

1Не злоупотребляйте, а лучше старайтесь не использовать скриплеты внутри jsp страниц.

В данной серии статей мы будем следовать паттерну MVC. Паттерн достаточно известный и подробно вдаваться в его подробности не имеет смысла.

Опишем основные моменты.

  • Модель (M Model): Хранит в себе бизнес-логику приложения, регулирует доступ к данным и их изменение.
  • Вид (V View): View отображает содержимое модели, определят как необходимо представить данные, полученные от модели. View берет на себя сбор пользовательских данных и передачи их контроллеру.
  • Контроллер (C Controller): Контроллер определяет поведение всего приложения, получает от view пользовательские данные, интерпретирует их в действия, выполняемые с помощью модели. Контроллер передает view указание, какое представление необходимо применить, на основе результатов работы модели и взаимодействия с пользователем.

Применительно к Java EE технологии шаблон MVC реализуется следующим образом. Сервлет используется как контроллер для обработки входящих запросов пользователей от представления, которое реализуется с помощью страниц jsp. Модель же представляет собой EJB сессионные компоненты, а также классы сущности (JPA), которые в свою очередь содержат в себе данные из БД.

Создание web-проекта

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

1. Запустите Ваше IDE. Автор использует NetBeans.

2. Кликните по иконке «Создать проект. » , в списке категорий выберите «Java Web», в появившемся списке «Проекты» выберите «Веб-приложение».

3. Нажмите «Далее >». Введите наименование проекта «myblog».

4. Сервер и параметры настройки. Далее Вам необходимо выбрать сервер и версию Java EE платформы. Если в списке серверов нет Вашего сервера, то добавьте его, используя кнопку «Добавить».

После завершения всех настроек нажмите кнопку «Готово».

/> или F6. В результате IDE развернет на выбранном вами сервере данное веб-приложение. Протестить его можно по перейдя по ссылке:

Чтобы посмотреть список развернутых приложений на сервере, перейдите на вкладку «Службы», раскройте выпадающий список «Серверы», в нем выберите ваш и в нем найдите список «приложения».

Взаимодействие IDE с базой данных

Подключим IDE к нашей базе данных. Для этого выполним простые действия.

1. На вкладке «Службы» кликните правой кнопкой мыши и в появившемся контекстном меню выберите пункт «Зарегистрировать сервер MySQL».

2. По умолчанию имя узла и номер порта сервера совпадают с предложенными. Вам нужно ввести ваше имя пользователя и пароль. Нажмите ОК.

В списке баз данных появится новое подключение. Выполните коннект к ней, используя соответствующий пункт в контекстном меню подключения.

Шаблоны страниц

Далее создадим несколько шаблонов наших страниц. Для этого нажмите на кнопку «Создать файл. » . Выберите тип файла «JSP» и нажмите «Далее. «, введите название страницы Article и нажмите «Готово«. Подобным же образом создайте jsp файл Registration.

Теперь создайте папку «css» в корневом каталоге и добавьте новую каскадную страницу стилей style.

В результате дерево проекта у Вас должно выглядеть следующим образом:

Можно посмотреть каждую из страниц, набрав в адресной строке браузера строку типа localhost:8080/article.jsp

Теперь произведем небольшую верстку сайта. Откройте файл index.jsp и добавьте в него следующий код.

Файл article.jsp будет отличать лишь то, что блок article у него будет встречаться единожды, поэтому скопируйте этот же код в файл article.jsp за исключением того, что блог div будет выглядеть вот так:

Файл registration.jsp.

Файл style.css будет содержать следующий код.

Можете вновь зайти на каждую из страниц и посмотреть что у нас получилось. Выглядеть должно примерно вот так:

На этом третья статья серии закончена.

В следующей статье мы займемся разработкой модели данных и создадим базу данных для нашего проекта, также познакомимся с дескриптором развертывания и jsp сегментами, и, на закуску, мы создадим сервлет-контроллер.

Комментарии

12.02.2017Автор: Дмитрий

Здравствуйте, автору спасибо , почему то только нашел ваш сайт. Материалы будут новые?

17.06.2017Автор: Abay

Планирую изучить Java + Web, но тупое копирование кода вряд ли поможет достичь хороших результатов.

Java Spring Boot

Уроки Java Spring Boot / #1 — Создание веб-сайта на Java

Видеоурок

Полезные ссылки:

Информация про Java Spring Boot

Платформа Java Spring Boot была впервые выпущена в 2004 году. С тех пор платформа постоянно обновляется и пополняется новыми функциями. На сегодняшний день платформа является наиболее продвинутым фреймворком для создания веб сайтов на основе языка Java.

C первых дней выпуска Spring был тепло встречен разработчиками Java, так как это был первый достойный конкурент технологии JavaBeans . JavaBeans, как и Spring, предоставляют набор различных решений для реализации веб проектов.

На основе Spring Boot вы можете создавать веб сайты различных жанров и возможностей. Вы можете создать простой одностаничник или крупный веб проект для какого-либо международного банка.

Spring содержит хорошо описанную документацию, а также множество готовых решений, что можно копировать и использовать в своих проектах.

Технология MVC

Spring реализует шаблон проектирования MVC. MVC расшифровывается как «model-view-controller» или же модель вид контроллер. Данный шаблон позволяет структурировать все файлы внутри проекта и делает чтобы каждый файл отвечал лишь за свою часть работы.

Рассмотрим простой запрос к веб сайту, написанному на Spring Boot. Когда пользователь переходит на какую-либо страницу сайта, то переход отслеживается в контроллере. Контроллер понимает по какому URL адресу перешёл пользователь и далее обращается к модели. Модели могут обратиться к базе данных, получить оттуда какие-то значение, выполнить различные вычисления и далее вернуть эти данные обратно в контроллер. Далее контроллер передает все данные в шаблон, который как раз и показывается пользователю. Шаблон в свою очередь представляет из себя простую HTML страницу с различными текстами, кнопками, картинками и прочим.

Таким образом, приложение делиться на три части, каждая из которых выполняет свою роль в проекте.

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

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

В случае использования сервиса Start Spring.io вы можете выбрать нужные для вас пакеты, после чего нажать на клавишу «Generate» для генерации и скачивания архивного проекта.

Чтобы открыть проект вы можете воспользоваться любой средой разработки, к примеру программой IntelliJ IDEA .

План курса

В ходе курса мы научимся работать с Java Spring Boot. Мы рассмотрим все основные моменты при работе с данным фреймворком. За курс мы создадим множество шаблонов, рассмотрим работу с шаблонизаторами, рассмотрим работу с базой данных, а также создадим небольшой полноценный проект по типу веб-блога.

К концу курса у вас будет достаточно знаний чтобы начать разрабатывать сайты на основе Java Spring.

Перед изучением курса вам необходимо ознакомиться с языками для вёрстки сайта: HTML , CSS и JavaScript . Также вам необходимо обладать навыками работы с языком Java прежде чем изучать платформу Спринг. Все дополнительные курсы можно посмотреть на нашем ресурсе.

Простой сайт на Java

Этой заметкой мы начнем цикл статей посвященных теме веб приложения на языке Java. Здесь Вы узнаете, как написать сайт на Java и как его потом выложить на бесплатный сервис, чтобы Вашим творением могли полюбоваться товарищи.

Для того, чтобы без проблем освоить материал Вам нужны знания Java core — это основы джава; базовые понятия фронтенда HTML, CSS, JS. Если есть проблемы с фронтендом — не волнуйтесь. Выучите постепенно с джавой)).

Для начала, нам нужно установить стандартный набор для Java. В Eclipse нужно выбрать перспективу с Java на Java EE в правом верхнем углу.

Теперь у Вас в приложении появилось больше выбора для создания файлов. Теперь нужно создать новый Maven проект. File -> new -> other… -> maven -> Maven Project

Нажимаем Next и далее нас перебрасывает в окно выбора так называемого архетипа (archetype). Для чего это нужно? Да просто для удобства. Мы используем Maven как инструмент сборки потому, что он очень удобен. Нам не нужно больше искать дополнительные jar библиотеки в Интернете, качать их и подключать. Maven позволяет нам подключать дополнительные библиотеки в специальном файле настроек, который называется pom.xml. Несмотря на его внешнюю запутанность, он очень прост и удобен.

При выборе архетипа нужно выбрать maven-archetype-webapp:

Можно было создать простое java приложение и потом добавить pom.xml, необходимые папки, web.xml; но зачем, если за нас это может сделать выбор архетипа)).

Далее появиться окно ввода Group id, Artifact id. В строку Group id введите com.javamaster, а в строку Artifact id можно ввести например simplewebapp.

Нажимаем Finish и видим, что в панели проектов нам создало новый проект с названием нашего Artifact id. Если Вы откроете проект, то увидите, что программа создала много непонятных папок и несколько непонятных файлов. Но, это все нам пригодиться.

Не успели мы создать приложение, как уже выдает ошибку. Это не серьезная ошибка и приложение все равно запуститься без нее. Но так как я не люблю красные крестики в проекте нужно добавить одну зависимость в наш проект, чтобы ошибка исчезла. Так мы и познакомимся с pom.xml.

Откройте файл pom.xml, перейдите на вкладку кода: (на картинку можно нажать)

Далее в раздел dependencies (зависимости) нужно добавить:

Этим действием мы добавили новую библиотеку к нашему проекту. Ничего не нужно скачивать: добавление нескольких строчек в pom.xml укажет вашей программе автоматически загрузить данные библиотеки. Сохраните файл и проблема с ошибкой проекта должна исчезнуть.

Теперь необходимо рассмотреть как работает веб и в частности, веб приложения.

На рисунке выше представлена схема работы интернет приложений: клиент, то есть Ваш браузер, посылает запрос по определенному адресу и порту; через Интернет запрос доходит до Вашего сервера, на котором находится приложение; обработанный запрос возвращается клиенту в виде ответа; браузер интерпретирует ответ с сервера в понятный для человека вид картинок или текст. Если Вам интересно, что именно передается по сети, советую скачать приложение Fiddler, который поможет Вам увидеть запросы и ответы с Вашего компьютера.

Теперь нужно посмотреть, как обрабатываются запросы самим веб приложением. Мы будем рассматривать пример java приложения, но схема будет работать и для других языков программирования.

Как мы уже поняли, на сервер приходит запрос далее он должен как-то оповестить о запросе наше приложение и наше приложение должно распознать этот запрос, проделать действия и отослать ответ.

Не самая красивая, но достаточно точная схема работы веб программы. Для распознавания запросов в Java есть такой механизм как сервлет (Servlet) — он может определить строку запроса и перенаправить его на jsp — технология, которая позволяет динамически генерировать веб страницы. По сути jsp очень похож на HTML с тем отличием, что в нем можно запускать Java код. Мы этого делать не будем, так как эта технология считается не самой лучшей. Детальнее о jsp будет в следующих статьях.

Сервлет — это класс, который унаследован от HttpServlet. В классе HttpServlet есть несколько методов по обработке запросов. Нас пока будут интересовать doGet и doPost, который обрабатывают соответственно гет и пост запросы. Если не знаете, что это такое — советую загуглить.

В нашем проекте нужно найти папку src/main/java. Если таковой нет, нужно ее создать: правой кнопкой на src -> new -> source folder.

Далее нужно добавить в эту папку новый пакет (Вы же не хотите помещать все классы в одной папке). Я назвал у себя: com.javamaster.controller

Теперь есть две возможность создать сервлет: создать класс и унаследовать его от HttpServlet и потом переопределить нужные нам методы или создать сервлет (на картинке выше можно увидеть, что система сама нам предлагает создать servlet). Разницы нет никакой. Если Вы выберете автоматическое создание, то получите то же самое. Вот мой сервлет, который я назвал HomeServlet (можно выбирать любое название).

Java Spring Boot

Уроки Java Spring Boot / #1 — Создание веб-сайта на Java

Видеоурок

Полезные ссылки:

Информация про Java Spring Boot

Платформа Java Spring Boot была впервые выпущена в 2004 году. С тех пор платформа постоянно обновляется и пополняется новыми функциями. На сегодняшний день платформа является наиболее продвинутым фреймворком для создания веб сайтов на основе языка Java.

C первых дней выпуска Spring был тепло встречен разработчиками Java, так как это был первый достойный конкурент технологии JavaBeans . JavaBeans, как и Spring, предоставляют набор различных решений для реализации веб проектов.

На основе Spring Boot вы можете создавать веб сайты различных жанров и возможностей. Вы можете создать простой одностаничник или крупный веб проект для какого-либо международного банка.

Spring содержит хорошо описанную документацию, а также множество готовых решений, что можно копировать и использовать в своих проектах.

Технология MVC

Spring реализует шаблон проектирования MVC. MVC расшифровывается как «model-view-controller» или же модель вид контроллер. Данный шаблон позволяет структурировать все файлы внутри проекта и делает чтобы каждый файл отвечал лишь за свою часть работы.

Рассмотрим простой запрос к веб сайту, написанному на Spring Boot. Когда пользователь переходит на какую-либо страницу сайта, то переход отслеживается в контроллере. Контроллер понимает по какому URL адресу перешёл пользователь и далее обращается к модели. Модели могут обратиться к базе данных, получить оттуда какие-то значение, выполнить различные вычисления и далее вернуть эти данные обратно в контроллер. Далее контроллер передает все данные в шаблон, который как раз и показывается пользователю. Шаблон в свою очередь представляет из себя простую HTML страницу с различными текстами, кнопками, картинками и прочим.

Таким образом, приложение делиться на три части, каждая из которых выполняет свою роль в проекте.

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

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

В случае использования сервиса Start Spring.io вы можете выбрать нужные для вас пакеты, после чего нажать на клавишу «Generate» для генерации и скачивания архивного проекта.

Чтобы открыть проект вы можете воспользоваться любой средой разработки, к примеру программой IntelliJ IDEA .

План курса

В ходе курса мы научимся работать с Java Spring Boot. Мы рассмотрим все основные моменты при работе с данным фреймворком. За курс мы создадим множество шаблонов, рассмотрим работу с шаблонизаторами, рассмотрим работу с базой данных, а также создадим небольшой полноценный проект по типу веб-блога.

К концу курса у вас будет достаточно знаний чтобы начать разрабатывать сайты на основе Java Spring.

Перед изучением курса вам необходимо ознакомиться с языками для вёрстки сайта: HTML , CSS и JavaScript . Также вам необходимо обладать навыками работы с языком Java прежде чем изучать платформу Спринг. Все дополнительные курсы можно посмотреть на нашем ресурсе.

Читать еще:  Inputstreamreader java пример
Ссылка на основную публикацию
Adblock
detector
×
×