Building Complex Java Applications with Oracle 9i JDeveloper - PowerPoint PPT Presentation

About This Presentation
Title:

Building Complex Java Applications with Oracle 9i JDeveloper

Description:

Visual Caf - Symantec. JBuilder. Forte. A Java development tool ... Oracle9i XML Handbook, Chang, Scardina & Kiritzov, (Oracle Press, 2001) ISBN: 007213495X ... – PowerPoint PPT presentation

Number of Views:304
Avg rating:3.0/5.0
Slides: 36
Provided by: drpaul53
Category:

less

Transcript and Presenter's Notes

Title: Building Complex Java Applications with Oracle 9i JDeveloper


1
Building Complex Java Applications with Oracle 9i
JDeveloper
Dr. Paul Dorsey Dulcian, Inc. www.dulcian.com
2
Survey
  • Who is using Oracle JDeveloper for anything?
  • in test
  • in production
  • Who is doing web development?
  • JDev
  • JSP
  • UIX
  • Web services
  • .net
  • Other

3
JDeveloper History
  • Oracle bought some code for Borlands J-Builder
    in 1997.
  • JDeveloper 1.0 (1998)
  • More or less useless
  • JDeveloper 2.0 (1999)
  • Still useless
  • JDeveloper 3.0 (2000)
  • BC4J DAC
  • Finally the right idea!
  • JDeveloper 3.2 (2001)
  • Bug fixes
  • First useful version
  • JDeveloper 9i (2002)
  • First good version
  • Big rewrite
  • Change in direction

4
Where Does JDeveloper Fit?
  • A Java development tool
  • JDeveloper has lots of market competition
  • Visual Café - Symantec
  • JBuilder
  • Forte
  • A Java development tool that works with Oracle
  • No real competition

5
Where JDeveloper fits today
  • Good tool for building Java applications
  • Best tool for building Oracle-based Java
    applications
  • Most of the solution for building JSPs or UIXs

6
JDeveloper in the Development World
  • Weaknesses
  • Inefficient for application development
  • Evolving support for JSP development
  • Strengths
  • Good IDE
  • Extensible - wizards, property inspectors
    (customizers), toolbars, code generators
  • Excellent Oracle database connectivity
  • Supports all Java development
  • Good user interface
  • Rated high by reviewers, much better than 3.2
    release

7
JDevelopers Short-Term Vision
  • Close the gap with Form Builder on development
    efficiency for Web Development - JSP/UIX
  • 6-12 months
  • Support full enterprise-level data modeling
  • 1-2 years
  • Java client support is mature.
  • Add other UML pieces
  • Use cases

8
Is Java all you need to deploy on the Web?
  • NO!!!!
  • Java Deployment
  • JSP - Web
  • Applet Web internal
  • Applications Client/Server
  • Each alternative requires different tools and
    languages

9
Using Form Builder(the good old days)
Forms Client/Server
  • Required Tools
  • Forms
  • TOAD
  • Required Languages
  • SQL
  • PL/SQL

10
Java Applications
  • Client-server
  • Java program runs on PCs JVM
  • Required Tools
  • JDeveloper
  • TOAD
  • Required Languages
  • Java
  • XML
  • JDBC
  • SQLJ
  • SQL, PL/SQL

11
Java Applets
Java applications running over a browser
  • Required Tools
  • JDeveloper
  • TOAD
  • Apache or IAS
  • Required Languages
  • Java
  • XML
  • JDBC
  • SQLJ
  • SQL,PL/SQL
  • Other problems - Security
  • Firewalls
  • Secure Sockets

12
Web Module (JSPs)
  • Sell over the Internet
  • Java back end, HTML front end
  • Required Tools
  • JDeveloper
  • TOAD
  • Apache or IAS
  • DreamWeaver or FrontPage
  • Required Languages
  • Java
  • XML a little
  • JDBC
  • SQLJ
  • SQL, PL/SQL
  • HTML
  • JavaScript

13
Using Java
  • For PL/SQL programmers wanting to move to Java,
    there are some important conceptual differences
    to understand.
  • Learning Java is more than just learning a new
    syntax.
  • You need to take an object-oriented approach.
  • Get Martin Fowlers book Refactoring Improving
    the Design of Existing Code(Addison-Wesley Pub
    Co, 1999)

14
JDevelopers Long-Term Vision
  • A fully integrated design and development
    environment
  • Centralized repository
  • Full UML integration
  • The vision of what Designer and Developer never
    fully achieved
  • Probably never integrate into Designer.maybe
  • JSP is the main development direction.

15
Is JDeveloper ready for production use?
  • Client/Server style application development
  • Yes (but it will take time)
  • Web development
  • Probably (but it will take a LONG time)
  • UIX support
  • Faster JSPs
  • 9.05 end of year

16
BC4J - Overview
  • Main advantage over other development tools
  • Primary way of handling database DML operations
  • Overcomes hurdle of complex database interface to
    handle web-based applications
  • BC4J features
  • Builds a set of Java classes that wrap the DML
    commands and reference an XML document that
    stores the data structure
  • Classes make JDBC calls to the database to take
    over insert, update, delete and lock functions.

17
BC4J - Advantages
  • BC4J classes can implement complex validation.
  • Need to think carefully about whether this is the
    appropriate place for this function
  • Reduced development time
  • Can cache data to be shared among multiple users
  • Allows for tuning capabilities

18
Three areas of BC4J
  • 1. Entities and Associations
  • Cached copy of a portion of the database
  • An entity is linked to, at most, 1 table
  • Not needed for query-only objects
  • 2. View objects and view link objects
  • View objects that sit on top of entities (or
    nothing)
  • 3. Data model
  • Collection of views
  • What the UI applications interact with

19
Default Generator
20
BC4J Files
  • XML redundantly stores data structure of
    relational database
  • Java classes contain complex logic and
    application calls used by other parts of
    application
  • Java library provided by Oracle to handle JDBC
    generation

21
Now 100 Java
  • Slightly faster IDE
  • Some compilation is faster.
  • All in all a little faster.
  • Much nicer user interface

22
JDeveloper Class Diagram
23
UML Modeling
  • Java classes
  • Quite good
  • Useful?
  • BC4J
  • Only entity objects (not view objects)
  • EJBs, Web Services
  • Not sure I care
  • Data Modeling
  • Use Dulcians BRIM

24
JDeveloper Activity Modeler
  • Swim lanes and activities
  • Vaguely familiar if you know Designer
  • Workflow
  • BRIM generates more code.

25
Model-View-Controller (MVC)
  • View
  • Output page
  • JClient
  • Swing
  • J2EE
  • HTML
  • Servlet
  • JSP
  • XML
  • Controller
  • Business Rules
  • Navigation
  • Controls content
  • Always JAVA (mostly)

26
Model
  • Model
  • Connect UI to the database
  • BC4J
  • EJB
  • But it gets messy
  • Controller functions can be anywhere
  • View
  • JClient
  • Java in the application
  • J2EE
  • JavaScript
  • Model
  • BC4J explicitly supports business rules
  • EJBs are Java so they support anything
  • Database
  • Triggers

27
JDeveloper is 2 products(actually more)
  • JClient
  • Very complex
  • Client/Server
  • Can do anything
  • J2EE
  • JSP
  • Framework
  • Struts
  • UIX

28
JClient
  • Swing components
  • Java
  • BC4J
  • Lots of coding
  • Needed for very complex applications
  • Less to learn than J2EE

29
J2EE (Youre not in Kansas anymore)
  • The world is getting simpler, but less flexible
  • Unless you work hard
  • Fully open architecture

30
J2EE The path to enlightenment
  • Build basic JSP
  • Using the JDeveloper Wizards
  • By hand
  • Build basic UIX application
  • Using the JDeveloper Wizards
  • By hand

31
References
  • Oracle 9i JDeveloper Handbook, Koletzke, Dorsey
    Faderman, (Oracle Press, 2002)
    ISBN 0072223847
  • Oracle 9iAS Building J2EE Applications,
    Morrisseau-Leroy (Oracle Press, 2002)
    ISBN 0072226145
  • Oracle 9i Application Server Portal Handbook,
    Vandivier Cox (Oracle Press, 2001)
    ISBN 0072222492
  • Oracle 9i JDBC Programming, Jason Price, (Oracle
    Press, 2002) ISBN 0072222549 (not needed if you
    use BC4J)
  • Java2 The Complete Reference (5th Edition),
    Herbert Schildt, (McGraw-Hill, 2002)
    ISBN 0072224207
  • Struts Kick Start, Turner Bedell, (SAMS, 2002)
    ISBN 0672324725
  • Oracle9i XML Handbook, Chang, Scardina
    Kiritzov, (Oracle Press, 2001) ISBN 007213495X
  • Refactoring Improving the Design of Existing
    Code, Martin Fowler (Addison-Wesley, 1999)
    ISBN 0201485672
  • Oracle 9i Web Development, Bradley D. Brown
    (Oracle Press, 2001) ISBN 0072193883
  • The Java Class Libraries Volumes 1, 2, 3, Chan
    Lee, (Addison-Wesley)
  • The Java Tutorial (series), Campione, et. al
    (Addison-Wesley)

32
JSP/Java Extensions
  • Look for third party resources.
  • Type Java chart into any web search engine
  • Dont reinvent the wheel.

33
More Information about JDev 9i
  • otn.oracle.com
  • Products area
  • The discussion forums are quite active.
  • ODTUG lists
  • Oracle support

34
Share your KnowledgeCall for Articles for the
SELECT Journal
  • Help contribute your knowledge to the larger
    Oracle community
  • Make the SELECT Journal an even more valuable
    resource.
  • Articles wanted on topics of interest to the
    Oracle community.
  • Sign up to be a reviewer of articles.
  • Submit articles, questions, to select_at_ioug.org.

35
Contact Information
  • Dr. Paul Dorsey paul_dorsey_at_dulcian.com
  • Dulcian website - www.dulcian.com
Write a Comment
User Comments (0)
About PowerShow.com