powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Java [игнор отключен] [закрыт для гостей] / Где посмотреть спринг паззлеры в хронологическом порядке?
20 сообщений из 20, страница 1 из 1
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39836763
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Речь про Видосики Евгения Борисова.

гугл выдаёт только вторую версию. Первую никак не найти(про мальчика который не любил интерфейсы).

Сколько их всего?
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39837415
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
up
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39837504
andreykaT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у них было вроде на сайте. ща только вторая часть осталась. может права какие нить не поделили?
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39837642
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andreykaTу них было вроде на сайте. ща только вторая часть осталась. может права какие нить не поделили?
Печально если так. Чувак умеет объяснять.
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39837804
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
questioner,

Вот что-то нашёл. Но это не исчерпывающий список
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39837856
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39837878
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот кстати про того самого мальчика: [youtube=
YouTube Video
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39838959
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот тут я не понял:



позиция в видео: [youtube=
YouTube Video
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39838960
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Потрошитель:


[youtube=
YouTube Video
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39838961
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[youtube=
YouTube Video
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39838963
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
@PostConstruct это между первым и вторым проходом BPP
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39838980
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какая же все таки жесть
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39839029
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл никкакая же все таки жестьPostPostPostConstructor?)))
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39839307
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpPostPostPostConstructor?)))Лучше вот такие доклады вообще не смотреть, или хотябы проверять что там рассказывают... У докладчика скорее всего какие мысли здравые были, но раскрыл он их плохо...

Вот докладчик утверждает, что в @PostConstructor транзакции недоступны, что вообще-то неверно, вот стэк из живого приложения - вроде работают транзакции в @PostConstruct:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)
	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
	at com.sun.proxy.$Proxy180.getList(Unknown Source)
...
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:366)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:311)
	at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:134)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:409)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1626)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:555)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)

Путаница скорее всего возникает из-то того что докладчик смешал в кучу ЖЦ бинов и ЖЦ контекста, при этом для бинов таки все довольно очевидно, вот такое не будет работать:
Код: java
1.
2.
3.
4.
@PostConstruct
@Transactional
void init() {
}

потому что никто не обещал, а такое:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
@PostConstruct
void init() {
  doInit();
}

@Transactional
void doInit() {
}

не будет работать потому что и не должно оно работать вообще - вызов идет мимо прокси, а если в @PostConstruct другой бин вызывать, то все будет нормально (есть случаи когда оно глючит нещадно, но оно больше про то, что @PostConstruct при любой возможности нужно избегать)
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39839332
andreykaT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ессли ты нормальный бинконфиг напишешь то постконстракт вроде как и не нужен. он нужен для лентяев кто не хочет в конфигах нужные действия указать.
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39839338
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andreykaTон нужен для лентяев кто не хочет в конфигах нужные действия указать.Нужен он, но не в качестве замены того, что можно воткнуть в конструктор.
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39839826
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Андрей Панфиловвот стэк из живого приложения - вроде работают транзакции в @PostConstruct

Его доклад вообще никак не противоречит тому, что Вы написали. Он даже говорит, что ему советуют для такого кейса TransactionMenedger инжектить, но он не очень хочет этого делать ибо самописная обработка ошибок и всё такое.



авторпотому что никто не обещал:
Автор доклада ставит вопрос почему не обещает и отвечает на него

Андрей Панфилов@PostConstruct при любой возможности нужно избегать
Почему?
Андрей Панфиловесть случаи когда оно глючит нещадно
Хотелось бы примеров когда это нещадно глючит. Перекрёстные ссылки?

Андрей Панфиловне будет работать потому что и не должно оно работать вообще - вызов идет мимо прокси

Автор доклада утверждает, что проксей НАД ДАННЫМ БИНОМ ещё нет.
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39839827
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andreykaTессли ты нормальный бинконфиг напишешь то постконстракт вроде как и не нужен. он нужен для лентяев кто не хочет в конфигах нужные действия указать.
Наивненько: https://stackoverflow.com/a/3406631/2674303
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39839942
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
questionerЕго доклад вообще никак не противоречит тому, что Вы написали. Он даже говорит, что ему советуют для такого кейса TransactionMenedger инжектить, но он не очень хочет этого делать ибо самописная обработка ошибок и всё такое.Ты опять не читаешь и не слушаешь чтоли? начиная с 49:35 откровенная дичь:БорисовЕсть сервис с методом warmUpCache, где вызывать это метод?
вызывать в конструкторе не вариант, потому что на этапе работы конструктора ничего не настроено
...
транзакции на этапе @PostConstruct еще не существует
это все неверно (проверить в качестве легкого упражнения), а то что дальше с ApplicationListener - это вообще треш и угар.
...
Рейтинг: 0 / 0
Где посмотреть спринг паззлеры в хронологическом порядке?
    #39840392
questioner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Андрей ПанфиловquestionerЕго доклад вообще никак не противоречит тому, что Вы написали. Он даже говорит, что ему советуют для такого кейса TransactionMenedger инжектить, но он не очень хочет этого делать ибо самописная обработка ошибок и всё такое.Ты опять не читаешь и не слушаешь чтоли? начиная с 49:35 откровенная дичь:БорисовЕсть сервис с методом warmUpCache, где вызывать это метод?
вызывать в конструкторе не вариант, потому что на этапе работы конструктора ничего не настроено
...
транзакции на этапе @PostConstruct еще не существует
это все неверно (проверить в качестве легкого упражнения), а то что дальше с ApplicationListener - это вообще треш и угар.

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

А что не так про ApplicationListener то ?

P.S.

Там суть его рассказа в том, что сначала первый проход BPP, потом init/postConstruct и только потом второй проход BPP. Все прокси накручиваются при втором проходе
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Где посмотреть спринг паззлеры в хронологическом порядке?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]