Разработка MVC приложения на Java за два часа | Компьютерная школа Hillel
Концепция MVC (Model-View-Controller) в последнее время очень часто упоминается в мире веб-программирования. Каждый, кто хоть как-то связан с разработкой веб-приложений, так или иначе сталкивался с данной аббревиатурой.
Наталья Кравченко, Senior Java Software Engineer в Edunav показывает, как создать полноценный RESTful веб-сервис. Для его создания использовались такие технологии и фреймворки: Spring MVC, Spring DI, JPA, jQuery-интеграция(ui) - Angular or Backbone.
Компьютерная Школа Hillel
Git: github.com/tronov/usersystem
Ссылка на курс: online.ithillel.ua/courses/ja...
site: ithillel.ua
fb: / hillel.it.school
vk: hillel_itschool_kiev
in: / hillel_itschool
tw: / hillel_itschool
ln: / hillel_itschool
yt: / hillelitschool
Пікірлер: 303
Девушка отлично объясняет. Внешне напомнила мне пацана из второго терминатора)
@vasya8441
6 жыл бұрын
ахахах
@iorgankrat1118
6 жыл бұрын
заорал в голос)
@tzofeolam
5 жыл бұрын
Пишет SkyNet ;-)
@askhat1654
5 жыл бұрын
@@user-jf5bv9sc6g Не в тему
@igorgogy9119
4 жыл бұрын
@@iorgankrat1118 заорал? зачем и что ты заорал?
Блин, сам стиль подкупает :). Можно тысячу раз все это знать, но способность рассказать - особый талант. Уходить не хочется, умница!
Очень доступно объясняет. Надеюсь будут ещё лекции от этого лектора.
Наталья, хочу от всей души Вас поблагодарить за эту лекцию в целом и манеру преподнесения материала в частности. Разложили все по полочкам, все объяснили. Для начинающих подобный подход крайне понятен и легок в усвоении. У Вас талант быть преподавателем) Записывайте больше видео или открывайте свой канал с обучением)
Преподавать - это талант. Спасибо Наталье, желаю успехов.
Умничка! Обьясняет прямо в мозг, маркером выжигает новые нейронные связи )) Хилель! Берегите её!!!
Наталья очень талантлива как преподаватель, мало кто так может доступно объяснить. Спасибо, хорошее видео!
Мощный набор информации для тех кто начинает знакомство с MVC. Я думаю многие в зале тоже офигели. Для меня 2 часа видео перетекло в 4 часа работы над видео включая осознание, заметки и некоторое повторение действий.
@aammssaamm
5 жыл бұрын
Даже в 2017-м уже никто mvc не делал, тем более сейчас. Технология нулевых.
@user-ri7qv9no5z
4 жыл бұрын
@@aammssaamm а что сейчас делают?
@Qwerty-ej4nc
4 жыл бұрын
Володимир Ковальчук сейчас рест сервисы пилят и микросервисы
Флоу к которому стремится это приложение совпдает с флоу который я ищу. Флоу этой лекции является очень мощным флоу!
@florafix7951
5 жыл бұрын
Spice must flow....
@maxrus6173
3 жыл бұрын
Ты написал хороший флоу!
ХОТИМ БОЛЬШЕ УРОКОВ ОТ ЭТОЙ ДЕВАХИ! Информацию просто божественно подает, шедевр.
Таша,вы супер!)Как подаёте информацию,ваш опыт,ваши знания,таких преподавателей и талантов на миллион)Сразу видно трудягу)Моё уважение)
Умничка я вот смотрю в 2019 и это актуально, объясняет очень доступно и хорошо, спасибо. Задача учителя выложить не только сухую инфу но донести ее так что бы даже ребенок понял и таких учителей мало.
мне никто из действующих разработчиков которым я заплатила за консультацию не смог донести эту тему я уже было начала думать что все делают но не понимают на самом деле что делают и что сама буду выяснять через англоязычные ресурсы но как не странно наткнулась на это видео. Очень рада что есть такие профи)
@HillelITSchool
2 жыл бұрын
Раді, що буди корисні 😉
Четкое, развернутое, последовательное и логичное изложение темы. Спасибо огромное! )
@HillelITSchool
2 жыл бұрын
Спасибо, что смотрите!
шикарная лекция, всё очень ёмко и понятно
Очень энергичная, самоуверенная девушка! Редко попадаются такие клёвые учителя.
Все доходчиво! Пришла ясность и понимание что и зачем!
Лучшее, что нашел на ютуб!!! Неделю мучился с настройкой web-приложения на Java, и только в этой лекции есть все, что нужно для понимания процесса разработки + девушка просто прекрасно объясняет!!!
Спасибо за лекцию! Всё доходчиво рассказано
потрясающий лектор! с удовольствем следил бы за ее блогом.
Очень хорошо объясняют. У девушки талант определенно. Умница просто!
уверенный учитель, побольше бы таких
"Этот запрос по правильному называется request" - гениально просто.
@user-gj2tr1nc9v
4 жыл бұрын
ахахахахахах
@lisafox9026
4 жыл бұрын
да ты просто гений, дай сылку на твое видео?
@user-gj2tr1nc9v
4 жыл бұрын
@@lisafox9026 эта ссылка по правильному называется link
крутая чувиха, препод на вес золота.
Очень круто. наконец-то понял, что происходит!
Очень хорошая лекция, спасибо!
Бесподобно. Идеальная подача
Классное видео. Очень информативное. Спасибо!
Объясняешь как Богиня :) Спасибо большое!
Я бы не смог на такой лекции находиться, когда тебе всё объясняет волшебный эльф ))
Здорово было бы начинать без использования Spring'a, а показать азы через переопределение нужных методов и использование forward и redirect. А вот уже затем отдельным видео показать как это можно трансформировать при использовании Spring'a. Тем не менее, один из лучших вводных курсов в рунете, спасибо большое!
я не знаю, почему мне это выдал гугл в раздаче, но если есть еще от этого автора - я послушаю!
@HillelITSchool
2 жыл бұрын
Вот еще видео Натальи kzread.info/dash/bejne/n3V7wdl9kaXYeM4.html&ab_channel=HillelITSchool и kzread.info/dash/bejne/na6dqLylfNTNc9o.html&ab_channel=HillelITSchool, а в плейлисте kzread.info/head/PLuEo4W0EBxtVUkwcWcsTe0d9fbH34Yaq0 собраны все записи мастер-классов по Java.
Она крутая, и главное что понятно и она очень хорошо знает данную предметную область!
Золотая голова.Золотое 💓.Огромнейшее человеческое СПАСИБО! Если человеку АРХИ важно, чтобы ученик понял, то он Учитель по призванию! "Вы точно, поняли? Олег,ты понял?" Когда находишь, что то настоящее, хочется тоже делать что то настоящее. Так же вкладывать Душу. Спасибо за Ваш зажигающий Свет!
Это великолепно. Было бы здорово если она выпустила свой курс по Java
Наконец-то новое видео)
Лекция огонь ! Лектор огонь !
Теория понятна, спасибо за обьяснение
Прекрасная лекция. Большое спасибо!
@HillelITSchool
2 ай бұрын
дякую, що дивитесь) Будь ласка!)
Отлично объясняет, можно ли ждать продолжение?
Добрый день. Спасибо большое за лекцию! Подскажите, пож-та, как запустить этот проект со встроенным плагином Jetty на другой, например, машине без IDE? Т.е. при наличии лишь собранного war-файла.
схема огонь 31:55 заебись теперь всё понятно.
@faizulla5838
3 жыл бұрын
да, я только сейчас догнал.... после десятка уроков
Контейнер - это дом для веб-приложения ^_^ Сервлет - это сетка ^_^ А красные туфли - это драйвера :3
Отличная лекция))
Отлично все объясняет
отлично объясняет
мне тоже очень понравилось видео, спасибо
Уважаемый Видеомонтажер! сделай видеозахват рабочего стола и вставляй кусками в готовое видео в тот момент когда девушка печатает ибо нифига не видно(
@HillelITSchool
6 жыл бұрын
Добрый день. Благодарим за дельное замечание. Запись экрана этого ивента была повреждена, и мы не смогли ее восстановить. На всех последующих наших мероприятиях запись экрана дублируется. Если у Вас будут предложения по улучшению предоставляемого нами контента, то мы всегда готовы к предложениям ;) Хорошего Вам дня!
@user-mm3ly5yk3o
4 жыл бұрын
Компьютерная школа Hillel таки отмазались ))))
@kotbegemot9177
3 жыл бұрын
а ссылка на гитхаб в описании к видео зачем?там весь код,мацай смотри копируй)
Джон Коннор учит меня спрингу на ютубе. Вот это поворот :)
Вопрос в продолжение проекта: а если нужен поиск и параметры поиска состоят из нескольких аргументов, то как поступить? Например, вывести User по age, name, gender, lastName и nationality. Нужно создать в dao метод loadByList и передать туда list или set типа User? Или создать несколько методов типа loadByName, loadByAge и т.д., а потом их последовательно вызывать? или тупо передавать аргументы через запятую: loadByArgs(int age, String name, int gender, String lastName.......) ? Подскажите, пожалуйста
Отличное видео! Спасибо! Хоть и пришлось посмотреть дважды, для полного понимания ) А можно глянуть продолжение? Как будет развиваться работа с dao в конкретном случае?
запрос .../check не выполняется, есть подозрение, что не подгружаются библиотеки tags/. Или в другом проблема?
Nice shot🖒🖒🖒
Спасибо!
Класс!
Хорошая лекция
@HillelITSchool
7 жыл бұрын
Спасибо!
Дико извиняюсь, простите за чайниковость - а почему "пользователь винды - это сразу хихи"? Что не так с виндой? Или что не так с чайниками, вроде меня с 10-й виндой?
Благодарю!!!
Супер
Наталья хорошо объясняла, пока не начала спешить(там уже все смешалось и местами не понятно), но все равно вышел отличный семинар! Запись видео (написание кода) лучше смонтировать с экрана ноутбука. Ни черта не видно на экране :( В общем *СПАСИБО* за то, что делитесь знаниями!
Если вы не получаете результат как в примере. То необходимо установить зависимость: com.fasterxml.jackson.core jackson-databind 2.5.0
@YWNWA-ZXC
5 жыл бұрын
не загружает
1:48:13 у меня пишет org.springframework.http.converter.HttpMessageNotWritableException: No converter found for return value of type: class java.util.Arrays$ArrayList . И что с этим делать?
Посмотрел ваш урок, узнал что такое embedded server(Jetty plugin). Собственно вопрос, зачем mvn package если Jetty нужны только откомпилированные классы?
Ребят, ждем вас в Москве)
супер!
Какая красивая и умная девочка. Я восхищен.
Добрый день! Очень хорошая лекция, но на 1-41 при написании спринг-конфига не видит JSP файлы почему-то, все делаю идентично. Непонятно, также, почему пути файлов до ВЕБ-ИНФ отрезаны, то есть, Веб-апп рассматривается как корень. Подскажите, где посмотреть?
@alexkolushev514
6 жыл бұрын
нашел сам! В Project Settings ->Facets надо прописать путь к webapp, т.к. по умолчанию она ищет web
Спасибо
четко!!!!!!!!!
Кайфую с нее
Круто
А на этапе проверки пользователя на сервере случайно не верификация?
Челендж - присидаем каждый раз, когда тренер говорит "за" что то XD привет из 2020, все еще актуальный курс:)
@aiverneverminder
4 жыл бұрын
и пить каждый раз, когда код на проекторе, а на видео крупным планом замечательный лектор:) Лекция сиииильно развивает воображение
Наташа прям супер, умничка ! Если вы читаете этот комментарий, то скажите пожалуйста, какой фирмы у вас доска на которой вы пишите, спасибо ! ?
Можно пояснить, что вы делали здесь kzread.info/dash/bejne/jG2Y2LyyddLMcco.html , или как зайти в эти папки?
Красава)
Как к вам на лекцию попасть?
хорошая лекция! у меня вопрос: вот где прописываем "/list" метод возврашяет List, вот это у меня не работате, а если возвращяю String (конечно же return String.valueOf(userService.getAllUsers();)) вот тогда работатет. Вот почему у меня не работает это часть?
@tooconf776
6 жыл бұрын
это до формы, пока не изменили его на "/validate"
У меня не находит путь к org.springframework.web.servlet.DispatcherServlet 1:15:09
Девушка очень хорошо обьясняет, умница, правда оператор мало снимал код а просто снимал девушку, настройки не видно..
@ymnik100
7 жыл бұрын
Оператора можно понять...
@lisafox9026
7 жыл бұрын
в смысле оператор не в теме?? не совсем программист? ))) Не понимал что там происходит и снимал то что понятно ))))))))))))))
@user-ek7jk6yh5z
7 жыл бұрын
он к тому, что оператору девушка то понравилась похоже, вот и залип на неё)
@rimmalen4581
7 жыл бұрын
да я уже поняла... что мужчина оператор... А девушка просто меня поразила своим талантом объяснять!!!
@user-ek7jk6yh5z
7 жыл бұрын
согласен на 100%. начал смотреть видео почти не представляя как всё это работает) очень помогло
Курсы старика попова от 2008 года мне сильно помогли. Там все было обьяснено но без этих умных слов
i loove it
json или xml в реквест? а обычные get/post запрсы уже не в моде?
крутой лектор, очень похоже на Борисова, только все понятно )
почему Repository не implement CrudRepository?
Bravo
У Maven'а есть готовые _архитипы_ web-приложения (нужная структура, необходимые конфигурационные файлы со всеми нужными зависимостями и даже файлы-заглушки). Зачем изобретать велосипед?..
@birds_channel
6 жыл бұрын
чтобы не тупо работать с черным ящиком, а понимать, что там внутри. вообще зря даже идею с их плагинами взяли в видео, нужно было эклипс и все ручками с объяснениями, но понятно, на это бы ушло куча времени.
Ничего не видно на доске - какие там http запросы на 1:46 ? Было бы ещё круто все-таки к бд подключить. И чуть лучше объяснить про бины. А так же я не очень понял - где мы явно указываем компилятору чтобы он смотрел в XML файл ? Или это какие-то зарезервированные названия xml ???
@dedushkamao
6 жыл бұрын
Какой XML-файл? web.xml или spring-config.xml?
thnx!
А почему в IJ а не в Эклипсе?
Слава Специалисту !!!
Девушка молодец
35:17 .. 40:00 - это всё-таки описание Dependency Inversion (DI), а не Inversion of Control (IoC).
Всё супер спасибо,но оператору нужно снимать больше кода - когда она его обьяснет
А где сущности Entity, Repository? Также не сказано о пулах, например массивы, зачем каждый раз создавать новые массивы, когда можно переиспользовать массивы из пула.
@user-zl5fj4vl1t
3 жыл бұрын
В пизде. Вам в видео было сказано, что ДБ использовать не будут.
@johnaran
3 жыл бұрын
@@user-zl5fj4vl1t вы почитайте, что я написал, где вы у меня там видели в комменте про ДБ
100/100
Не очень понял: как в реквесте и респонзе туда-сюда летает xml и json? Это же протокол http: в реквесте адрес и порт хоста, версия , тип запроса , юзер агент. А в ответе тоже набор данных, html код + способ интерпретирования.
@dedushkamao
6 жыл бұрын
Туда-сюда не летает, она ошибочно представляет себе картину запросов с клиента на сервак в ее простом приложении без AJAX. Но в респонсе один раз JSON у нее действительно отправляется: см. UserController.getAllUsers(). Хотя JSON и не нужен ее приложению (кому вообще надо видеть текст JSON'а на вебстраничке?), но для получения представления, как организовать вывод JSON в респонс, это было полезно. Респонс может содержать не только html. Он может содержать что угодно, хоть двоичные данные.
Зачем мавен, градл лучше. Вначале следовало бы сказать о контейнере приложений - песочнице и о Java приложениях внутри контейнера. Потом установить сервер Tomcat, GlassFish. Соединить контейнер с сервером, изменить настройки сервера по соединению с сервером. Чтобы сервер по запросу дернул два-три разных приложения в контейнере. В архитектуре MVC, следовало бы сказать что можно соединить модель и вид, а можно не соединять. Модель это entity - сущность, а не то что бегает. Некоторые соединяют модель и дао в одно. Сказать о композиции и монолите.
@DoctorKrolic
3 жыл бұрын
Maven и gradle - просто 2 различные реализации сборщика проекта, тут нет понятий "лучше" и "хуже". С моделью согласен - это сущность в бд. Ну, и на современном этапе все эти заморочки с поднятием Tomcat'а и загрузкой war-ников устарели, сейчас есть spring boot.
эмм ну вообще то в MVC request идет так: Client - request - Dispatcher Servlet - model - Controller - model - ViewPort (JSP etc.) - Client. А не так как показали что реквест сразу летит в контроллер
Ум это сексуально