powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring - Вопрос в картинках
25 сообщений из 29, страница 1 из 2
Spring - Вопрос в картинках
    #38180162
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. Подскажите почему в нагенерированной через Roo .. jspx вьюхе, при нажатие на показать все сущности, вызывается конструктор этого класс??

т.е. писал метод с @PostConstruct смотрю экземпляров класса нет, а он исполняется, если во вьюхе нажимать показать всё.. да, и при инициализации апликшн-конткст-а тоже вызывается.
Что происходит? Очень интересно.Спасибо.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38180164
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181284
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прошу прощения, но вопрос по прежнему актуален.


1. Почему при инициализации и запуске war файла происходит вызов конструктора сущности??? Ведь класс обычный не статический.


2. Почему при нажатие показать_все_сущности_т3 в jspx так же происходит вызов конструктора??



Я могу приложить необходимый код, вопрос ведь не эзотерический. Где вы.. знатоки Спринга)
А пока.. посмотрю на трейс.
*поднял
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181305
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Останавливашь breakpoint и смотришь откуда вызов пришел. Странный вопрос.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181594
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

The default behavior for ApplicationContext implementations is to eagerly pre-instantiate all singleton
beans at startup. Pre-instantiation means that an ApplicationContext will eagerly create and configure all of
its singleton beans as part of its initialization process. Generally this is a good thing, because it means that any
errors in the configuration or in the surrounding environment will be discovered immediately (as opposed to
possibly hours or even days down the line).
However, there are times when this behavior is not what is wanted. If you do not want a singleton bean to be
pre-instantiated when using an ApplicationContext, you can selectively control this by marking a bean
definition as lazy-initialized. A lazily-initialized bean indicates to the IoC container whether or not a bean
instance should be created at startup or when it is first requested.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181631
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

Вопрос в не очевидном для меня вызове конструктора, что странного? если для вас нормально, что у класса (не синглтона) вызывается конструктор при инициализации приложения, и при запросе через вьюху всех его экзепляров.. (хотя нет ни одного)

если для вас это норм, прошу рассказать почему так. если для вас норм что из коробки происходят такие вещи ...то так же прошу поделиться инфой. спасибо.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181648
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kT_________,

Достаточно просто немного понять как спринг делает контекст (что собственно написано в вашей цитате). Почему вас тогда не удивляет что спринг выполняет инициализацию контекста до того как вы запрашиваете вьюху?
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181661
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лагман,

я и пытаюсь понят. как уже писал выше..


почему вызывается конструктор???? 1 - класс не статический, 2 - класс не синглтон
так зачем вызывать конструктор??? что куда инстанцируется? Вы в курсе?
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181672
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спринг прописан как листенер в web-xml, стартует вместе с веб-приложением.
Читает свой конфиг.
В конфиге написано bean class="moy.klass.v.pakete.v.pakete.Klass" scope="singleton"
Для спринга это означает что нужно создать 1 экземпляр этого класса . Собственно.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181675
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот знаю когда вызывается конструктор класса. И главное зачем;)
Но не могу понять зачем его вызывать.. когда я хочу посмотреть на экземпляры. Особенно когда их нет, и нет тем более после вызова конструктора.

Это какой-то акультный артефакт jpa? АктивРекордса? Ребята.. давайте подумаем вместе.. почему так, мм?
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181677
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лагман,

секундочку...
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181679
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kT_________,

а что такое у вас конструктор класса?
Код: java
1.
static {}
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181698
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roo генерит аннотации, хмл-я увидеть не могу. Но получается что? Что это синглтон, верно?
Но вот почему он им стал, если я как бэ не планировал)))

т.е. если у меня отношения many-one ...т.е. many экзепляров этого класса к какому-то другому.. то, то как это возможно если он синглтон????


и второе.. блин, даже если все классы в спринге синглтоны (!что я пишу такое) то зачем они по 100500 раз инстанцируются (или что они там делают) при запросе вьюхи_показать_все??
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181701
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лагман,

статик.. но поля, поля-то notNull ит.п. ...куда там что создается. я серьезно не понимаю. вообще.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181706
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kT_________,

что такое класс с аннотацией активрекорд? кэш...
что такое показать во вьюху экземпляры? замапить в обратную сторону n-ое кол-во этих кэшей. При чем тут конструктор.. если нет не одного экзепляра, вот вопрос!
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181708
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не ну если у вас Roo, то я не в курсе что там как. В hibernate есть методы findByExample в которые можно передать "образец" объекта сущности. Вообще, никто не гарантирует вам что объекты помеченые jpa будут присутствовать в рантайме ровно по 1 шт согласно тому что вы загрузили из базы.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181711
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kT_________,

и да.. конструктор - метод один на всех, но класс не сингтон у меня. не синглтон. нафиг его вызывать при инициализации???можно подробно про это узнать?
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181726
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛагманНе ну если у вас Roo, то я не в курсе что там как. В hibernate есть методы findByExample в которые можно передать "образец" объекта сущности. Вообще, никто не гарантирует вам что объекты помеченые jpa будут присутствовать в рантайме ровно по 1 шт согласно тому что вы загрузили из базы.


как не гарантирует??? вы хотите сказать что я из таблички подтягиваю все записи (например 10)... а у меня в контейнере их может быть !10 ?

Или вне этого контейнера существуют экземпляры?? Тогда кто их создал? И самое интересное почему они не удалились.. если их ни кто не пользует.. а если их кто-то
тользует... то кто???? ОО

_______________________________________________________________________________

А Roo не при делах. Я вот знаю когда вызывается конструктор класса. И главное зачем;)
Но не могу понять зачем его вызывать.. когда я хочу посмотреть на экземпляры. Особенно когда их нет, и нет тем более после вызова конструктора.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181745
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:Initializing Spring root WebApplicationContext
KONST
java.lang.Exception: Stack trace
at slowfokz.domain.T3.<init>(T3.java:25)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstruct
orAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingC
onstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at org.hibernate.engine.internal.UnsavedValueFactory.instantiate(Unsaved
ValueFactory.java:46)
at org.hibernate.engine.internal.UnsavedValueFactory.getUnsavedIdentifie
rValue(UnsavedValueFactory.java:68)
at org.hibernate.tuple.PropertyFactory.buildIdentifierProperty(PropertyF
actory.java:75)
at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.jav
a:145)
at org.hibernate.persister.entity.AbstractEntityPersister.<init>(Abstrac
tEntityPersister.java:507)
at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(Sing
leTableEntityPersister.java:146)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstruct
orAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingC
onstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at org.hibernate.persister.internal.PersisterFactoryImpl.create(Persiste
rFactoryImpl.java:163)
at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPer
sister(PersisterFactoryImpl.java:135)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.j
ava:383)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.jav
a:1750)
at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactor
yImpl.java:94)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Con
figuration.java:905)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Con
figuration.java:890)
at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFa
ctory(HibernatePersistence.java:74)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.cr
eateNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:286)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPro
pertiesSet(AbstractEntityManagerFactoryBean.java:310)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1545)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1483)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.createBean(AbstractAutowireCapableBeanFactory.java:461)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb
ject(AbstractBeanFactory.java:295)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr
y.getSingleton(DefaultSingletonBeanRegistry.java:223)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe
an(AbstractBeanFactory.java:292)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:198)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.
getBeansOfType(DefaultListableBeanFactory.java:420)
at org.springframework.beans.factory.BeanFactoryUtils.beansOfTypeIncludi
ngAncestors(BeanFactoryUtils.java:277)
at org.springframework.dao.support.PersistenceExceptionTranslationInterc
eptor.detectPersistenceExceptionTranslators(PersistenceExceptionTranslationInter
ceptor.java:139)
at org.springframework.dao.support.PersistenceExceptionTranslationInterc
eptor.<init>(PersistenceExceptionTranslationInterceptor.java:79)
at org.springframework.dao.annotation.PersistenceExceptionTranslationAdv
isor.<init>(PersistenceExceptionTranslationAdvisor.java:70)
at org.springframework.dao.annotation.PersistenceExceptionTranslationPos
tProcessor.setBeanFactory(PersistenceExceptionTranslationPostProcessor.java:85)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.invokeAwareMethods(AbstractAutowireCapableBeanFactory.java:1506)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1474)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.createBean(AbstractAutowireCapableBeanFactory.java:461)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb
ject(AbstractBeanFactory.java:295)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr
y.getSingleton(DefaultSingletonBeanRegistry.java:223)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe
an(AbstractBeanFactory.java:292)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:198)
at org.springframework.context.support.AbstractApplicationContext.regist
erBeanPostProcessors(AbstractApplicationContext.java:741)
at org.springframework.context.support.AbstractApplicationContext.refres
h(AbstractApplicationContext.java:464)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebA
pplicationContext(ContextLoader.java:383)
at org.springframework.web.context.ContextLoader.initWebApplicationConte
xt(ContextLoader.java:283)
at org.springframework.web.context.ContextLoaderListener.contextInitiali
zed(ContextLoaderListener.java:112)
at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialize
d(ContextHandler.java:764)
at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialize
d(ServletContextHandler.java:406)
at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextH
andler.java:756)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletC
ontextHandler.java:242)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.jav
a:1234)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandle
r.java:699)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467
)
at org.mortbay.jetty.plugin.JettyWebAppContext.doStart(JettyWebAppContex
t.java:256)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
Cycle.java:59)
at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCol
lection.java:224)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(Con
textHandlerCollection.java:167)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
Cycle.java:59)
at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCol
lection.java:224)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
Cycle.java:59)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrappe
r.java:90)
at org.eclipse.jetty.server.Server.doStart(Server.java:262)
at org.mortbay.jetty.plugin.JettyServer.doStart(JettyServer.java:65)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
Cycle.java:59)
at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMo
jo.java:511)
at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.
java:364)
at org.mortbay.jetty.plugin.JettyRunMojo.execute(JettyRunMojo.java:516)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(Default
BuildPluginManager.java:101)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor
.java:209)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor
.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor
.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProje
ct(LifecycleModuleBuilder.java:84)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProje
ct(LifecycleModuleBuilder.java:59)
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBu
ild(LifecycleStarter.java:183)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(Lifecycl
eStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Laun
cher.java:290)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.jav
a:230)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(La
uncher.java:409)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:
352)
2013-03-12 06:14:07.890:INFO:oejsh.ContextHandler:started o.m.j.p.JettyWebAppCon
text{/slowflake,file:/C:/jtty/wrk/slowflake/src/main/webapp/},file:/C:/jtty/wrk/
slowflake/src/main/webapp/
2013-03-12 06:14:08.437:INFO:/slowflake:Initializing Spring FrameworkServlet 'sl
owflake'
2013-03-12 06:14:11.765:INFO:oejs.AbstractConnector:Started SelectChannelConnect
or@0.0.0.0:8080
[INFO] Started Jetty Server
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181756
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)

вот так! Они все синглтоны. А я как собака-недоумевака...

не понятна логика. кто поспособствует просветлению?
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181766
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы делаете запрос jpa -

Код: java
1.
2.
Query q = em.createQuery("SELECT x FROM Magazine x");
List<Magazine> results = (List<Magazine>) q.getResultList();



получаете results, в нем - пожалуйста, 10 записей.
Только как это связано с кол-вом кземпляров класса Magazine, например? (кроме того, что их будет >=10) ?
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181778
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛагманВы делаете запрос jpa -

Код: java
1.
2.
Query q = em.createQuery("SELECT x FROM Magazine x");
List<Magazine> results = (List<Magazine>) q.getResultList();



получаете results, в нем - пожалуйста, 10 записей.
Только как это связано с кол-вом кземпляров класса Magazine, например? (кроме того, что их будет >=10) ?


Подождите, а сколько их по вашему должно быть?? Результат запроса в results, ну а дальше.. всё зависит от кода, и от того что вышло и что осталось в области видимости, на стеке и тп.
Просто я неверно вас понял, что мой код отдельно - и то что там jpa инстанцирует отдельно и совершенно на своей волне.
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181780
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лагман, значит все они синглтоны?
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181783
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kT_________Лагман, значит все они синглтоны?
если верить стэктрейсу;)
...
Рейтинг: 0 / 0
Spring - Вопрос в картинках
    #38181799
kT_________
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну если это так..то как разруливаются мультиотношения.. Наверно это какие-то особенные синглтоны. не те про которые я думаю ...бло, нуиспринг
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring - Вопрос в картинках
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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