Получается, что если конструктор содержит аргументы, то сеттеры бесполезны? Ведь получается мы обращаемся к переменным конструктора напрямую в обход сеттера, когда создаем новый объект? А если сделать конструктор без параметров, то зачем он вообще нужен? Получается 2 варианта или мы удобно одной стройкой создаем объект с указанием аргументов в обход сеттера, либо мы значения каждой переменной назначаем отдельными строками(тогда получается конструктор особо и не нужен). Вот как одновременно сделать так, чтобы можно было создавать объекты с проверкой заносимых значений через сеттер и чтобы при этом объект создавался в одну строку?
Это просто пздц...одно изучения языка вообще ничего не даёт..по сути это лишь вершина айсберга...все курсы и тд ... трёп! Когда дело касается реальной практики - то в итоге нужно хз сколько знать и разбираться! Утилиты и прочая непонятная дичь... приходит разочарование...
Вопрос для самых одарённых: Как будет выглядеть проверка на ввод пустого значения с консоли для переменных значения типа int? 2 часа думаю над этой казалось бы маленькой задачей.
представляю примерно интервью с автором: скажите: как вы делаете только высшак; отвтет - я просто не делаю порожняк)) скажите: откуда вам известно что происходит за кулисами спринга; ответ - я просто хожу в закулисья через территорию сша номер 51))
первичный конструктор по-моему неудобная фича если нужно создать класс, в котором больше 1-2х переменных - это их придется все в 1 строчку типизировать - в таком случае код становится нечитаемым.
хорошо рассказано для тех кто хорошо понимает инжекцию не в контексте спринга а что ето на самом деле в самом простом случае без движка. я авторам с таким лицом ставлю луйк уже на на входе - сразу ясно что чел ясный
Проще говоря: оператор continue опускает основное условие и показывает все остальные варианты. В данном случае условие - при делении на 2 остатка не будет. Оно будет опущено. "Остальные варианты" - это "это нечётное число".
Все исключения наследуются от классы Throwable это важно ! От класса Exception наследуются исключения которые можно обработать, опять важно учесть что класс RuntimeException тоже наследуется от класса Exception но этот класс не обрабатывается или же обрабатывается только по желанию. Так же от класса Throwable наследуется класс Error это класс как (ошибка) и эти ошибки возникают на уровне JVM и они не обрабатываются так же! Так же сам класс Throwable наследуется от класса Object так как исключения это тоже объекты)))
Мое решение проблемы с актуальными зависимостями 1)открываем Project Structure 2)заходим во вкладку Artifacts(в появившемся окне у меня были две строки 1- war 2- war exploded) 3)удаляем обе 4)нажимаем плюс, выбираем Web Application:Exploded ->From modules и выбираем свой 5)Apply После этого начала работать валидация
Спасибо за полезную инфу! У кого была ошибка 404(сам помучался как и многие) Изменил лишь версию java на java SDK 19 и всё заработало. Опишу детально, потому что тонкостей капец, новичку легко ошибиться 1) распаковал архив с уроком и чуть переименовал(чтоб не путаться) Lesson15.SpringMVCApp1SSS 2) загрузил этот урок в IDEA(open project... и т.д.) 3) скачал архив java SDK 19 (не инсталл а именно архив) 3а) скачал архив Томкат 9.0.89 4) установил в IDEA (File-->Project Structure-->SDK == 19) 5) restart IDEa (загрузка нашего "Lesson15.SpringMVCApp1SSS" ) 6) в IDEa устанавливаю ТОМКАТ 9.0.89 всё как на видео, но на всяк случ опишу: IDEA (Run-->Edit configurations...) потом жмём символ + Tomcat Server--> Local указал путь к распакованному Томкату 9.0.89 Fix --> spring-mvc-app1:war exploded и в поле ""Application context"" выбрал пустую строку далее ((Apply--> ok)) 7) IDEa( Run-->Run-->Tomcat 9.0.89) открывается браузер по адресу localhost:8080/ и конечно там 404 НО нам нужно открыть в браузере адр строку, прописанную в контроллере а именно localhost:8080/hello-world и всё путём И ещё важный момент, когда проект создаётся с ноля, то обратите внимание на файл POM.XML... там много зависимостей кроме кор, бинов... ещё плагины подключаются, в общем это тоже немаловажно, но опять же я ничего не менял, кроме версии Java 19
Яндекс обычно требует задачи решать без готовых функций т.е через логику и написание функций самому с помощью циклов и прочей, если ты решишь через готовый toHashSet они даже не смотрят) накидал запару минут может не очень красиво но понятно и просто for (item in a){ if ( b.contains(item)){ c.add(item) b.remove(item) } } первая задача
И еще если у кого ругается на index.jsp <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency>
Валидация форм обычно делается на фронтэнде, чтобы не нагружать сервер, разве нет? Да и к тому же в HTML 5 у инпута есть type="email", что гораздо упрощает проверку и сразу же выводит ошибку рядом с инпутом.
Короче - 404 - слеш не там и т.д. это все мелочи - основная проблема это что javax не дружит с jakarta т.е. надо юзать 8-9 tomcat - про конфликт томкат тут очень помогло! ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-D7s8LO1eFCk.html
Я вот хз че за хрень, но у меня уже глаз дергается. С горем пополам запускаю каждый проект, просто методом тыка, то 404 то 500 ошибка, потом начинает работать. Начинаю делать следующий, доделываю и опять таже хрень, мля где че как?? Я хз, конфигурационные файлы ВООБЩЕ не трогал, как такое может быть?