PDA

Visualizza la versione completa : Come creare un carrello della spesa


tulipan
26-02-2020, 12:02
Buongiorno,

come faccio a creare un carello della spesa utilizzando gli Ejb?

Grazie
Tulipan

andbin
26-02-2020, 12:21
come faccio a creare un carello della spesa utilizzando gli Ejb?

Dovresti chiarire un pochino il contesto e precisare come si intenderebbe gestire il carrello della spesa (non c'è un solo unico modo, uno ad esempio è tenerlo su DB, il che cambia le cose ..).
Se si intende il fatto di mantenere in memoria una lista di prodotti e quindi gestire uno "stato conversazionale" tra più richieste di un client, allora con un EJB lo si fa con un Session Bean di tipo "stateful" (SFSB).

Precisa anche cosa c'è (non è fondamentale ma giusto per capire il contesto) al di "sopra" degli EJB: hai delle Servlet? Delle risorse JAX-RS? Altro?

tulipan
27-02-2020, 13:01
si intendevo gestire il carrello mantenendo in memoria una lista di prodotti e quindi gestire uno "stato conversazionale" tra più richieste di un client;
oltre al carrello dovranno esserci delle risorse JAX-RS...............

andbin
27-02-2020, 13:34
oltre al carrello dovranno esserci delle risorse JAX-RS...............[/COLOR]
Descrivi meglio la parte "sopra". Quindi espone webservice tramite JAX-RS (pertanto NON pagine web), giusto? E come intendi gestire il fatto di avere "sotto" qualcosa di stateful come appunto il EJB del carrello?

tulipan
15-03-2020, 17:02
Buon pomeriggio,
le specifiche del cliente sono cambiate . Quindi, mi ritrovo a dover creare un micro-servizio che gestisce il carrello della spesa di un e-commerce con Spring Boot. Come faccio? Premetto che non l'ho mai fatto una cosa del genere. Non so da dove iniziare........

tulipan

andbin
15-03-2020, 18:49
le specifiche del cliente sono cambiate . Quindi, mi ritrovo a dover creare un micro-servizio che gestisce il carrello della spesa di un e-commerce con Spring Boot.
Ah, ok, quindi una cosa radicalmente diversa da EJB, JAX-RS e quant'altro.


Come faccio? Premetto che non l'ho mai fatto una cosa del genere. Non so da dove iniziare........
Beh, a parte l'uso di Spring Boot, il resto a livello concettuale ti è stato precisato? Di cosa si deve occupare la applicazione? Solo di esporre dei servizi (es. REST) e eventualmente accedere ad una base dati? Se si tratta di servizi, gli endpoint da implementare ti sono stati comunicati a priori o ti è stata data abbastanza libertà nella scelta?
Chi dovrà invocare questi servizi?

tulipan
15-03-2020, 19:19
Allora , mi è stato spiegato che la webapp dovrà accedere ad un DB MYSQL (almeno per il momento poi quando il progetto andrà a "regime" forse si migrerà tutto sul DBMS Oracle 11G) e inoltre dovrà esporre dei servizi REST ........su questi ultimi mi è stato dato abbastanza libertà (mi è stato specificato solo che dopo si dovranno creare app per ANDROID e IOS).
Spero di essere stato chiaro!

saluti
tulipan

andbin
15-03-2020, 19:48
Spero di essere stato chiaro!
Sì è chiaro in generale ma .... ora devi dettagliare (almeno per te) un bel po' di cose. Non basta quel poco che hai detto!

Tanto per dirne alcune.

- Parli di "carrello della spesa" ok ma deve essere una gestione molto generalizzata che possa andare bene in molti contesti differenti oppure deve essere orientato ad una tipologia molto ben precisa di "commercio" in cui un elemento del carrello è una cosa ben specifica?

- Di quante tabelle/relazioni si parla? Poche? Con quale approccio si intende accedere al DB? JDBC nudo e crudo? Il JDBC template di Spring? Spring Data JPA? Altro?

- Per gli endpoint ti è stata data liberta, ok, ma trattandosi di servizi REST (se fatti come si deve!) hai già individuato le "risorse" da trattare e quali operazioni "CRUD" devono essere fatte?

- I dati saranno esposti/ricevuti in quale formato? Tipicamente si usa JSON o XML.

E sicuramente altro che ora non mi viene in mente ...

tulipan
16-03-2020, 15:39
1. Il carrello della spesa conterrà dei prodotti facenti parte di una specifica categoria;
2. In che senso di quali tabelle/relazioni si tratta? La domanda in questione si riferisce a quante tab. ha tutto il DB?
Al Database ci accedo con in Spring Data JPA.
3. I dati saranno esposti/ricevuti in formato JSON.

andbin
16-03-2020, 15:52
1. Il carrello della spesa conterrà dei prodotti facenti parte di una specifica categoria;
Va bene, purché tu sappia bene la struttura dei dati da trattare (e poi esporre/ricevere).


2. In che senso di quali tabelle/relazioni si tratta? La domanda in questione si riferisce a quante tab. ha tutto il DB?
Sì intendevo quello .... era per valutare quale approccio per l'accesso al DB poteva essere minimale/giusto. Ma se hai detto che userai Spring Data JPA, benissimo.


3. I dati saranno esposti/ricevuti in formato JSON.
Ok. Dovresti avere già tutto a posto, lo "starter" spring-boot-starter-web (per v 1.5) tira già dentro la ben nota Jackson.

Quindi ci sono ancora dubbi/problemi? Quello che hai detto va tutto "bene" ma appunto da qui a realizzare poi il tutto richiede svariate altre valutazioni e pensieri ... ;)

Loading