You are previewing e-Commerce Applications Using Oracle8i and Java from Scratch.
O'Reilly logo
e-Commerce Applications Using Oracle8i and Java from Scratch

Book Description

In Building e-Commerce Database Applications Using Oracle8i and Java from scratch, Meghraj Thakkar takes novice web programmers through the process of creating a web-enabled database application. You will look at the requirements, analysis, design, implementation, testing and deployment of an "Online Coffee Shop" from scratch. You will also learn to create database objects (tables and indexes), populate the database, and use SQL, PL/SQL and Java to manipulate the data. Additional topics include using Oracle tools such as SQL*Loader and Export/Import to populate Oracle databases, use of JDBC to connect and interact with the database, how to process the results coming back from the database, use of SQLJ to write efficient Java code, JDBC error messages & exceptional handling in the project, how to store Java code in the database using Java Stored Procedures, techniques for debugging & stress testing your applications, and more.

Table of Contents

  1. Copyright
  2. Foreword
  3. About the Author
  4. Acknowledgments
  5. Introduction
  6. Introduction to the Internet Capabilities of Oracle8i
    1. What Is a Database?
    2. Database Management Systems (DBMS)
    3. Understanding the Relational Model
    4. Oracle8i Architecture
    5. Physical Database Structure
    6. Logical Database Components
    7. The Oracle Data Dictionary
    8. Managing Transactions
    9. The Starter Database
    10. Web-enabling Oracle Database Applications
    11. Introducing the Project
    12. Next Steps
  7. Creating and Populating the JavaStop Database
    1. Making Use of Java as a Strategic Component
    2. Designing and Building the Application
    3. Designing the JavaStop Database
    4. Issues with Web-enabling JavaStop
    5. Tasks Prior to Database Creation
    6. Choosing Initialization Parameters for JSTP
    7. Organizing Database Objects
    8. Setting Environment Variables
    9. Methods for Database Creation
    10. Populating the Database Using Oracle Utilities
    11. Working with Export/Import Utilities
    12. Next Steps
  8. Manipulating the JavaStop Oracle Database Using SQL
    1. Introduction
    2. Accessing the Database
    3. SQL Commands
    4. Querying and Manipulating JavaStop Using SQL
    5. Procedural SQL Programming
    6. Next Steps
  9. Java Basics for Developing JavaStop
    1. Introduction
    2. Java Datatypes
    3. Java Type Conversions
    5. Control of Flow Functions
    6. Java Classes
    7. Java API
    8. JDK Tools
    9. Organizing Components
    10. The Java Virtual Machine
    11. Next Steps
  10. Using JDBC to Connect to JavaStop
    1. Understanding JDBC
    2. Steps to Use JDBC
    3. Applications Versus Applets
    4. Connecting to JavaStop Using JDBC
    5. Next Steps
  11. Using JDBC to Perform Data Manipulation in JavaStop
    1. Accessing JavaStop Using JDBC
    2. Accessing JavaStop
    3. Oracle JDBC Limitations
    4. JDBC Scalability
    5. Next Steps
  12. Implementing Clean and Compact Code Using SQLJ
    1. Introduction
    2. Embedding SQL Statements Within Java Using SQLJ
    3. Advantages of SQLJ over JDBC for Static SQL
    4. Interacting with the Database Using SQLJ
    5. SQLJ Basic Language Constructs
    6. Java Expressions in SQLJ Code
    7. Using SQLJ to Perform DML Operations in JavaStop
    8. SQLJ Runtime Packages
    9. Next Steps
  13. Handling Exceptions in JavaStop
    1. Introduction
    2. Trapping Exceptions in JDBC
    3. Exception Handling in SQLJ
    4. Handling NULLs
    5. Translator Error Messages and Exit Codes
    6. Next Steps
  14. Writing Java Stored Procedures for JavaStop
    1. Introduction
    2. Library Units
    3. Steps Required to Create a Java Stored Procedure
    4. Using Java Stored Procedures—An Example
    5. Choosing Between Java and PL/SQL
    6. Next Steps
  15. Diagnosing Problems and Debugging JavaStop Code
    1. Introduction
    2. Common Problems in Oracle Systems
    3. Performance Tuning Using UTLBSTAT/UTLESTAT Reports
    4. Analyzing Java Exceptions
    5. Performing OS-Level Diagnosis from Java Applications
    6. Forcing Garbage Collection to Avoid Memory Leaks
    7. Decompiling Java Classes
    8. Debugging with JDB
    9. Next Steps
  16. Securing JavaStop Using Database Security and Firewalls
    1. Introduction
    2. Understanding the Security Challenges in JavaStop
    3. Understanding Firewalls
    4. Understanding the Oracle Advanced Security Option
    5. Authenticating Connections to JavaStop
    6. Securing the JSTP Database
    7. Securing Applications
    8. Understanding Definer and Invoker Rights
    9. Auditing JavaStop Activity
    10. Next Steps
  17. Improving the Scalability of JavaStop
    1. Challenges in Developing a Scalable Java Environment
    2. Understanding the Oracle Multithreaded Server Architecture
    3. Configuring JavaStop for MTS Connections
    4. Common Problems with MTS
    5. Using Clusters to Improve Scalability
    6. Next Steps
  18. Optimizing JavaStop Performance
    1. Introduction
    2. Tuning the Operating System
    3. Characteristics of an Optimally Tuned Oracle System
    4. Improving JDBC Performance
    5. Next Steps
  19. Testing JavaStop to Improve Quality
    1. Understanding the Importance of Testing
    2. The Place of Testing in the SDLC
    3. Java's Features for Improved Software Quality
    4. Testing Strategies
    5. Testing Tools
    6. Benchmarking Performance Using Timers
    7. Unit Testing
    8. Runnability Testing
    9. Sample Testing Plan
    10. Next Steps
  20. Enhancing JavaStop Using EJBs and CORBA
    1. The Oracle JServer Programming Models
    2. Understanding Enterprise JavaBeans
    3. Using CORBA with Oracle8i
    4. Distributed Computing in JavaStop
    5. Using Servlets and JavaServer Pages
    6. Next Steps
    7. References
  21. JDBC API Reference
    1. Introduction
    2. DriverManager
    3. Connection Interface
    4. Statement
    5. CallableStatement
    6. DatabaseMetaData Interface
    7. ResultSet Interface
    8. ResultSetMetaData Interface
  22. Oracle8i Commonly Used SQL Statements and Data Dictionary Views
    1. Common SQL Statements
    2. Useful Data Dictionary Views
  23. Index