Комментарии:
Здравствуйте. Как можно с вами связаться ? В лс если можно было бы.
ОтветитьЯ всю жизнь жил на laravel и для меня было очень диким то, что база данных перенинициализируется при перезапуске, теряются данные. Это как продуктовых средах вообще работает когда мы выкатываем новую версию приложения? Или там просто проперти другие вгружаются?
ОтветитьС одной стороны, конечно, подход автора "просто повторяй за мной" не очень подходит для обучения. Такой подход в изучении естественных языков хорош только в детстве и только в тот период, когда он легко усваивается. Иностранные же языки хоть и изучаются лучше внутри языковой среды, все равно надо понимать что именно ты говоришь и встраивать этот язык в свою текущую структуру знаний. Поэтому воспринимается тяжело.
С другой стороны, очень классно, что автор показывает кучу возможностей Spring'а и потом можно развивать написанное в демонстрационный проект, углубляясь в какие-то отдельные аспекты фреймворка.
Ну короче хочу излить свою боль: по предыдущему видосу все получилось, но потом чет поломалось в плане при регистрации в базу инфу спринг заносил, а вот логиниться по этой инфе не хотел просто никак, присылал в ответ код 200, но с ошибкой и дальше не пускал. Я не буду говорить сколько времени я потратил на это 💩, в итоге я закастомил UserServiceDetails и все заработало. Но боль не в этом, хотя и в этом тоже... Боль в том, что начинаю я смотреть вот этот видос и вижу как ты начинаешь делать то, на что я угрохал килограмм времени 🥲🥲 НО за то я с ходу понял твои манипуляции, даже тупить не пришлось 😀😀
И да, пришлось проект на 5.х.х перевести, потому что как авторизовывать в security 6 я так и не разобрался)))
Вопрос из 2023, почему мы не падаем в lazyinitexception? Удалось "пройти уровень" только замени LAZY на EAGER в поле roles. кто смог обойтись без этого? Мне не захотелось писать entityGraphs для этого, мб есть еще способы?
ОтветитьWebSecurityConfigurerAdapter depricated. Будет разбор новой реализации конфига security?
ОтветитьНичего не работает. Всё устарело. Ты старый маразматичный кент. Если ничего не знаешь, не нужно делать гайды. У меня есть катана из лего. Всех неравнодушных прошу поставить лайк. Из комментариев узнал, что ты Андрей, а это плохо. Всем спасибо за внимание.
ОтветитьЛайк, если зашел чтоб посмотреть как в Хибернейте устанавливать связи между таблицами, а в итоге 10 минут смотрел то, что никак не относится к этой теме
ОтветитьПравильно ли я понимаю, что если есть две сущности со связью "Один ко многим", например Сотрудник и ТелефоныСотрудника. То получать на сервере такие данные нужно в DTO одним вызовом, но двумя отдельными json? И записывать поочередно: сначала сотрудника, получить ID от сохраненного сотрудника, и потом записываем телефоны используя этот ID для связи.
ОтветитьА что делать, если AuthenticationPrincipal всегда null даёт? Попробовал на stackoverlow найти, но там на этот вопрос не ответили, а просто предложили делать по-другому, ну или я плохо искал
ОтветитьПривет из 2022 всем, кто использует thymeleaf , в классе WebSecurityConfig необходимо в конце метода configure добавить ".and().csrf().disable();", иначе при отправке post запросов возникнет 403. Если был полезен, ставьте лукас, буду рад)))
ОтветитьЗдравствуйте, в БД записывается только id пользователя, колонка автоматически генерируется в bigint, и в шаблон приходит только цифра(я использую thymeleaf), почему у вас получается, а у меня нет? Это из-за mustache?
ОтветитьСпасибо большое вам за ваш труд! Я начал знакомство со спрингом через серию ваших видео, и это мне очень помогло, чтобы почувствовать что можно делать с помощью данной технологии. Но чтобы разобраться подробно в происходящем мне потребовалось время и другие видео уроки и чтение документации. Хотелось бы чтобы вы подробнее разбирали что происходит при создании тех или иных полей, в частности показывали эти поля в базе данных и объясняли например, что когда вы делаете аннотацию @Entity то она нужна для создания таблице в базе данных, и объясняли что это технология реализована с помощью Hibernate. Чтобы у новичков было понимание что происходит и зачем это нужно. Можно это сделать в отдельном видео, например для тех кто хочет более подробно разобраться что происходит. И дать ссылку на это видео. Потому как мне например совсем было не очевидно, что с помощью аннотаций создается объект в базе данных, и не понятно как создаются эти поля и как спринг взаимодействует с этим объектом. Возможно вы это объясняли, но я не уловил, поправьте меня если что.
ОтветитьХорошее занятие. Если можно поясните, метод Класса UserService userRepo.findByUsername(username) вызывается неявно? и на каком этапе именно?
ОтветитьДорогие друзья, не забудьте в файле main.mustache заменить форму
<form method="post" action="/">
на <form method="post">
Час копался в коде, сравнивая то с видео, то с гитом автора, искренне не понимая, почему в самом конце у меня после добавления сообщения на страницу вылетает непонятная ошибка без описания, что у меня какие-то проблемы с POST.
Уже отчаявшись и сравняв форматирование моего кода с кодом автора, понял, что различие только в этом, изменил и - ВУАЛЯ- всё взлетело-полетело не шипя. Жёстко, конечно
Автор спешит видимо, чтобы сделать дофига коротких видеороликов для просмотров, а на кой эти видео смотреть, если толком ни чего не рассказываешь, а в торопях гонишься не знай зачем. Да сделать все в точности так же как у него в видео можно, а толку ноль, ибо для чего было сделано то, что сделано не рассказано, додумывай сам называется. Так проше по офф докам на английском изучить, а не вот это
Ответитьблять, 4 раза этот код с гиста запускаешь под разными роликками и пизда ошибка
ОтветитьЭто меняем на это потому-что так лучше, а это у нас деприкейтед потому-что им никто не пользуется, это просто копируем я потом объясню - в итоге в голове каша покруче той, что я ел на завтрак, а если добавить к этому скорость того, как все это приполносится(я как чувствую, что сейчас переключится вкладака, мой курсор со скоростью света летит на второй экран, чтоб нажать паузу - не всегда успеваю), то можно еще и руки подкачать мышкой)) а в целом формат крутой, не то, что большинство уроков на ютубе, где какой-то непонятный чел говорит через рацию пьяным и противным голосом, а еще отснято хорошо - ничего лишнего, только идея. Спасибо за труд
ОтветитьЯ не понимаю почему столько лайков, автор ничего в своих уроках не объясняет, просил особо не вникать, повторял всё один в один, теперь проект запускается с ошибкой, не знаю как идти дальше =)
ОтветитьНовые видео ждем от вас
ОтветитьСпасибо
ОтветитьЯ же правильно понимаю, что spring за нас помещает пользователя в куки?
ОтветитьНе могу добавить поле private User author; Ошибка: basic attribute type should not be persistence entity, а у автора без ошибок добавляется. Что не так?
Ответитьпроще было пересобрать бд и сделать как положенно, чем добавлять лишнюю проверку на автора
ОтветитьВсе отлично рассказано но очень короткая инфа. Глаза не успевают за мыслями а мысли за мышкой Андрея. ). Контент очень годный но быстрый и краткий в объяснениях.
Ответитьспасибо автору за труд!
ОтветитьАвторизация работает, регистрация работает, но теперь слетает сохранение контента в базу данных. Убираю все, что связано с авторизацией - снова работает. Навскидку, в чем может быть проблема? Выдает ошибку 403
ОтветитьКто-нибудь, помогите, после данного урока перестала работать авторизация
ОтветитьВот только интересно, почему нельзя было сразу, в предыдущем уроке реализовать авторизацию через UserDetailService? Я всю голову сломал, пока реализовывал предыдущий урок, зная, что никто так не делает, и сращивая несколько источников в один. А тут, бац - и реализация через UserDetailService. Двойная и непонятная работа получается в связке с предыдущим уроком.
ОтветитьСпасибо за ролик, возник только один вопрос. Как удалять сообщения? Когда вызываю deleteById, спринг проставляет все поля null за исключение user_id и всё, много перепробовал и ничего не помогает :(
ОтветитьНихера не понял, но очень интересено
ОтветитьЕсли это видео для новичков, то тут конечно многовато пропущено(
ОтветитьСпасибо большое! Топ контент!
ОтветитьОгромное спасибо вам, вы единственный на ютубе у которого понятные уроки по спрингу)
ОтветитьЕще один коммент от человека, который не оставляет комменты :) Крутой подход, спасибо автору. Следовал видео и получилось сделать крутой проект, который любопытно "докручивать" самому. Советы автора помогают не утонуть в деталях и не потерять мотивацию. Спасибо ребятам в комментах - если вы напоролись на ошибку, решения находил здесь же. Успехов!
ОтветитьПривет! Как в idea сделать, чтобы открытые файлы отображались в 2 строки?
ОтветитьПодскажите, пожалуйста, после добавления Секьюрити при добавлении нового Message или при нажатии на поиск по фильтру, начала выпадать 403я ошибка. Где провтык может быть? Спсибо
ОтветитьТут очень много можно было рассказать для понимания происходящего.
Я все повторил, оно работает, но почему и как понятно не очень. А самое главное, что структура стала менее понятна.
super
ОтветитьПочему заменили на authorName, откуда он берется?
ОтветитьЗверніть увагу!!! В кого не логіниться, дивіться в стектрейс, тип загрузки ролей був поміняний на EAGER!!!! В відео тої зміни просто не показали, в може я банально завтикав
Ответитьа вот как сделать поиск не только по тегу а еще и по сообщению?
ОтветитьОчень круто! Спасибо!!!
ОтветитьКод аналогичен тому, что приведен в этом уроке.
В методе контроллера параметр Authentication auth - содержит данные о текущем пользователе,
@AuthenticationPrincipal User user = null и SecurityContextHolder.getContext().getAuthentication() = null.
В чем может быть причина?
Андрюха после предыд. урока, лайк сразу до просмотра видоса. т.к. щас прохожу курс по жабе для веба и как раз дошли до бута. Все доступно просто и локанично! Просто пушка ракета!
З.Ы. Четко что ты выводиш комбо клавиш на видосах!
Спасибо за качественный контент!
ОтветитьДобрый день! Спасибо за урок! Не совсем понятно <strong>{{authorName}}</strong> main.mustache - где мы взяли authorName ? Спасибо!
ОтветитьСпасибо за туториал! Скажите пожалуйста, как в таблице message сделать так, чтобы заполнялось поле author ? Сейчас заполняется только user_id.
Ответить