SlideShare una empresa de Scribd logo
1 de 15
An overview
Niels Gorter 14 August 2013
Bean Datacontrol
2
Agenda
• Plaats Datacontrols in architectuur
• Soorten Bean Datacontrols
• Ondersteunde types in Bean
• Wizard
• DEMO Model Based LOV
• Usecases
3
Architectuur
4
Soorten Bean Datacontrols
• JPA Based
– Gebaseerd op JPQLDataFilterHandler
– Grote verschil met EJB DC = transactie management
• Non-JPA Based
– Gebaseerd op DataFilterHandler
– Zelf maken CRUD – Pagination - Transaction
• Custom Bean DataControl
5
Ondersteunde types
Gelijk aan de ondersteuning van de EJB Dacontrols
• Java primitive types en arrays
• Complex Java types
• Java scalar types
• Collection types
• Generics, strongly-typed collections
• Java Persistence API (JPA) features such as:
– @Id annotations to determine primary keys
– @NamedQuery annotations and the full range of JPQL syntax for named queries
– @JoinColumn annotations to denote master-detail and list-of-value (LOV)
relationships.
6
Wizard – 1 van 4
• Naam Datacontrol
• Bean waarop we de
Datacontrol maken
7
Wizard – 2 van 4
• Features
– Failover
– Transactions
– Custom CRUD
• Implentatie Class
8
Wizard – 2 van 4
• Failover
– Voegt methodes toe om failover te implementeren. Create, restore en
removesnapshot
– Zelfde als failover op een BC4J Application Module. Resource intensief.
• Transactions
– Voegt commitTransaction(), rollbackTransaction() en isTransactionDirty() toe
(Explicit)
– Commit, Rollback action op Datacontrol
– ADFc Transactions
• Custom CRUD
– Voegt methodes toe voor oa. CreateRow, DeleteRow action
– Voor JPA based alleen nodig als je ze wilt overschrijven
9
Wizard – 3 van 4
• Acces Mode
– Scrollable
– Range Paging
• Support Named Criteria
• Generate Metadata
10
Wizard – 3 van 4
• Access Mode (Pagination)
– Hier wordt Access Mode op Datacontrol scope gezet
– Overrides door annotatie: @AccessMode(type=AccessModeType.SCROLLABLE)
– JPA: Support Named Criteria moet aan staan om te kunnen selecteren
– Non JPA: 3 methodes zelf implementeren
• List<EntityBeanName> getEntityBeanNameList()
• List<EntityBeanName> getEntityBeanNameList(int firstResult, int maxResults)
• long getEntityBeanNameListSize() Scrollable houd opgehaalde records in memory
– Scrollable voegt elke opgehaalde set toe aan memory
– Range Paging houdt alleen de laatst opgehaalde set in memory
– No Pagination – Instellen middels annotatie
11
Wizard – 3 van 4
• Support Named Criteria
– Alleen beschikbaar voor JPA based beans die queryByRange() implementeren
– Search Forms
• Generate MetaData
– Genereert de XML files die de objecten beschrijven
– In principe niet nodig.
12
Wizard – 4 van 4
• Overzicht
13
Usecases
• Geen andere Datacontrols beschikbaar
• Meer controle / functionaliteit nodig
Als je maar een Pojo hebt
14
DEMO
15

Más contenido relacionado

Más de Getting value from IoT, Integration and Data Analytics

Más de Getting value from IoT, Integration and Data Analytics (20)

AMIS Oracle OpenWorld en Code One Review 2018 - Blockchain, Integration, Serv...
AMIS Oracle OpenWorld en Code One Review 2018 - Blockchain, Integration, Serv...AMIS Oracle OpenWorld en Code One Review 2018 - Blockchain, Integration, Serv...
AMIS Oracle OpenWorld en Code One Review 2018 - Blockchain, Integration, Serv...
 
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
 
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaSAMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
 
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Data
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: DataAMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Data
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Data
 
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Cloud Infrastructure
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Cloud Infrastructure AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Cloud Infrastructure
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Cloud Infrastructure
 
10 tips voor verbetering in je Linkedin profiel
10 tips voor verbetering in je Linkedin profiel10 tips voor verbetering in je Linkedin profiel
10 tips voor verbetering in je Linkedin profiel
 
Iot in de zorg the next step - fit for purpose
Iot in de zorg   the next step - fit for purpose Iot in de zorg   the next step - fit for purpose
Iot in de zorg the next step - fit for purpose
 
Iot overview .. Best practices and lessons learned by Conclusion Conenct
Iot overview .. Best practices and lessons learned by Conclusion Conenct Iot overview .. Best practices and lessons learned by Conclusion Conenct
Iot overview .. Best practices and lessons learned by Conclusion Conenct
 
IoT Fit for purpose - how to be successful in IOT Conclusion Connect
IoT Fit for purpose - how to be successful in IOT Conclusion Connect IoT Fit for purpose - how to be successful in IOT Conclusion Connect
IoT Fit for purpose - how to be successful in IOT Conclusion Connect
 
Industry and IOT Overview of protocols and best practices Conclusion Connect
Industry and IOT Overview of protocols and best practices  Conclusion ConnectIndustry and IOT Overview of protocols and best practices  Conclusion Connect
Industry and IOT Overview of protocols and best practices Conclusion Connect
 
IoT practical case using the people counter sensing traffic density build usi...
IoT practical case using the people counter sensing traffic density build usi...IoT practical case using the people counter sensing traffic density build usi...
IoT practical case using the people counter sensing traffic density build usi...
 
R introduction decision_trees
R introduction decision_treesR introduction decision_trees
R introduction decision_trees
 
Introduction overviewmachinelearning sig Door Lucas Jellema
Introduction overviewmachinelearning sig Door Lucas JellemaIntroduction overviewmachinelearning sig Door Lucas Jellema
Introduction overviewmachinelearning sig Door Lucas Jellema
 
IoT and the Future of work
IoT and the Future of work IoT and the Future of work
IoT and the Future of work
 
Oracle OpenWorld 2017 Review (31st October 2017 - 250 slides)
Oracle OpenWorld 2017 Review (31st October 2017 - 250 slides)Oracle OpenWorld 2017 Review (31st October 2017 - 250 slides)
Oracle OpenWorld 2017 Review (31st October 2017 - 250 slides)
 
Ethereum smart contracts - door Peter Reitsma
Ethereum smart contracts - door Peter ReitsmaEthereum smart contracts - door Peter Reitsma
Ethereum smart contracts - door Peter Reitsma
 
Blockchain - Techniek en usecases door Robert van Molken - AMIS - Conclusion
Blockchain - Techniek en usecases door Robert van Molken - AMIS - ConclusionBlockchain - Techniek en usecases door Robert van Molken - AMIS - Conclusion
Blockchain - Techniek en usecases door Robert van Molken - AMIS - Conclusion
 
kennissessie blockchain - Wat is Blockchain en smart contracts @Conclusion
kennissessie blockchain -  Wat is Blockchain en smart contracts @Conclusion kennissessie blockchain -  Wat is Blockchain en smart contracts @Conclusion
kennissessie blockchain - Wat is Blockchain en smart contracts @Conclusion
 
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
 
Omc AMIS evenement 26012017 Dennis van Soest
Omc AMIS evenement 26012017 Dennis van SoestOmc AMIS evenement 26012017 Dennis van Soest
Omc AMIS evenement 26012017 Dennis van Soest
 

Oracle 12c Launch Event 04 Niels Gorter Bean Data Control

  • 1. An overview Niels Gorter 14 August 2013 Bean Datacontrol
  • 2. 2 Agenda • Plaats Datacontrols in architectuur • Soorten Bean Datacontrols • Ondersteunde types in Bean • Wizard • DEMO Model Based LOV • Usecases
  • 4. 4 Soorten Bean Datacontrols • JPA Based – Gebaseerd op JPQLDataFilterHandler – Grote verschil met EJB DC = transactie management • Non-JPA Based – Gebaseerd op DataFilterHandler – Zelf maken CRUD – Pagination - Transaction • Custom Bean DataControl
  • 5. 5 Ondersteunde types Gelijk aan de ondersteuning van de EJB Dacontrols • Java primitive types en arrays • Complex Java types • Java scalar types • Collection types • Generics, strongly-typed collections • Java Persistence API (JPA) features such as: – @Id annotations to determine primary keys – @NamedQuery annotations and the full range of JPQL syntax for named queries – @JoinColumn annotations to denote master-detail and list-of-value (LOV) relationships.
  • 6. 6 Wizard – 1 van 4 • Naam Datacontrol • Bean waarop we de Datacontrol maken
  • 7. 7 Wizard – 2 van 4 • Features – Failover – Transactions – Custom CRUD • Implentatie Class
  • 8. 8 Wizard – 2 van 4 • Failover – Voegt methodes toe om failover te implementeren. Create, restore en removesnapshot – Zelfde als failover op een BC4J Application Module. Resource intensief. • Transactions – Voegt commitTransaction(), rollbackTransaction() en isTransactionDirty() toe (Explicit) – Commit, Rollback action op Datacontrol – ADFc Transactions • Custom CRUD – Voegt methodes toe voor oa. CreateRow, DeleteRow action – Voor JPA based alleen nodig als je ze wilt overschrijven
  • 9. 9 Wizard – 3 van 4 • Acces Mode – Scrollable – Range Paging • Support Named Criteria • Generate Metadata
  • 10. 10 Wizard – 3 van 4 • Access Mode (Pagination) – Hier wordt Access Mode op Datacontrol scope gezet – Overrides door annotatie: @AccessMode(type=AccessModeType.SCROLLABLE) – JPA: Support Named Criteria moet aan staan om te kunnen selecteren – Non JPA: 3 methodes zelf implementeren • List<EntityBeanName> getEntityBeanNameList() • List<EntityBeanName> getEntityBeanNameList(int firstResult, int maxResults) • long getEntityBeanNameListSize() Scrollable houd opgehaalde records in memory – Scrollable voegt elke opgehaalde set toe aan memory – Range Paging houdt alleen de laatst opgehaalde set in memory – No Pagination – Instellen middels annotatie
  • 11. 11 Wizard – 3 van 4 • Support Named Criteria – Alleen beschikbaar voor JPA based beans die queryByRange() implementeren – Search Forms • Generate MetaData – Genereert de XML files die de objecten beschrijven – In principe niet nodig.
  • 12. 12 Wizard – 4 van 4 • Overzicht
  • 13. 13 Usecases • Geen andere Datacontrols beschikbaar • Meer controle / functionaliteit nodig Als je maar een Pojo hebt
  • 15. 15