Евгений Борисов - Spring-потрошитель, часть 1

Ғылым және технология

Ближайшая конференция - Joker 2024, 9 октября (Online), 15-16 октября, Санкт-Петербург
- -
. . . Евгений Борисов - Spring-потрошитель, часть 1
Встреча JUG.ru
Санкт-Петербург, 26.06.2014
Казалось бы, зачем знать, как работают внутренности спринга для того, чтобы им пользоваться? Работает? Ну и ладно.
Но как всегда, для эффективной работы с фреймворком, неплохо бы понимать, что находится под капотом. Ведь только понимая его внутреннее устройство, вы сможете пользоваться Спрингом на полную мощность, адаптировать его под нужды вашего проекта, добиться максимальной производительности и решить любую проблему самостоятельно, не обращаясь в Spring-сервис-центр.
Итак, несколько вопросов про Spring, которые мы рассмотрим в рамках данного доклада (с примерами к каждому):
Насколько Spring влияет на производительность вашей программы?
Что входит в жизненный цикл спринга?
Как устроен ApplicationContext?
«Вот это на Spring сделать нельзя» - а может можно?

Пікірлер: 200

  • @tatyanayurchenko6840
    @tatyanayurchenko6840 Жыл бұрын

    8 лет прошло, а до сих пор актуальный и информативный доклад.

  • @user-nv9dr7nt3d

    @user-nv9dr7nt3d

    Жыл бұрын

    Я бы даже сказал, 8 лет прошло, а более качественного материала на эту тему я на просторах сети не нашел

  • @Daniel-mo1iy

    @Daniel-mo1iy

    11 ай бұрын

    @@user-nv9dr7nt3d как новичок сейчас смотрю, пока мало что понятно. но, думаю, дело времени.

  • @user-nv9dr7nt3d

    @user-nv9dr7nt3d

    11 ай бұрын

    @@Daniel-mo1iy сюда стоит заходит когда уже прошел какой-то приличный курс по спрингу, тогда прям будет хорошо

  • @serged5689

    @serged5689

    11 ай бұрын

    8 лет прошло, а у нас эти фишки только начали использовать на проекте под маркой "а вот оказывается как ещё можно делать в спринге".

  • @mark_tatyschev

    @mark_tatyschev

    7 ай бұрын

    продлеваем: 9 лет прошло, а до сих пор актуальный и информативный доклад.

  • @java_couch
    @java_couch4 ай бұрын

    30 лет прошло, а доклад все еще актуальный.

  • @izmailovlz
    @izmailovlz3 жыл бұрын

    Смотрю 5й раз, с каждым разом понимаю чуть больше)

  • @theAntoshka

    @theAntoshka

    2 жыл бұрын

    это как библию читать))

  • @edwarduisky
    @edwarduisky6 жыл бұрын

    познавательно и доходчиво, 10 постбинпроцессоров из 10

  • @ishunin97

    @ishunin97

    6 жыл бұрын

    ведьмак от мира фреймворков

  • @al1as643

    @al1as643

    4 жыл бұрын

    Бинпостпроцессоров =))

  • @dspursuer

    @dspursuer

    Жыл бұрын

    скорее 5/5, по количеству выводимых рандомом сообщений

  • @FreakySound2
    @FreakySound27 ай бұрын

    За время разработки цитатника в этом видео, я выделил топ цитат от Евгения: 1) try-catch всегда некрасиво, и плохо сказывается на нервной системе 2) -Вы используете тесты? -Да, мы пишем тесты -А как вы пишите тесты? -Ну как? - main создаем, прямо в том же классе, который надо протестировать - очень удобно. Прям там создаем объект из этого класса, запускаем, смотрим - если 17 - то нормально 3) Лучше знать, что есть проблема (null), чем жить с каким-то нулем 4) Знаете почему важно не делать грамотические ошибки? - стыдно перед заграничными партнерами 5) ...сatch пустой не буду оставлять - грех

  • @Boyarsskiy
    @Boyarsskiy3 жыл бұрын

    Плотность информации на одну минуту видео просто зашкаливает. Всё по делу без воды. Каждое предложение - очень ценная информация. Если по этим двум частям сделать книгу, то выйдет мануал страниц на 300, не меньше.

  • @Twitteron_
    @Twitteron_Ай бұрын

    Лучшие лекции по spring даже несмотря на дату публикации.

  • @SkyAntins
    @SkyAntins4 жыл бұрын

    Все советуют это видео новичкам в Спринге, так вот не слушайте их. Лекция явно для тех, кто уже в теме, так что если вы ничего не поняли - то нормально. Лично я вернулся к этой лекции спустя полгода работы на Спринге

  • @user-cc2hq4jl4m

    @user-cc2hq4jl4m

    2 жыл бұрын

    вернулся спустя 3 года) полностью согласен, гораздо полезнее тем кто уже в теме

  • @spirridd

    @spirridd

    2 жыл бұрын

    Необязательно. Я смотрел эту лекцию до того, как написал первые строчки на спринге.

  • @NickRuster

    @NickRuster

    2 жыл бұрын

    @@spirridd я смотрю и нихрена не понимаю

  • @dimchik-kenshi

    @dimchik-kenshi

    2 жыл бұрын

    Посоветуете что-то новичкам?)

  • @user-fj5dx1gf8u

    @user-fj5dx1gf8u

    Жыл бұрын

    @@dimchik-kenshi думаю вам уже неактуально, но может кому-то из прочитавших позже будет полезно У Алишева есть курс по Спрингу, часть которого лежит на ютубе в открытом доступе Канал alishev, там в целом много полезного по Java

  • @delalen8012
    @delalen80124 жыл бұрын

    Волшебная лекция) Спасибо)))

  • @Denis-sds
    @Denis-sds Жыл бұрын

    Если поставить скорость видео на х0.5, то можно услышать как говорит Евгений после употребления Бенчмарка или Синглтона

  • @Queee7
    @Queee73 жыл бұрын

    Евгений, спасибо. Очень доступно.

  • @karloslucas8768
    @karloslucas87684 жыл бұрын

    Отличное видео, понятным языком) Спасибо

  • @vladimirgaydamakin7155
    @vladimirgaydamakin71554 ай бұрын

    шикарное видео, раз в годик пересматриваю с удовольствием)

  • @user-ku6lc8zu4b
    @user-ku6lc8zu4b2 жыл бұрын

    Спасибо большое за лекцию! И отдельное спасибо за чёткую наложенную картинку с кодом!

  • @TheVendeetta
    @TheVendeetta Жыл бұрын

    Просто огонь! Спасибо.

  • @timon59388
    @timon593882 жыл бұрын

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

  • @alekseypradedov8885
    @alekseypradedov8885 Жыл бұрын

    Шикарно!

  • @hedgehog.in.nirvana
    @hedgehog.in.nirvana Жыл бұрын

    Да, человек умеет рассказывать. Спасибо большое.)

  • @user-qb3ck7cq3k
    @user-qb3ck7cq3k Жыл бұрын

    Большое спасибо!

  • @ricardomilos857
    @ricardomilos85711 ай бұрын

    До сих пор лучшее видео о спринге на ютубе

  • @user-om9sc1tl8e
    @user-om9sc1tl8e Жыл бұрын

    ребята, это база! уважение Евгению

  • @vladislavosipenkov1412
    @vladislavosipenkov14122 жыл бұрын

    Один из лучших роликов по теме

  • @dmitry_shelemekh
    @dmitry_shelemekh3 жыл бұрын

    Как хорошо что есть в записи! Был бы на докладе в живую, уловил бы процентов 30 только..

  • @user-fg8oo5fu6h
    @user-fg8oo5fu6h3 жыл бұрын

    это оч круто, первый раз досмотрел до конца и даже что-то понял :)

  • @user-ib7vx3yc4i
    @user-ib7vx3yc4i10 күн бұрын

    это сильно, браво

  • @MiSaxap
    @MiSaxap10 ай бұрын

    Спасибо

  • @user-gu2sc5lj6g
    @user-gu2sc5lj6g Жыл бұрын

    Лучший спикер по Java!)

  • @AndreyDeveloper
    @AndreyDeveloper Жыл бұрын

    46:23 - двадцать шестое июня, четверг, воcемь вечера. Несмотря на то, что все устали от коммитов в проект, ребята нашли в себе силы прийти ещё на доклад Борисова и поразвиваться.

  • @cannibalirk3055
    @cannibalirk3055 Жыл бұрын

    Лекция крайне плотная и информативная. Но после неё всё равно остаётся куча внутренностей, которые еще надо "потрошить", изучать)) Например, про то, как работает сканер бинов в современной версии спринга. И каким именно образом работает класс, подменяемый dynamic proxy. Хотя, когда-то я еще писал свой кривой BeanDefinitionReader и BeanFactory, так что у меня всё таки вопросов по внутренностям чуть меньше)) Погружаться в это можно очень долго. Но это интересно!

  • @poloplopol9791
    @poloplopol979111 ай бұрын

    считаю что работы Евгения должны спрашивать в универе и на собеседованиях на ровне с другими предметами

  • @GlebMtb
    @GlebMtb2 жыл бұрын

    Смотрю в 2021 и мне прямо очень заходит, могут же

  • @maxlich9139
    @maxlich9139 Жыл бұрын

    А где можно найти презентацию доклада?

  • @romandzhadan5546
    @romandzhadan55462 жыл бұрын

    top

  • @vitalykhan1354
    @vitalykhan13543 жыл бұрын

    прям с трудом верится, что видео перед выкладыванием не было ускорено. неужели можно так быстро мыслить, говорить и жестикулировать?) однако при просмотре на скорости 0,75 понимаешь, ... не мог человек в таком состоянии прийти на свое выступление)))

  • @pshavykin

    @pshavykin

    3 жыл бұрын

    ))))

  • @klaussr

    @klaussr

    3 жыл бұрын

    Люди все разные, энергичный просто человек, увлеченный

  • @tonyvladi9940

    @tonyvladi9940

    11 ай бұрын

    Он просто это уже не первый десяток раз рассказывает, это я как экскурсионный гид говорю. Всё уже на автомате...

  • @fredor2844
    @fredor28443 жыл бұрын

    39:32. А если метод ничего не возвращает?

  • @seoonlyRU
    @seoonlyRU8 ай бұрын

    палец вверх от СЕООНЛИ!!!!!!!!

  • @user-ji4fm7sx3k
    @user-ji4fm7sx3k3 жыл бұрын

    Как он делает эту магию при написании кода? пишет r и у него появляется целая строка, где он создает экземпляр класса Random. Потом в другом месте нажимает по всей видимости ctrl+alt+L и у него сами проставляются точка с запятой в конце строки, кто знает как это настроить?)

  • @user-vg4sp9zo7f
    @user-vg4sp9zo7f7 күн бұрын

    Жесть конечно как тяжко всё это воспринимать человеку недавно зашедшему в спринг, по 20 раз пересматриваю каждый момент, чтобы понять что он там пытался осветить.

  • @mimi-cc3yu
    @mimi-cc3yu2 жыл бұрын

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

  • @someStudentChannel
    @someStudentChannel2 жыл бұрын

    "Чиню баг, которого нет, а у него всё равно баг" жиза

  • @glhftobe3164
    @glhftobe31647 ай бұрын

    Подскажите стоит смотреть с этого если спринг не изучал до этого

  • @______________9358

    @______________9358

    7 ай бұрын

    думаю нет,потому что ни хрена не поймешь. я прошел курс Алишева , написал маленький проект и даже после этого когда смотрел ничего не понял. раза 10 пересмотрел и вроде на 80% понял

  • @java_couch

    @java_couch

    4 ай бұрын

    это можно понять только спустя годы работы, я начал это понимать где после 5 лет на спринге, до этого все это было просто как пустой звук

  • @user-jw7mq7jk1u
    @user-jw7mq7jk1u2 жыл бұрын

    По поводу того, что спринг выбирает механизм проксирования CGlib или DynamicProxy,... он всегда использует Cglib, всегда

  • @user-rl8fy6xe1t

    @user-rl8fy6xe1t

    8 ай бұрын

    Доку быть хоть почитал, как он создаст Gglib, если мой бин не наследуется ни от одного интерфейса?

  • @user-rl8fy6xe1t

    @user-rl8fy6xe1t

    8 ай бұрын

    If the target object to be proxied implements at least one interface then a JDK dynamic proxy will be used. All of the interfaces implemented by the target type will be proxied. If the target object does not implement any interfaces then a CGLIB proxy will be created.

  • @java_couch

    @java_couch

    4 ай бұрын

    хуйню не пиши, dynamic используется если класс имплементирует интерфейс, если нет будет cgLib

  • @stanferrari4550
    @stanferrari45507 ай бұрын

    норм) обычный жизненный цикл бина... по поводу eventLiteners конечно накручено я думаю это было просто сказано в образовательных целях сомневаюсь чтобы вот так извращались в рядовых проектах обычно все заканчивается на postProcessAfterInitialization

  • @ushik70
    @ushik702 жыл бұрын

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

  • @igorm.9845
    @igorm.98453 жыл бұрын

    Так и не понял как он "решил" проблему с Lazy в самом конце.

  • @gennadygennady3458
    @gennadygennady34582 жыл бұрын

    11:37

  • @ffatheranderson
    @ffatheranderson3 жыл бұрын

    26:24 - "то ему придётся делать очень сложную работу..... " - Евшений Борисов, Вам удаётся совмещать стендап комеди, с обучением программированию, и программированием людей на выполнение очень сложной работы. Х))

  • @user-ek7sp5sb6j
    @user-ek7sp5sb6j10 ай бұрын

    А МОЖНО Оборватьь

  • @irinav3776
    @irinav37764 ай бұрын

    Вот бы скорость 0,9

  • @tuhajeka613
    @tuhajeka6133 жыл бұрын

    айбернет😂👍👍👍👍

  • @______________9358

    @______________9358

    7 ай бұрын

    правильно будет hайбернет. букву h в русском алфавите не хватает.

  • @ffatheranderson
    @ffatheranderson3 жыл бұрын

    28:16 - Евгений Борисов, небольшая поправка -Первый подход - это циглиб (когда класс не имеет интерфейса или класс файнал(с ваших слов)), а второй это динамик прокси. Вы просто 5ю секундами ранее говориле сначала о наследовании от классов, а потом как второй вариант от интерфейсов, и следом вы НАЗЫВАЕТЕ эти подходы как Динамик прокси и "вторым" Вы называетее циглиб.

  • @dreamer_vi905
    @dreamer_vi9052 жыл бұрын

    Не знал что Гарик в Спринге шарит.

  • @stepav
    @stepav3 ай бұрын

    мужик говорит в x2

  • @dimarosu
    @dimarosu Жыл бұрын

    че

  • @dimarosu
    @dimarosu Жыл бұрын

    ты бесиш

  • @AnnaIsHere
    @AnnaIsHere3 жыл бұрын

    Для меня недоходчиво было от слова совсем, автор изъясняется на эльфийском, нужно смотреть каждое второе слово в словаре. Терминологии, которую объяснил вначале, раз-два и обчёлся.

  • @musicvoice3030
    @musicvoice3030 Жыл бұрын

    Шкода, що па рускі

  • @Daniel-mo1iy

    @Daniel-mo1iy

    Жыл бұрын

    Можно включить субтитры

  • @Bogdan666gabov

    @Bogdan666gabov

    24 күн бұрын

    Тем не менее ты его знаешь и понимаешь, в чем проблема?

  • @musicvoice3030

    @musicvoice3030

    24 күн бұрын

    @@Bogdan666gabov погано сприймається

  • @oldblood3383
    @oldblood33833 жыл бұрын

    спринг - говно

  • @kookooyob3440
    @kookooyob34403 ай бұрын

    Помогите! в конце этого видел, где Борисов пишет "3ю-фазу конструктора", на вот этом моменте @Autowired ConfigurableListableBeanFactory factory; ... у меня почему-то вместо в фабрики инжектится null Говорят, это частая ошибка а, если компонент незареган в Контексте, но кого нам регистрировать, Фабрику Спринга что ли??) В общем я уже все до буквы за Борисовым переписал, стэковерфлоу твердит про причины см.выше, которые по идее не имеют отношения к нашей ситуации. . .

  • @tarasshpek
    @tarasshpek5 жыл бұрын

    Этот доклад прям на цитаты можно разбирать: "Лучше получить эксепшн, чем жить с каким-то нулем", "Не буду catch блок пустым оставлять - грех".

  • @programming7777

    @programming7777

    3 жыл бұрын

    "трай и кетч всегда некрасиво и плохо сказывается на нервной системе" :)

  • @hramovalexey

    @hramovalexey

    2 жыл бұрын

    Еще это: "Если у внутреннего компонента спринга класс меньше двадцати букв, то это просто несерьезно" ))

  • @9Ipowa

    @9Ipowa

    2 жыл бұрын

    @@hramovalexey Либо как в части про профилирование: "Если стоит - то ему придется делать сложную работу"

  • @toshgun23

    @toshgun23

    2 жыл бұрын

    "А кто здесь не грешил? ))"

  • @BiteMyBrain
    @BiteMyBrain9 жыл бұрын

    Огромное спасибо за такое видео. Чел просто супер объясняет. Побольше бы именно такого плана видео.

  • @azamatk4302

    @azamatk4302

    3 жыл бұрын

    Если у программистов есть хороший тон и правила чистого кода, то у ведущего (в данном случае докладчика) не должны быть "айбернейты" , "собаки", также эмм ымм бээем. При всем уважении.

  • @BiteMyBrain

    @BiteMyBrain

    3 жыл бұрын

    @@azamatk4302 так вам шашечки или ехать? :)

  • @azamatk4302

    @azamatk4302

    3 жыл бұрын

    @@BiteMyBrain Посмотрел далее ... Доклад отличный! По вашей аналогии, примерно как сесть в такси бомбилы из Кавказа :) Водитель с акцентом, но душевно что-то рассказывает =)

  • @Denis-Orlov
    @Denis-Orlov4 жыл бұрын

    08:30 BeanPostProcessor 25:15 Профайлер, JMX 49:00 ApplicationListener Спасибо!

  • @zixitix3374
    @zixitix33744 жыл бұрын

    Офигительный доклад, спасибо!

  • @eugenek951
    @eugenek9517 жыл бұрын

    Gut gemachen, Evgeny!

  • @alexeyea
    @alexeyea5 жыл бұрын

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

  • @user-hf5ry2ni8r
    @user-hf5ry2ni8r6 жыл бұрын

    Доклад очень хороший . Только недавно начал работать со Спрингом . после доклада стало намного понятнее как он работает . Супер !

  • @Glebka27
    @Glebka274 жыл бұрын

    Легендарный доклад

  • @user-gs7ub8ku4t
    @user-gs7ub8ku4t6 жыл бұрын

    Кто эти люди, которые поставили дизлайк!!?? Доклад на высоте, спасибо.

  • @dimagarbar816
    @dimagarbar8165 жыл бұрын

    Лекция супер. Если кому интересно, то рандом так игрался из-за того, что в метод передаем не разницу, а сумму (смещаем отрезок)

  • @evgen1000end
    @evgen1000end8 жыл бұрын

    Один из лучших технических докладов на русском языке

  • @ValentineGoloubev

    @ValentineGoloubev

    6 жыл бұрын

    на иврите же :)

  • @eeeee5798
    @eeeee57987 жыл бұрын

    Пока смотрела все было понятно. На следующий день хотела повторить- вообще ниче не помню! А вообще, доклад- супер. Если эта инфа и есть в оф доках, отфильтровать ее самостоятельно было бы очень не просто

  • @user-ns9yz4dw6j

    @user-ns9yz4dw6j

    5 жыл бұрын

    +

  • @therorium
    @therorium9 жыл бұрын

    +1 за Therion

  • @geraltrivians9356
    @geraltrivians93564 жыл бұрын

    Евгений крайне интересно вещает, запись смотрится на одном дыхании, но всё время меня не покидала мысль, что поведением похож на Александра Якушева("Курск" КВН)

  • @twinklegroup8741

    @twinklegroup8741

    3 жыл бұрын

    а я смотрю и думаю, кого же он мне напоминает

  • @ME-ls9de
    @ME-ls9de4 жыл бұрын

    можно и заимплементить интерфейс BeanFactoryPostProcessor и доставать через рефлексию нужны поля, разница только в том, что BeanPostProcessor работатет уже с проиниализироваными полями обьекта, а BeanFactoryPostProcessor - после загрузки бинов в контейенер dzone.com/articles/spring-bean-lifecycle

  • @pavelkirin5753
    @pavelkirin57539 жыл бұрын

    Не пропущена ли часть видео где Евгений с пакетом qualifiers играется?

  • @niyazkadirov8593
    @niyazkadirov85934 жыл бұрын

    Где посмотреться второй часть?

  • @andrewbatkovich8035
    @andrewbatkovich80356 жыл бұрын

    еще ПрОфиль и профИль.))) Лекция супер.

  • @dmitriysaraiev7585
    @dmitriysaraiev75854 жыл бұрын

    Лекция отличная, но раньше я думал что говорят "поднимусь повыше" скроля вниз только люди 60+

  • @shtormlbt
    @shtormlbt5 жыл бұрын

    на 0,75 нормально смотреть

  • @Tleu13

    @Tleu13

    4 жыл бұрын

    Смотрю на 2.0

  • @Boyarsskiy

    @Boyarsskiy

    4 жыл бұрын

    ))))) и голос, как-будто 0,75 хряпнул

  • @klaussr

    @klaussr

    3 жыл бұрын

    Тоже сначала увеличивал, потом вернул обычную

  • @maxgrind28

    @maxgrind28

    2 жыл бұрын

    Да, редкий пример, когда человек не нудит и все говорит по делу. Очень хороший докладчик. Смотрел на 1 с частыми перемотками назад.

  • @user-dk2xo9hj2m
    @user-dk2xo9hj2m6 жыл бұрын

    59:00 если бин создан через метод в @Configuration то getBeanClassName вернет null же?

  • @isey2851

    @isey2851

    6 жыл бұрын

    Если речь идёт про метод, аннотированный @Bean и подобные, то насколько я знаю, спринг генерирует имя бина по имени метода.

  • @kirillleonov7405

    @kirillleonov7405

    5 жыл бұрын

    вы не нашли ответ почему так происходит?

  • @s1mpleman782

    @s1mpleman782

    4 жыл бұрын

    Думаю что getBeanClassName и здесь нормально отработает, т.к. в BeanDefinition название класса бина возьмется как имя название возвращаемого объекта

  • @core2mind
    @core2mind6 жыл бұрын

    А как происходит консолидация (объединение) результатов работы методов postProcessAfterInitialization разных BeanPostProcessor'ов? Ну то есть...Пусть есть 10 моих кастомных аннотаций, которые меняют логику бина, добавляя к его методам 10 соответствующих функционалов. Делаем 10 BeanPostProcessor'ов (далее BPP). Это нужно делать на стадии AfterInitialization и возвращать в методе postProcessAfterInitialization прокси с добавленным функционалом. В каком порядке сработают мои 10 BPP? Что после отработки всех 10 BPP будет в контейнере: один прокси объект (объединяет в себе все функционалы) или 10 разных прокси оберток над оригиналом? Ну то есть в итоге же я должен получить bean, к оригинальной реализации которого накручено 10 функционалов. Как это получается? Это многослойная прокси обёртка получаетя?

  • @s1mpleman782

    @s1mpleman782

    4 жыл бұрын

    Думаю первый раз создастся прокси над оригинальным классом, а потом будут создавать прокси на предыдущим прокси и так 9 раз. И результирующий прокси будет выполнять весь функционал. В каком порядке будут вызываться BPP это не должно быть важно. Если это важно, т.е. Вам нужно чтобы логика одного BPP срабатывала прежде другого BPP, то тогда нужно пересмотреть эту логику и возvожно объединить в один BPP.

  • @OEA2
    @OEA27 жыл бұрын

    У enabled флага volatile не нужен?

  • @niyazkadirov8593

    @niyazkadirov8593

    3 жыл бұрын

    Здесь не многопоточность

  • @1555Sandro
    @1555Sandro4 жыл бұрын

    21 сишарперов дислайкнули

  • @salatiques
    @salatiques6 жыл бұрын

    Сильно не ругайте за вопрос - только начинаю изучать spring. Разве нельзя делать профилирование такого типа через spring AOP?

  • @user-oo9ee7ln1c

    @user-oo9ee7ln1c

    6 жыл бұрын

    Можно конечно. Но цель доклада немного глубже конкретной задачи профилирования). AOP ведь тоже работает через proxy, а после доклада складывается впечатление, как оно может быть реализовано.

  • @innasokolova2136
    @innasokolova21369 жыл бұрын

    Дайте линк на картинку, которая в начале лекции. Которая "Спринг в картинках"

  • @Tim86I

    @Tim86I

    9 жыл бұрын

    vk.com/doc4606_318090168

  • @michaelskidan9719

    @michaelskidan9719

    7 жыл бұрын

    Этот документ был удалён из общего доступа.

  • @bashtaVital

    @bashtaVital

    5 жыл бұрын

    2014.jpoint.ru/presentations/Borisov_spring.pdf

  • @user-lo8ij9pw1h

    @user-lo8ij9pw1h

    5 жыл бұрын

    2014.jpoint.ru/presentations/Borisov_spring.pdf

  • @maxkatrenko8865
    @maxkatrenko88654 жыл бұрын

    Что нужно знать, чтобы это видео было полезно? Я знаю только Java Core и SQL. Будет какой-то толк? Или посоветуете что-то прочитать?

  • @igorvasylevskyi3629

    @igorvasylevskyi3629

    4 жыл бұрын

    Ето точно не для новичков, ето для тех, кто уже нормально ознакомлен со Spring

  • @maxkatrenko8865

    @maxkatrenko8865

    4 жыл бұрын

    Igor Vasylevskyi ну вот и я так думаю, а много людей мне советуют эти видео, когда я у них спрашиваю о инфе про спринг

  • @AndreiPushkou

    @AndreiPushkou

    2 жыл бұрын

    @@igorvasylevskyi3629 По мне, так новичку надо смотреть минимум два раза - сразу и после того как поковыряешься в спринге. Первый просмотр просто много чего в голову откладывает, а второй - уже рассортировывает.

  • @user-qy7yv1ut4c
    @user-qy7yv1ut4c4 жыл бұрын

    чет у меня нет там такого плагина в списке

  • @user-gn1ke2kr9q
    @user-gn1ke2kr9q7 жыл бұрын

    Кидает налл поинтер. В поле BeanDefinition beanDefinition = factory.getBeanDefinition(name); factory = null В чем проблема?

  • @saulgoodman9657

    @saulgoodman9657

    7 жыл бұрын

    В мене був NPE через те що я в методі postProcessAfterInitialization(Object bean, String beanName) забув змінити return null на return bean. Можливо вам допоможе)

  • @michaelskidan9719

    @michaelskidan9719

    7 жыл бұрын

    +Roman Chmeluk В общем-то упущение в дизайне фреймворка, что он не хэндлит такое. Тем более что IDE при генерации метода по умолчанию вставляют "return null;", и это всем известно.

  • @user-wd8sc4ix2m

    @user-wd8sc4ix2m

    7 жыл бұрын

    не забыл ?

  • @shandi1241

    @shandi1241

    7 жыл бұрын

    или AutowiredAnnotationBeanPostProcessor для лучшего усвоения материала )

  • @kirillleonov7405

    @kirillleonov7405

    5 жыл бұрын

    вы не нашли ответ почему так происходит?

  • @wjblazkowicz
    @wjblazkowicz8 жыл бұрын

    Не совсем то докладчик называет namespace-ами.

  • @flatmapper
    @flatmapper4 жыл бұрын

    актуально в 2019?

  • @igorvasylevskyi3629

    @igorvasylevskyi3629

    4 жыл бұрын

    не очень, хотя старьіх проектов с xml есть много еще

  • @igorvasylevskyi3629

    @igorvasylevskyi3629

    4 жыл бұрын

    kzread.info/dash/bejne/oHuax7WoZZXFaKQ.html с 2:10

  • @manOfPlanetEarth

    @manOfPlanetEarth

    3 жыл бұрын

    Igor Vasylevskyi 👍🏼👍🏼👍🏼👍🏼

  • @spirridd

    @spirridd

    3 жыл бұрын

    Всегда актуально, технология же не меняется.

  • @Boyarsskiy
    @Boyarsskiy6 жыл бұрын

    Спринг изучаю не так давно, и все время меня коробило чувство, что за меня кучу работы делает Господь Бог. С одной стороны хорошо, но с другой - я не мог точно знать, как он это делает, а непонимание процесса до конца вызывало дискомфорт. Это все равно что играть в игру не до конца понимая её правила. С этим видео хоть что-то проясняется. Ещё заметил, что многие вещи в Спринге становятся более понятными, когда ты до этого велосипедил их вручную.

  • @Boyarsskiy

    @Boyarsskiy

    6 жыл бұрын

    Michael Morrison Ели брать только Java SE, то тут не соглашусь, тут чистый кодинг, а вот EE и Spring , то есть где в дело вступают контейнеры, то там поначалу очень много временем уходит на понимание работы этих контейнеров, так как львиную долю работы выполняют именно они. Есть конторы, которые сводят к минимуму использование фреймворков, и пишут свои библиотеки, чтобы иметь более полный контроль над кодовой базой.

  • @Boyarsskiy

    @Boyarsskiy

    6 жыл бұрын

    Michael Morrison Я спринг читаю в метро по дороге на работу для общего развития, прямо сплошняком по reference. Хоть и не пользуюсь, а кругозор расширяет ))

  • @user-gk4py1dy5j

    @user-gk4py1dy5j

    6 жыл бұрын

    бля, теперь и я тут

  • @manOfPlanetEarth

    @manOfPlanetEarth

    3 жыл бұрын

    ска теперь и я в вашем ебучем спринговом болоте🤦‍♂️

  • @dashanben
    @dashanben7 жыл бұрын

    Мёд для ушей.

  • @ValentineGoloubev

    @ValentineGoloubev

    6 жыл бұрын

    сахар для кода

  • @user-gu4cs2hu9f

    @user-gu4cs2hu9f

    5 жыл бұрын

    творог для костей

  • @DrAkyla1123

    @DrAkyla1123

    5 жыл бұрын

    Синхронизация для потоков

  • @Narryel

    @Narryel

    5 жыл бұрын

    Москва для москвичей

  • @WatsOneFTumane

    @WatsOneFTumane

    5 жыл бұрын

    Скайрим для нордов

  • @GusLapchatiy
    @GusLapchatiy5 жыл бұрын

    На Харламова чем-то похож.

  • @georgetsiklauri
    @georgetsiklauri4 жыл бұрын

    Interesting; however, despite the fact, that I understand Russian well, you're talking way too fast, man.

  • @Nirion_paladin

    @Nirion_paladin

    4 жыл бұрын

    payback speed = 0,5; subtitles enable?)

  • @Datanlivshiz
    @Datanlivshiz5 жыл бұрын

    Молодцы ребята,очень интересный ролик. Кто хочет почитать или просто угареть от еще одной теории о том что на земле лесов нет: www.as-gard.com/30-metrovye-kusty

  • @tr233
    @tr2336 жыл бұрын

    Мда спринг очень гибок, даже слишком гибок, я лично предпочитаю больше EJB3.2 и очень стандартизированную архитектуру, блин зачем Оракл отдал JEE в Eclipse, ведь так всё было хорошо и стабильно, теперь клиенты всех хотят Спринг, теперь стринг надо всем джавистам учить.

  • @danyils8728

    @danyils8728

    6 жыл бұрын

    че серьезно?) реально возникла проблема с тем что кастомеры говорят "не хотим ЖЕЕ"?)

  • @tr233

    @tr233

    6 жыл бұрын

    Ну да иначе я бы этом здесь не писал

  • @smalex
    @smalex7 жыл бұрын

    Я 10 лет работаю с явой, примерно лет 7 назад удалил spring из все проектов и слава богу. Перешел на Guice. Но на самом деле и Guice особо не нужен. Написал свой маленький Injector. Чем меньше чужого кода в твоих проектах, тем лучше. (Hibernate кстати тоже снес)

  • @dante86521

    @dante86521

    7 жыл бұрын

    и как работаете з базой данных?

  • @smalex

    @smalex

    7 жыл бұрын

    У современных баз данных mongodb, redis, google datastore, cassandra есть своей api, плюс я использую свои утилиты или можно библиотеки написанные другими людьми. В крайнем случае можно jdbc напрямую, через опять же свои обертки. Скорость, простота и предсказуемость решения важнее, чем мнимое удобство hibernate.

  • @glebdanichev9956

    @glebdanichev9956

    6 жыл бұрын

    Smychagin Alexei вы один над своим проектом работаете, или остальные разработчики выучили ваш инжектор? а как же spring data, mvc, batch...

  • @wayfarer2178

    @wayfarer2178

    6 жыл бұрын

    миллионы девов юзают спринг, а тут я один на белой лошади. А заказчик знает, что он оплачивает создание велосипедов за его деньги?

  • @Jeff.Wilson

    @Jeff.Wilson

    6 жыл бұрын

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

Келесі