[Java lista] Spring 3.0.5 + Eclipselink 2.1.0 + Tocmat 6.x
István Viczián
viczian.istvan at gmail.com
2010. Dec. 15., Sze, 17:32:59 CET
Üdv,
Itt még elhangzott egy kérdés, de inkább idéznék:
http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-stereotype-annotations
Spring 2.5 introduces further stereotype annotations: @Component,
@Service, and @Controller. @Component is a generic stereotype for any
Spring-managed component. @Repository, @Service, and @Controller are
specializations of @Component for more specific use cases, for
example, in the persistence, service, and presentation layers,
respectively. Therefore, you can annotate your component classes with
@Component, but by annotating them with @Repository, @Service, or
@Controller instead, your classes are more properly suited for
processing by tools or associating with aspects. For example, these
stereotype annotations make ideal targets for pointcuts. It is also
possible that @Repository, @Service, and @Controller may carry
additional semantics in future releases of the Spring Framework. Thus,
if you are choosing between using @Component or @Service for your
service layer, @Service is clearly the better choice. Similarly, as
stated above, @Repository is already supported as a marker for
automatic exception translation in your persistence layer.
Viczi
2010/12/15 Mariák Kálmán <sirkalmi at kalmiesemese.hu>:
> Sziasztok!
>
> On Mon, 2010-12-13 at 11:04 +0100, chico at tisztanet.hu wrote:
>> >Mi az a store? Persist, merge műveletek? Azt még ki sem próbáltam
>> >úgyhogy lehet, hogy nekem is fog kelleni akkor.
>>
>> Valószínűleg igen.
>
> Bizony kellett. :-)
> Annak milyen jelentősége van, hogy a sok loadTimeWeaver közül melyiket
> használom? Más példákban a ReflectiveLoadTimeWeaver-t láttam megadva.
> Nálam ez elszállt valami kivétellel, ezért nem kisérletezetem vele
> tovább. Az InstrumentationLoadTimeWeaver amit te is használsz szépen
> működik.
>
> A kölönbőző Service oszátlyokhoz egy picit bonyolultan jutok hozzá:
> PersonServiceInterface personService =
> (PersonServiceInterface)WebApplicationContextUtils.getWebApplicationContext(pageContext.getServletContext()).getBean(PersonServiceInterface.class);
> Mint látható a PersonService osztályhoz csináltam egy interfészt, mert
> valóban, mint ahogyan írtad ez nélkül nem működött a @Transactional
> annotáció. Ezt még nem egészen értem, hogy miért kellett, egyelőre csak
> elfogadom, hogy kell és kész.
> Állítólag van egy egyszerűbb módszer is a getBean metódus hívásánál is.
> Dependency injection alkalmazásával egyszerűbben is megkaparinthatom a
> PersonService egy példányát. Ezt hogyan lehet megvalósítani?
>
> A te páldádban egy @Repository entitást alkalmazol a JpaDataService
> osztályon. Nekem egy @Service entitás van rajta és működik. Mi a
> különbség a kettő között?
>
> A @Component, @Scope és @Resource annotációkat már nem merem megkérdezni
> mert félek visszaálnék a türelmetekkel. :-D
>
> Köszi a válaszokat!
>
> Mariák Kálmán
> sirkalmi
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
További információk a(z) Javalist levelezőlistáról