Skip Headers

Table of Contents Image Oracle9i Java Developer's Guide
Release 2 (9.2)

Part Number A96656-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
What's New in this Release?
Upgrading to JDK 1.3
Desupport of J2EE Technologies in the Oracle Database
Additions to the loadjava Tool
Replacement of the sess_sh tool with ojvmjava
Debugger Modifications
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
Development Tools
Overview of Oracle9i Java Documentation

2 Writing Java Applications on Oracle9i

Overview
Terminology
Database Sessions Imposed on Java Applications
Java Supported APIs
Execution Control
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 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
The Debug Agent Protocol
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
Using The DBMS_JAVA Package
Enabling the Java Client
1. Install JDK on the Client
2. Set up Environment Variables
JAR Files Necessary for JDK 1.1 Clients
JAR Files Necessary for Java 2 Clients
JAR Files Included for Clients that use SQLJ
Server Application Development on the Client
3. 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
ncomp
Syntax
Argument Summary
Argument Details
Errors
Native Compilation Usage Scenarios
Natively Compiling on Test Platform--Java Classes Already Loaded in the Database
Natively Compiling Java Classes Not Loaded in the Database
Clean Compile and Generate Output for Future Deployment
Controlling Native Compilation Build Environment
Natively Compiling Specific Classes
Natively Compiling Packages That Are Fully or Partially Modified
deploync
Syntax
Argument Summary
statusnc
Syntax
Argument Summary
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

7 Schema Object Tools

Schema Object Tool Overview
What and When to Load
Resolution
Digest Table
Compilation
loadjava
dropjava
ojvmjava

Glossary

Index


Go to next page
Oracle
Copyright © 2000, 2002 Oracle Corporation.

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

Master Index

Feedback