Oracle9i Java Developer's Guide
Release 1 (9.0.1)

Part Number A90209-01
Go To Documentation Library
Home
Go To Product List
Book List
Go To Index
Index

Master Index

Feedback

Go to next page

Contents

Title and Copyright Information

Send Us Your Comments

Preface

Who Should Read This Book
Java API Programming Models
Java Information Resources
Documentation Accessibility

1 Introduction to Java in Oracle9i

Chapter Contents
Overview of Java
Java and Object-Oriented Programming Terminology
Classes
Attributes
Methods
Class Hierarchy
Interfaces
Polymorphism
The Java Virtual Machine (JVM)
Key Features of the Java Language
Why Use Java in Oracle9i?
Multithreading
Automated Storage Management
Footprint
Performance
How Native Compilers Improve Performance
Dynamic Class Loading
Oracle's Java Application Strategy
Java Stored Procedures
PL/SQL Integration and Oracle RDBMS Functionality
JDBC Drivers
SQLJ - Embedded SQL in Java
Dynamic HTML Invoking Java
Servlets
JavaServer Pages
Distributed Application Development
Using EJB Components
Development Tools
Overview of Oracle9i Java Documentation

2 Writing Java Applications on Oracle9i

Overview
Terminology
Database Sessions Imposed on Java Applications
Session Lifetime
Java Supported APIs
Execution Control
Migrating from JDK 1.1 to Java 2
Your Development Environment
JDBC 2.0
Server Applications Using JDBC 2.0
Clients Using JDBC 2.0
Java 2 Security
Java 2 ORB APIs
JNDI Lookup
Oracle9i ORB Interface
CORBA ORB Interface
Backward Compatibility for Previous Release CORBA and EJB Applications
Java Code, Binaries, and Resources Storage
Preparing Java Class Methods for Execution
Compiling Java Classes
Compiling Source Through javac
Compiling Source Through loadjava
Compiling Source at Runtime
Specifying Compiler Options
Automatic Recompilation
Resolving Class Dependencies
Allowing References to Non-Existent Classes
ByteCode Verifier
Loading Classes
Defining the Same Class Twice
Designating Database Privileges and JVM Permissions
Loading JAR or ZIP Files
How to Grant Execute Rights
Controlling the Current User
Checking Java Uploads
Object Name and Type
Status
Publishing
User Interfaces on the Server
Shortened Class Names
Class.forName() in Oracle9i
Supply the ClassLoader in Class.forName
Supply Class and Schema Names to classForNameAndSchema
Supply Class and Schema Names to lookupClass
Supply Class and Schema Names when Serializing
Class.forName Example
Managing Your Operating System Resources
Overview of Operating System Resources
Operating System Resource Access
Operating System Resource Lifetime
Referencing Files with Relative Path Names
Garbage Collection and Operating System Resources
Operating System Resources Affected Across Calls
Sockets
Threading in Oracle9i
Thread Lifecycle

3 Invoking Java in the Database

Overview
Invoking Java Methods
Utilizing Java Stored Procedures
Utilizing Distributed Objects With CORBA and EJB
IIOP Transport
Naming
Creating and Deploying Enterprise JavaBeans
Using an EJB
Session Shell
Utilizing Remote Method Invocation (RMI)
Utilizing Java Native Interface (JNI) Support
Utilizing SQLJ and JDBC for Querying the Database
JDBC
SQLJ
An Example Comparing JDBC and SQLJ
Complete SQLJ Example
SQLJ Strong Typing Paradigm
Translating a SQLJ Program
Running a SQLJ Program in the Server
Converting a Client Application to Run in the Server
Interacting with PL/SQL
Debugging Server Applications
1. Prepare the Code for Debugging
2. Start the Debug Proxy
3. Starting, Stopping, and Restarting the Debug Agent
OracleAgent Class
4. Connecting a Debugger
How To Tell You Are Executing in the Server
Redirecting Output on the Server

4 Java Installation and Configuration

Initializing a Java-Enabled Database
Oracle9i Database Template Configuration and Install
Modifying an Existing Oracle9i Database to Include Oracle JVM
Configuring Oracle JVM
Java Stored Procedure Configuration
Enterprise JavaBeans and CORBA Configuration
Servlet and JavaServer Pages Configuration
Using The DBMS_JAVA Package
Enabling the Java Client
1. Install JDK on the Client
2. Set up Environment Variables
CLASSPATH Additions
Basic Included JAR files:
JAR Files Necessary for JDK 1.1 Clients
JAR Files Necessary for Java 2 Clients
JAR Files Included for Clients that use SQLJ
JAR Files Included for Clients that use JSP
Server Application Development on the Client
3. Verify the Port/SID
4. Test Install with Samples

5 Security For Oracle9i Java Applications

Network Connection Security
Database Contents and JVM Security
Java 2 Security
Setting Permissions
Fine-Grain Definition for Each Permission
Acquiring Administrative Permission to Update Policy Table
Creating Permissions
Enabling or Disabling Permissions
Permission Types
Initial Permission Grants
General Permission Definition Assigned to Roles
Debugging Permissions
Permission for Loading Classes

6 Oracle9i Java Application Performance

Natively Compiled Code
Accelerator Overview
Oracle9i Core Java Class Libraries
Natively Compiling Java Application Class Libraries
Installation Requirements
Executing Accelerator
Java Memory Usage
Configuring Memory Initialization Parameters
Initializing Pool Sizes within Database Templates
Java Pool Memory
Displaying Used Amounts of Java Pool Memory
Correcting Out of Memory Errors
Running out of memory while compiling
Running out of memory while loading
End-of-Call Migration
Oracle-Specific Support for End-of-Call Optimization
Memory Profiling Utility
How MemStat Works
Using MemStat
MemStat Permissions
The MemStat Report Format

Glossary

Index


Go to next page
Oracle
Copyright © 1996-2001, Oracle Corporation.

All Rights Reserved.
Go To Documentation Library
Home
Go To Product List
Book List
Go To Index
Index

Master Index

Feedback