Preface
Who Should Read This Book
This book has been written for the following audiences:
- Management--You might have purchased Oracle8i for reasons other than Java development within the database. However, if you want to know more about Oracle8i Java features, see "Overview of Oracle8i Java Documentation" for a management perspective.
- Non-Java Developers--Oracle database programming consists of PL/SQL and other non-Java programming. For experienced PL/SQL developers who are not familiar with Java, a brief overview of Java and object-oriented concepts is discussed in the first part of Chapter 1, "Introduction to Java in Oracle8i". For more detailed information on Java, see "Java Information Resources" at the end of this Preface.
- Java Developers--Pure Java developers are used to a Java environment that follows Sun Microsystem's specification. However, when Java is combined in the database, both Java and database concepts merge. Thus, the Java environment within Oracle8i is expanded to include database concerns. The bulk of this book discusses the differences you must understand to run Java in the database. The following outlines the two viewpoints that arise from this merge:
- Java environment--Note that Oracle8i delivers a compliant Java implementation--any 100% pure Java code will work. Oracle8i JServer affects your Java development in the way you manage your classes and the environment in which your classes exist. For example, the classes must be loaded into the database. In addition, there is a clearer separation of client and server in the Oracle8i model.
- Database environment--You must be aware of database concepts for managing your Java objects. This book gives you a comprehensive view of how the two well-defined realms--Oracle8i database and Java environment--fit together. For example, when deciding on your security policies, you must consider both database security and Java security for a comprehensive security policy.
Java API Programming Models
The building blocks Java developers use in Oracle8i are as follows:
- Java stored procedures--You can develop Java applications that are stored in the database. Once loaded, these procedures can be invoked from SQL, PL/SQL, or as triggers. See the Oracle8i Java Stored Procedures Developer's Guide.for more information.
- JDBC and SQLJ--You can write a Java application that accesses SQL data from the client or directly on the server.
- Distributed Java CORBA or EJB applications--You can develop distributed EJB or CORBA applications that are loaded and invoked in the database.
Each of these models is briefly discussed in Chapter 1, "Introduction to Java in Oracle8i" and examples are given in Chapter 3, "Invoking Java in the Database". Both of these chapters should help you decide which model to use for your particular application. Once you decide on the appropriate model, examine the appropriate developer's guide for in depth information on each model. For example, if you decide to use Java stored procedures, you should examine the book Oracle8i Java Stored Procedures Developer's Guide.
Java Information Resources
The following table lists the sources of current information discussed in the Java programming documentation suite:
Your local or on-line bookstore has many useful Java references. You can find another listing of materials that are helpful to beginners and that you can use as general references, in the Oracle8i Java Stored Procedures Developer's Guide.