Ciao.
Direi che l'approccio e' da manuale, in spring per default tutti i bean
hanno scopo singleton: la premessa importante da capire è che essendo
singleton devono essere stateless.
Perchè hai dei dubbi sul Repository? Direi che visto che possono essere
visti come dei DAO anche loro dovrebbero essere stateless.

Lo stereotipo @Repository mi pare che aggiunga degli aspetti per fare il
translate delle sottostanti sql exceptions e ti permetta di iniettare un
PersistenceContext o un EntityManager se dovessi averne bisogno (ripeto mi
pare e su questo sto andando a braccio).

Secondo me quindi tutto corretto ;)

P.S. I servizi Rest li stai annotando con @Controller? lo stereotipo
dedicato è @RestController.


2018-02-16 11:12 GMT+01:00 Danilo Boi [email protected]
[it-torino-java-jug] <[email protected]>:

>
>
> Ciao A tutti .
> Grazie per aver accettato la richiesta.
> Mi sto occupando di programmazione java specificatamente , al momento , su
> Spring MVC.
> Sto sviluppando dei servizi Rest ..
> In particolare la Parte ORM la sto gestendo con spring-mybatis
> Lasciando fare a spring la factory dei mapper
>
> Mentre per il layer di controllo sto seguendo l’approccio di alcuni esempi
> che ho trovato in rete e cioè
>
> Un oggetto controller annotato con @Controller
> Vari oggetti di servizio (Business logic) annotati come @Service
> Oggetti di manager dei mapper MyBatis annotati come @Repository
>
> All’interno di questo oggetto eseguo del
> @Controller eseguo  @Autowired degli oggetti @Service
> Negli oggetti @Service eseguo @Autowired degli oggetti @Repository
> Che a loro volta iniettano i mapper MyBatis.
>
> Il dubbio che mi attanaglia da qualche giorno è che Spring
> All’avvio istanzia il @Controller con un riferimento a n @Service
> Questi a loro volta saranno “Singleton” che  a loro volta iniettano
> Gli oggetti   @Repository che a loro volta iniettano i mapper MyBatis.
>
> Da quello che ho capito mi trovo in una situazione in cui tutti gli
> oggetti
> sono “Singleton” e questo può andarmi bene per il @controller e forse
> anche
> per il @Service ma mi intimorisce per il layer @Repository.
>
> Ho sbagliato l’approccio ?
> Scusate e grazie .
> Ciao.
>
> 
>



-- 
Massimo Ugues

Reply via email to