SlideShare a Scribd company logo
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

More Related Content

PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Blockchain, Integration, Serv...
PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: SaaS
PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Data
PPTX
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Cloud Infrastructure
PPTX
10 tips voor verbetering in je Linkedin profiel
PPTX
Iot in de zorg the next step - fit for purpose
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: SaaS
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Data
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 1: Cloud Infrastructure
10 tips voor verbetering in je Linkedin profiel
Iot in de zorg the next step - fit for purpose

More from Getting value from IoT, Integration and Data Analytics (20)

PPTX
Iot overview .. Best practices and lessons learned by Conclusion Conenct
PPTX
IoT Fit for purpose - how to be successful in IOT Conclusion Connect
PPTX
Industry and IOT Overview of protocols and best practices Conclusion Connect
PPTX
IoT practical case using the people counter sensing traffic density build usi...
PPTX
Introduction overviewmachinelearning sig Door Lucas Jellema
PPTX
Oracle OpenWorld 2017 Review (31st October 2017 - 250 slides)
PPTX
Ethereum smart contracts - door Peter Reitsma
PPTX
Blockchain - Techniek en usecases door Robert van Molken - AMIS - Conclusion
PPTX
kennissessie blockchain - Wat is Blockchain en smart contracts @Conclusion
PPTX
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
PDF
Omc AMIS evenement 26012017 Dennis van Soest
PPTX
PPTX
Oow2016 review--paas-microservices-
PPTX
Oow2016 review-iaas-paas-13th-18thoctober
PPTX
PDF
oracle openworld review UX presentation 2016
PPTX
Innovation tour presentation paul oow16 review
Iot overview .. Best practices and lessons learned by Conclusion Conenct
IoT Fit for purpose - how to be successful in IOT 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...
Introduction overviewmachinelearning sig Door Lucas Jellema
Oracle OpenWorld 2017 Review (31st October 2017 - 250 slides)
Ethereum smart contracts - door Peter Reitsma
Blockchain - Techniek en usecases door Robert van Molken - AMIS - Conclusion
kennissessie blockchain - Wat is Blockchain en smart contracts @Conclusion
Internet of Things propositie - Enterprise IOT - AMIS - Conclusion
Omc AMIS evenement 26012017 Dennis van Soest
Oow2016 review--paas-microservices-
Oow2016 review-iaas-paas-13th-18thoctober
oracle openworld review UX presentation 2016
Innovation tour presentation paul oow16 review
Ad

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