Enviar búsqueda
Cargar
Service-oriented webapp construction using a web metaframework
•
0 recomendaciones
•
317 vistas
Juan Manuel Dodero
Seguir
Internet
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 35
Descargar ahora
Descargar para leer sin conexión
Recomendados
майская москва 2014- финал-1
майская москва 2014- финал-1
Alexander Berezkin
Департамент по конкурентной политике
Департамент по конкурентной политике
Alexander Berezkin
OpenData
OpenData
Juan Manuel Dodero
презентация к итоговой пресс конференции 2013
презентация к итоговой пресс конференции 2013
Alexander Berezkin
dehavelaar.ppt
dehavelaar.ppt
katrien_galloo
Midweek sunparks kempense meren
Midweek sunparks kempense meren
Xsayga
Mashing Up The Guardian
Mashing Up The Guardian
Michael Brunton-Spall
Mashing Up The Guardian
Mashing Up The Guardian
Michael Brunton-Spall
Recomendados
майская москва 2014- финал-1
майская москва 2014- финал-1
Alexander Berezkin
Департамент по конкурентной политике
Департамент по конкурентной политике
Alexander Berezkin
OpenData
OpenData
Juan Manuel Dodero
презентация к итоговой пресс конференции 2013
презентация к итоговой пресс конференции 2013
Alexander Berezkin
dehavelaar.ppt
dehavelaar.ppt
katrien_galloo
Midweek sunparks kempense meren
Midweek sunparks kempense meren
Xsayga
Mashing Up The Guardian
Mashing Up The Guardian
Michael Brunton-Spall
Mashing Up The Guardian
Mashing Up The Guardian
Michael Brunton-Spall
Advanced #2 networking
Advanced #2 networking
Vitali Pekelis
Server Side Swift with Swag
Server Side Swift with Swag
Jens Ravens
The unconventional devices for the Android video streaming
The unconventional devices for the Android video streaming
Matteo Bonifazi
Software contracts or: how I learned to stop worrying and love releasing. Agi...
Software contracts or: how I learned to stop worrying and love releasing. Agi...
Seb Rose
The unconventional devices for the video streaming in Android
The unconventional devices for the video streaming in Android
Alessandro Martellucci
HTTPBuilder NG: Back From The Dead
HTTPBuilder NG: Back From The Dead
noamt
.NET Fest 2018. Антон Молдован. One year of using F# in production at SBTech
.NET Fest 2018. Антон Молдован. One year of using F# in production at SBTech
NETFest
7 Tips on Getting Your Theme Approved the First Time
7 Tips on Getting Your Theme Approved the First Time
Dmitry Mayorov
How to send gzipped requests with boto3
How to send gzipped requests with boto3
Luciano Mammino
LiveOps para games usando o Firebase
LiveOps para games usando o Firebase
Vítor Bruno de Almeida
Recyclerview in action
Recyclerview in action
Pratama Nur Wijaya
Rest-in-contract basic concepts & flows
Rest-in-contract basic concepts & flows
Eric Yu
The Full Power of ASP.NET Web API
The Full Power of ASP.NET Web API
Eyal Vardi
RPC Over DDS
RPC Over DDS
Real-Time Innovations (RTI)
Extending Java EE with CDI and JBoss Forge
Extending Java EE with CDI and JBoss Forge
Antoine Sabot-Durand
The Big Picture and How to Get Started
The Big Picture and How to Get Started
guest1af57e
gbar.jpgglogo.jpgmaa.jpgmaah5txt.css New Pe.docx
gbar.jpgglogo.jpgmaa.jpgmaah5txt.css New Pe.docx
budbarber38650
Introduction to OData
Introduction to OData
Mindfire Solutions
Teaming up WordPress API with Backbone.js in Titanium
Teaming up WordPress API with Backbone.js in Titanium
Jeroen van Dijk
From 🐛 to 🦋: Data Pipelines Evolution from Batch to Streaming
From 🐛 to 🦋: Data Pipelines Evolution from Batch to Streaming
HostedbyConfluent
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
anilsa9823
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Call Girls In Delhi Whatsup 9873940964 Enjoy Unlimited Pleasure
Más contenido relacionado
Similar a Service-oriented webapp construction using a web metaframework
Advanced #2 networking
Advanced #2 networking
Vitali Pekelis
Server Side Swift with Swag
Server Side Swift with Swag
Jens Ravens
The unconventional devices for the Android video streaming
The unconventional devices for the Android video streaming
Matteo Bonifazi
Software contracts or: how I learned to stop worrying and love releasing. Agi...
Software contracts or: how I learned to stop worrying and love releasing. Agi...
Seb Rose
The unconventional devices for the video streaming in Android
The unconventional devices for the video streaming in Android
Alessandro Martellucci
HTTPBuilder NG: Back From The Dead
HTTPBuilder NG: Back From The Dead
noamt
.NET Fest 2018. Антон Молдован. One year of using F# in production at SBTech
.NET Fest 2018. Антон Молдован. One year of using F# in production at SBTech
NETFest
7 Tips on Getting Your Theme Approved the First Time
7 Tips on Getting Your Theme Approved the First Time
Dmitry Mayorov
How to send gzipped requests with boto3
How to send gzipped requests with boto3
Luciano Mammino
LiveOps para games usando o Firebase
LiveOps para games usando o Firebase
Vítor Bruno de Almeida
Recyclerview in action
Recyclerview in action
Pratama Nur Wijaya
Rest-in-contract basic concepts & flows
Rest-in-contract basic concepts & flows
Eric Yu
The Full Power of ASP.NET Web API
The Full Power of ASP.NET Web API
Eyal Vardi
RPC Over DDS
RPC Over DDS
Real-Time Innovations (RTI)
Extending Java EE with CDI and JBoss Forge
Extending Java EE with CDI and JBoss Forge
Antoine Sabot-Durand
The Big Picture and How to Get Started
The Big Picture and How to Get Started
guest1af57e
gbar.jpgglogo.jpgmaa.jpgmaah5txt.css New Pe.docx
gbar.jpgglogo.jpgmaa.jpgmaah5txt.css New Pe.docx
budbarber38650
Introduction to OData
Introduction to OData
Mindfire Solutions
Teaming up WordPress API with Backbone.js in Titanium
Teaming up WordPress API with Backbone.js in Titanium
Jeroen van Dijk
From 🐛 to 🦋: Data Pipelines Evolution from Batch to Streaming
From 🐛 to 🦋: Data Pipelines Evolution from Batch to Streaming
HostedbyConfluent
Similar a Service-oriented webapp construction using a web metaframework
(20)
Advanced #2 networking
Advanced #2 networking
Server Side Swift with Swag
Server Side Swift with Swag
The unconventional devices for the Android video streaming
The unconventional devices for the Android video streaming
Software contracts or: how I learned to stop worrying and love releasing. Agi...
Software contracts or: how I learned to stop worrying and love releasing. Agi...
The unconventional devices for the video streaming in Android
The unconventional devices for the video streaming in Android
HTTPBuilder NG: Back From The Dead
HTTPBuilder NG: Back From The Dead
.NET Fest 2018. Антон Молдован. One year of using F# in production at SBTech
.NET Fest 2018. Антон Молдован. One year of using F# in production at SBTech
7 Tips on Getting Your Theme Approved the First Time
7 Tips on Getting Your Theme Approved the First Time
How to send gzipped requests with boto3
How to send gzipped requests with boto3
LiveOps para games usando o Firebase
LiveOps para games usando o Firebase
Recyclerview in action
Recyclerview in action
Rest-in-contract basic concepts & flows
Rest-in-contract basic concepts & flows
The Full Power of ASP.NET Web API
The Full Power of ASP.NET Web API
RPC Over DDS
RPC Over DDS
Extending Java EE with CDI and JBoss Forge
Extending Java EE with CDI and JBoss Forge
The Big Picture and How to Get Started
The Big Picture and How to Get Started
gbar.jpgglogo.jpgmaa.jpgmaah5txt.css New Pe.docx
gbar.jpgglogo.jpgmaa.jpgmaah5txt.css New Pe.docx
Introduction to OData
Introduction to OData
Teaming up WordPress API with Backbone.js in Titanium
Teaming up WordPress API with Backbone.js in Titanium
From 🐛 to 🦋: Data Pipelines Evolution from Batch to Streaming
From 🐛 to 🦋: Data Pipelines Evolution from Batch to Streaming
Último
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
anilsa9823
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Call Girls In Delhi Whatsup 9873940964 Enjoy Unlimited Pleasure
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
kojalkojal131
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
ellan12
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
SofiyaSharma5
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
ruhi
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
Delhi Call girls
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
APNIC
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
James Anderson
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
Neha Pandey
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
soniya singh
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
soniya singh
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
soniya singh
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Delhi Call girls
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
gwenoracqe6
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
imonikaupta
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
soniya singh
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
singhpriety023
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
Damian Radcliffe
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Call Girls In Delhi Whatsup 9873940964 Enjoy Unlimited Pleasure
Último
(20)
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
CALL ON ➥8923113531 🔝Call Girls Lucknow Lucknow best sexual service Online
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Sector 63 Mamura Noida ✔️☆9289244007✔️☆ Female E...
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Model Towh Delhi 💯Call Us 🔝8264348440🔝
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Hire↠Young Call Girls in Tilak nagar (Delhi) ☎️ 9205541914 ☎️ Independent Esc...
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Lucknow ❤CALL GIRL 88759*99948 ❤CALL GIRLS IN Lucknow ESCORT SERVICE❤CALL GIRL
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Shahpur Jat Escort Service Delhi N.C.R.
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Service-oriented webapp construction using a web metaframework
1.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero seminar service-oriented webapp construction using a metaframework Juan Manuel Dodero juanma.dodero@uca.es
2.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero agenda issue webapp construction context web of data service-oriented web frameworks techniques ReST services JSON data tooling spring ROO framework practice
3.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero issue
4.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero modern webapp construction
5.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero goal [easily] implement service-oriented web apps
6.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero context
7.
Licensed under Creative
Commons Attribution-Share Alike 3.0 service-oriented © 2013-2014 Juan M. Dodero
8.
Licensed under Creative
Commons Attribution-Share Alike 3.0 webofdata © 2013-2014 Juan M. Dodero
9.
Licensed under Creative
Commons Attribution-Share Alike 3.0 web app architecture © 2013-2014 Juan M. Dodero architectural abstraction MVC pattern data access tier abstraction ORM pattern
10.
Licensed under Creative
Commons Attribution-Share Alike 3.0 constructing with web frameworks © 2013-2014 Juan M. Dodero spring framework client code abstraction e.g. MVC pattern inversion of control e.g. Spring DI & AOP
11.
Licensed under Creative
Commons Attribution-Share Alike 3.0 constructing with frameworks © 2013-2014 Juan M. Dodero framework control flow client code class MyObject extends Object { myMethod() {...} } o.myMethod(); abstraction design patterns inversion of control dependency injection
12.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero framework trends
13.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero framework trends
14.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero techniques
15.
Licensed under Creative
Commons Attribution-Share Alike 3.0 example Requirements PizzaShop must build and deploy a set of web services to enable clients: ! get a list of pizzas ! get info on a specific pizza ! submit a pizza purchase order ! etc © 2013-2014 Juan M. Dodero
16.
Licensed under Creative
Commons Attribution-Share Alike 3.0 Request [XML doc] Response [XML doc] webserver SOAP envelope HTTP POST aURL HTTP Response getPizzaList() Request [XML doc] Response [XML doc] HTTP POST aURL HTTP Response getPizza(id)SOAP server Request [XML doc] HTTP POST aURL submit(PizzaOrder) Response [XML doc] HTTP Response SOAP implementation © 2013-2014 Juan M. Dodero
17.
Licensed under Creative
Commons Attribution-Share Alike 3.0 webserver HTTP GET request /pizzas HTTP response Response (HTML/XML/JSON doc) HTTP GET request HTTP response HTTP POST /pizzaorder/id HTTP responseURL to submitted Order Request (HTML/XML/JSON) Pizza List Pizza Pizza Order ReST implementation © 2013-2014 Juan M. Dodero /pizza/id Response (HTML/XML/JSON doc)
18.
Licensed under Creative
Commons Attribution-Share Alike 3.0 ReST design © 2013-2014 Juan M. Dodero
19.
Licensed under Creative
Commons Attribution-Share Alike 3.0 JSON data serialization © 2013-2014 Juan M. Dodero $ curl -s -H "Accept: application/json" http://localhost:8080/pizzashop/pizzas | jq . [ { "version": 1, "toppings": [ { "version": 1, "name": "Mozzarella", "id": 9 }, { "version": 1, "name": "Anchovy fillets", "id": 10 } ], "price": 7.5, "name": "Napolitana", "id": 8, "base": { "version": 1, "name": "Thin Crust", "id": 1 } } ]
20.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero tooling
21.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero “fundamentally improve Java developer productivity without compromising engineering integrity or flexibility"!
22.
Licensed under Creative
Commons Attribution-Share Alike 3.0 spring ROO features ! 100% java: based on other solid, well-known frameworks (spring, hibernate, apache tiles, aspectj, flexJSON, dojoToolkit, etc.) ! convention over configuration ! meta-framework (generates source code) ! generated/manual code keep in sync ! works in build-time (not run-time) ! command console ! extensible by add-ons © 2013-2014 Juan M. Dodero
23.
Licensed under Creative
Commons Attribution-Share Alike 3.0 roo architecture © 2013-2014 Juan M. Dodero
24.
Licensed under Creative
Commons Attribution-Share Alike 3.0 ReST URI pattern © 2013-2014 Juan M. Dodero
25.
Licensed under Creative
Commons Attribution-Share Alike 3.0 demo roo console © 2013-2014 Juan M. Dodero
26.
Licensed under Creative
Commons Attribution-Share Alike 3.0 demo web app © 2013-2014 Juan M. Dodero
27.
Licensed under Creative
Commons Attribution-Share Alike 3.0 demo domain model © 2013-2014 Juan M. Dodero
28.
Licensed under Creative
Commons Attribution-Share Alike 3.0 demo roo script // Create a new project project --topLevelPackage com.springsource.pizzashop // Setup JPA persistence using EclipseLink and H2 jpa setup --provider ECLIPSELINK --database H2_IN_MEMORY // Create domain entities entity jpa --class ~.domain.Base --activeRecord false --testAutomatically field string --fieldName name --sizeMin 2 –notNull entity jpa --class ~.domain.Topping --activeRecord false -- testAutomatically field string --fieldName name --sizeMin 2 –notNull entity jpa --class ~.domain.Pizza --activeRecord false --testAutomatically field string --fieldName name --notNull --sizeMin 2 field number --fieldName price --type java.math.BigDecimal field set --fieldName toppings --type ~.domain.Topping field reference --fieldName base --type ~.domain.Base entity jpa --class ~.domain.PizzaOrder --testAutomatically --activeRecord false --identifierType ~.domain.PizzaOrderPk field string --fieldName name --notNull --sizeMin 2 field string --fieldName address --sizeMax 30 field number --fieldName total --type java.math.BigDecimal field date --fieldName deliveryDate --type java.util.Date field set --fieldName pizzas --type ~.domain.Pizza field string --fieldName shopCountry --class ~.domain.PizzaOrderPk field string --fieldName shopCity field string --fieldName shopName // Define a repository layer for persistence repository jpa --interface ~.repository.ToppingRepository --entity ~.domain.Topping repository jpa --interface ~.repository.BaseRepository --entity ~.domain.Base repository jpa --interface ~.repository.PizzaRepository --entity ~.domain.Pizza repository jpa --interface ~.repository.PizzaOrderRepository --entity ~.domain.PizzaOrder // Define a service/façade layer service type --interface ~.service.ToppingService --entity ~.domain.Topping service type --interface ~.service.BaseService --entity ~.domain.Base service type --interface ~.service.PizzaService --entity ~.domain.Pizza service type --interface ~.service.PizzaOrderService --entity ~.domain.PizzaOrder // Offer JSON remoting for all domain types through Spring MVC json all --deepSerialize web mvc json setup web mvc json all --package ~.web web mvc setup web mvc all --package ~.web © 2013-2014 Juan M. Dodero
29.
Licensed under Creative
Commons Attribution-Share Alike 3.0 demo json data © 2013-2014 Juan M. Dodero $ curl -s -H "Accept: application/json" http://localhost:8080/pizzashop/pizzas | jq . [ { "version": 1, "toppings": [ { "version": 1, "name": "Mozzarella", "id": 9 }, { "version": 1, "name": "Anchovy fillets", "id": 10 } ], "price": 7.5, "name": "Napolitana", "id": 8, "base": { "version": 1, "name": "Thin Crust", "id": 1 } } ]
30.
Licensed under Creative
Commons Attribution-Share Alike 3.0 ~.domain.Pizza © 2013-2014 Juan M. Dodero @RooJavaBean @RooToString @RooJpaEntity @RooJson(deepSerialize = true) public class Pizza { @NotNull @Size(min = 2) private String name; private BigDecimal price; @ManyToMany(cascade = CascadeType.ALL) private Set<Topping> toppings = new HashSet<Topping>(); @ManyToOne private Base base; }
31.
Licensed under Creative
Commons Attribution-Share Alike 3.0 Pizza_Roo_JavaBean.aj © 2013-2014 Juan M. Dodero privileged aspect Pizza_Roo_JavaBean { public String Pizza.getName() { return this.name; } public void Pizza.setName(String name) { this.name = name; } ... public Set<Topping> Pizza.getToppings() { return this.toppings; } public void Pizza.setToppings(Set<Topping> toppings) { this.toppings = toppings; } public Base Pizza.getBase() { return this.base; } public void Pizza.setBase(Base base) { this.base = base; } }
32.
Licensed under Creative
Commons Attribution-Share Alike 3.0 Pizza_Roo_Json.aj © 2013-2014 Juan M. Dodero privileged aspect Pizza_Roo_Json { ... public String Pizza.toJson(String[] fields) { return new JSONSerializer() .include(fields).exclude("*.class").deepSerialize(this); } public static Pizza Pizza.fromJsonToPizza(String json) { return new JSONDeserializer<Pizza>() .use(null, Pizza.class).deserialize(json); } public static String Pizza.toJsonArray(Collection<Pizza> collection) { return new JSONSerializer() .exclude("*.class").deepSerialize(collection); } ... public static Collection<Pizza> Pizza.fromJsonArrayToPizzas(String json) { return new JSONDeserializer<List<Pizza>>() .use("values", Pizza.class).deserialize(json); } }
33.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero http://dodero.github.io/sosc-wmf/ practice
34.
Licensed under Creative
Commons Attribution-Share Alike 3.0 references © 2013-2014 Juan M. Dodero
35.
Licensed under Creative
Commons Attribution-Share Alike 3.0 © 2013-2014 Juan M. Dodero Attribution-Share Alike 3.0
Descargar ahora