Webinar for IT- udviklere Oracle Applica7on Express (APEX)
Foredragsholder
Her skal flyeren være
Agenda Introduk7on Installa7on & Administra7on Applika7onsudvikling APEX 4.0 GeMng started Q & A
Introduk7on Hvad er APEX Unique Rapid Applica7on Development (RAD) tool for the Oracle Database Browser based for Development, Deployment & Use Declara7vely build professional Web 2.0 applica7ons that are fast and secure Leverages full Oracle database capabili7es and exis7ng SQL & PL/SQL skills Standard component of the database Fully supported, no- cost op7on with all edi7ons of the Oracle Database Easy to develop Easy to deploy Easy to manage
Introduk7on Anvendelses muligheder Alle database baserede web- applika7oner Internet/intranet løsninger Søgning og præsenta7on af oplysninger Dashboards, Business Intelligence Lækre web 2.0 løsninger Hur7ge løsninger Add- on løsninger (ebusiness suite R11,R12 )
Udviklingsværktøjer Introduk7on Firefox, IE, Chrome, Opera Firebug plugin 7l firefox SQLDeveloper PL/SQL Developer TOAD Teksteditor (CSS, Javascript)
Out of the box Introduk7on Reports Forms Valida7ons Processes Transla7on Services Condi7onal Processing Charts Computa7ons Authen7ca7on Calendar Branches Authoriza7on Templates Web Services Session State Management Naviga7on Email Services Logging & Monitoring
FUDS Only good for Excel / Access replacement Successfully used to meet a large variety of use cases from small to very large, from simple to very complex Simple architecture won t scale Single 7er architecture results in fewer network traversals and CPU cycles per page request Takes full advantage of Oracle Database capabili7es and features as built 100% inside database Proven by countless customer success stories and sites like ARIA, AskTom, ThinkQuest APEX is not here to stay APEX 3.2 represents the 8th major release since 2004 Integrated into Oracle 11gR1 Seed Database (Part of the core database as a standard feature) Oracle increasingly relies on APEX for internal applica7ons to improve business processes It s free so it can t be Oracle provides APEX, SQL Developer, etc. at no- cost to encourage development in Oracle Technologies and increase u7liza7on of the Oracle Database Dedicated APEX Oracle Support team available as part of standard Oracle Database license Oracle will charge for APEX in the future Oracle has no plans to charge for APEX Introduk7on No precedent exists for Oracle charging for a database feature that is currently no- cost
APEX Fordele Introduk7on Man bruger ikke 7d på triviel programmering Ekstremt hu7gt 7l data- bundne applika7oner (CRUD) Design Implementer Kør = Hur7g udvikling/test Let at finde rundt I programmet Stærkt community (support, samples, plugins) Let og sikker deployment Hur7g afvikling og skalerbart Alt gemmes I databasen (backup, meta- data) Gra7s
Installa7on & Administra7on Installa7on af sopware Apexins.sql Listener images tomcat Cocoon Jasper reports
Installa7on & Administra7on Administra7ons interface (internal)
Installa7on & Administra7on Workspaces & Applica7ons
Demo Installa7on & Administra7on
Applika7onsudvikling URL f?p=app:page:session:request:debug:clearcache:itemnames:itemvalues:printerfriendly App = Applika7on (alias eller nummer) Page = Side (alias eller nummer) Session = Session id (context) Request = Request som skal udføres Debug = YES / NO Clearcache = Clear session cache for element itemnames = Komma- separeret liste af session items itemvalues = Komma- separeret liste af værdier Printerfriendly = Udskripsvenlig visning
Session state Applika7onsudvikling f?p=app:page:session:request:debug:clearcache:itemnames:itemvalues:printerfriendly APEX sørger for session- management Alle sessioner får et unikt ID Session context kan 7lgås igennem subs$tu$on strings En APEX session er IKKE det samme som en datbase session. APP_ALIAS APP_ID APP_IMAGES APP_PAGE_ID APP_SESSION APP_UNIQUE_PAGE_ID APP_USER AUTHENTICATED_URL_PREFIX BROWSER_LANGUAGE CURRENT_PARENT_TAB_TEXT DEBUG HOME_LINK LOGIN_URL IMAGE_PREFIX Applica7on Express SCHEMA OWNER PRINTER_FRIENDLY LOGOUT_URL PROXY_SERVER PUBLIC_URL_PREFIX REQUEST SQLERRM SYSDATE_YYYYMMDD WORKSPACE_IMAGES
Best prac7ses Applika7onsudvikling Model / View / Controller Model: En god datamodel View: Themes/Templates 7l brugerinterface Controller: Business logic i PL/SQL Pakker Genbrug Shared components Templates User interface defaults Centralisering af logic Javascript libraries PL/SQL Packages
Sikkerhed Applika7onsudvikling Authen7ca7on APEX, database, custom, ldap Authoriza7on Hvem må hvad (sider, regioner ) Session state protec7on Beskyuelse imod URL Tampering (checksum) SQL Injec7on Tag højde for det i programmeringen
Applika7onsudvikling Udskrip APEX Indbygget Eksporter 7l Excel Udskrip i PDF Andre muligheder BI Publisher XSL- FO (stylesheets) Jasper Reports / ireport (open source) Oracle Reports
Performance Applika7onsudvikling Op7meret SQL Bind variable Index Analyze Caching Images, css, js igennem Apache Caching af regioner Komprimering (mod_gzip, mod_deflate)
Applika7onsudvikling Deployment & Teamwork Deployment Ddl.sql - DDL fil med database ændringer. Export.sql Alle database objekter (view, plsql) Fxxx.sql Apex export fil Suppor7ng objects Teamwork Page locking Rapporter (hvem har ændret hvad) Versionsstyring (CVS, SVN )
Demo Applika7onsudvikling
Demo APEX 4.0
GeMng started Installa7on Oracle Database (XE, Standard, Enterprise ) APEX Listener Oracle Applica7on Server Apache (proxy, redirect)
Udviklingsværktøjer GeMng started Firefox, IE, Chrome, Opera Firebug plugin 7l firefox SQLDeveloper PL/SQL Developer TOAD Teksteditor (CSS, Javascript)
GeMng started Dokumenta7on, eksempler, community
GeMng started Dokumenta7on, eksempler, community Apex.oracle.com Intern help Bøger Kurser Blogs (apexblogs.info) Eksempel applika7oner Øvelse (egen installa7on eller oracle hosted)
Oracle Applica7on Express Q & A