This chapter introduces you to the Java application created in this guide, and to the tools you can use to develop the Java application in the following topics: ■ Using Java to Connect t
Trang 12 Day + Java Developer’s Guide
11g Release 2
E12137-02
February 2012
Trang 2Oracle Database 2 Day + Java Developer's Guide, 11g Release 2
E12137-02
Copyright © 2007, 2012, Oracle and/or its affiliates All rights reserved.
Primary Authors: Deepa Aswani, Rosslynne Hefferan, Maitreyee Chaliha
Contributing Authors: Kathleen Heap, Simon Law
Contributors: Kuassi Mensah, Chris Schalk, Christian Bauwens, Mark Townsend, Paul Lo,
Venkatasubramaniam Iyer
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means Reverse engineering, disassembly, or decompilation of this software, unless required by law for
interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free If you find any errors, please report them to us in writing.
If this is software or related documentation that is delivered to the U.S Government or anyone licensing it
on behalf of the U.S Government, the following notice is applicable:
U.S GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental
regulations As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable
by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007) Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.
This software or hardware is developed for general use in a variety of information management
applications It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.
Oracle and Java are registered trademarks of Oracle and/or its affiliates Other names may be trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices UNIX is a registered trademark of The Open Group.
This software or hardware and documentation may provide access to or information on content, products, and services from third parties Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.
Trang 3Preface xi
Audience xi
Documentation Accessibility xi
Related Documents xii
Conventions xii
1 Using Java with Oracle Database Using Java to Connect to Oracle Database 1-1 Oracle JDBC Thin Driver 1-2 Oracle JDBC OCI Driver 1-2 Oracle JDBC Packages 1-2 Using JDeveloper to Create JDBC Applications 1-3 JDeveloper User Interface 1-3 JDeveloper Tools 1-4 Overview of Sample Java Application 1-5 Advanced Application Development Using Developer Frameworks 1-7 2 Getting Started with the Application
What You Need to Install 2-1 Oracle Database Server 2-1 Modifying the HR Schema for the JDBC Application 2-1 Oracle Database Client 2-2 J2SE or JDK 2-2 Integrated Development Environment 2-3 Web Server 2-3
Verifying the Oracle Database Client Installation 2-4 Checking Installed Directories and Files 2-4 Checking the Environment Variables 2-4 Determining the JDBC Driver Version 2-4
Installing Oracle JDeveloper 2-5 JDeveloper Studio Edition: Base Installation and Full Installation 2-5 Steps to Install JDeveloper 2-6 Starting JDeveloper 2-6
Trang 43 Connecting to Oracle Database
Connecting to Oracle Database from JDeveloper 3-1JDeveloper Database Navigator 3-1Creating a Database Connection 3-2Browsing the Data Using the Database Navigator 3-3
Setting Up Applications and Projects in JDeveloper 3-5Using the JDeveloper Application Navigator 3-5Creating an Application and a Project 3-5Viewing the Javadoc and Source Code Available in the Project Scope 3-6
Connecting to Oracle Database from a Java Application 3-7Overview of Connecting to Oracle Database 3-7Specifying Database URLs 3-8Using the Default Service Feature of the Oracle Database Client 3-9Creating a Java Class in JDeveloper 3-10Java Libraries 3-11Overview of the Oracle JDBC Library 3-11Overview of the JSP Runtime Library 3-11Adding JDBC and JSP Libraries 3-11Importing JDBC Packages 3-12Declaring Connection-Related Variables 3-12Creating the Connection Method 3-13
4 Querying for and Displaying Data
Overview of Querying for Data in Oracle Database 4-1SQL Statements 4-1Query Methods for the Statement Object 4-2Result Sets 4-2Features of ResultSet Objects 4-3Summary of Result Set Object Types 4-3
Querying Data from a Java Application 4-4Creating a Method in JDeveloper to Query Data 4-4Testing the Connection and the Query Methods 4-5
Creating JSP Pages 4-7Overview of Page Presentation 4-7JSP Tags 4-8Scriptlets 4-8HTML Tags 4-8HTML Forms 4-8Creating a Simple JSP Page 4-8Adding Static Content to a JSP Page 4-9Adding a Style Sheet to a JSP Page 4-10
Adding Dynamic Content to the JSP Page: Database Query Results 4-10Adding a JSP useBean Tag to Initialize the DataHandler Class 4-11Creating a Result Set 4-11Adding a Table to the JSP Page to Display the Result Set 4-13
Filtering a Query Result Set 4-14 Creating a Java Method for Filtering Results 4-15
Trang 5Displaying Filtered Data in the JSP Page 4-17
Adding Login Functionality to the Application 4-18Creating a Method to Authenticate Users 4-18Creating a Login Page 4-20Preparing Error Reports for Failed Logins 4-20Creating the Login Interface 4-21Creating a JSP Page to Handle Login Action 4-22
Testing the JSP Page 4-23
5 Updating Data
Creating a JavaBean 5-1Creating a JavaBean in JDeveloper 5-1Defining the JavaBean Properties and Methods 5-2
Updating Data from a Java Class 5-4Creating a Method to Identify an Employee Record 5-4Creating a Method to Update Employee Data 5-5Adding a Link to Navigate to an Update Page 5-8Creating a JSP Page to Edit Employee Data 5-9Creating a JSP Page to Handle an Update Action 5-11
Inserting an Employee Record 5-12Creating a Method to Insert Data 5-12Adding a Link to Navigate to an Insert Page 5-14Creating a JSP Page to Enter New Data 5-14Creating a JSP Page to Handle an Insert Action 5-16
Deleting an Employee Record 5-17Creating a Method for Deleting Data 5-17Adding a Link to Delete an Employee 5-18Creating a JSP Page to Handle a Delete Action 5-19
Exception Handling 5-19Adding Exception Handling to Java Methods 5-20Creating a Method for Handling Any SQLException 5-21
Navigation in the Sample Application 5-21Creating a Starting Page for an Application 5-22
6 Enhancing the Application: Advanced JDBC Features
Using Dynamic SQL 6-1Using OraclePreparedStatement 6-1Using OracleCallableStatement 6-2Using Bind Variables 6-2
Calling Stored Procedures 6-3Creating a PL/SQL Stored Procedure in JDeveloper 6-4Creating a Method to Use the Stored Procedure 6-5Allowing Users to Choose the Stored Procedure 6-6Calling the Stored Procedure from the Application 6-8
Trang 6Using Cursor Variables 6-9Oracle REF CURSOR Type Category 6-10Accessing REF CURSOR Data 6-10Using REF CURSOR in the Sample Application 6-11Creating a Package in the Database 6-11Creating a Database Function 6-11Calling the REF CURSOR from a Method 6-12Displaying a Dynamically Generated List 6-13
7 Creating a Master-Detail Application Using JPA and Oracle ADF
Overview of the Master-Detail Application 7-1
Using Java Persistence API (JPA) with Oracle ADF 7-2Java Persistence API (JPA) 7-2Oracle ADF Faces 7-2ADF Data Controls 7-3
Building the Data Model with EJB 3.0 Using the EJB Diagramer 7-3Creating an Application and Project 7-3Creating the Persistence Model 7-4Creating the Data Model 7-5Running the Java Service outside Java EE container 7-6
Create a New Project for the User Interface 7-7
Creating the Page Flow 7-8
Creating a Master-Detail JavaServer Faces Page 7-9
Creating a Query and Edit Page 7-10
Running the Application 7-11
8 Getting Unconnected from Oracle Database
Creating a Method to Close All Open Objects 8-1
Closing Open Objects in the Application 8-2
9 Building Global Applications
Developing Locale Awareness 9-1Mapping Between Oracle and Java Locales 9-2
Determining User Locales 9-3Locale Awareness in Java Applications 9-3
Encoding HTML Pages 9-3Specifying the Page Encoding for HTML Pages 9-4Specifying the Page Encoding in Java Servlets and JSP Pages 9-4
Organizing the Content of HTML Pages for Translation 9-5Strings in Java Servlets and JSP Pages 9-5Static Files 9-6Data from the Database 9-6
Presenting Data by User Locale Convention 9-6Oracle Date Formats 9-7Oracle Number Formats 9-7Oracle Linguistic Sorts 9-8
Trang 7Creating a Resource Bundle 9-10Using Resource Bundle Text on JSP Pages 9-11
Index
Trang 8List of Examples
2–1 Determining the JDBC Driver Version 2-53–1 Specifying the url Property for the DataSource Object 3-93–2 Default Service Configuration in listener.ora 3-93–3 Importing Packages in a Java Application 3-123–4 Declaring Connection Variables and the Connection Object 3-133–5 Adding a Method to Connect to the Database 3-144–1 Creating a Statement Object 4-24–2 Declaring a Scroll-Sensitive, Read-Only ResultSet Object 4-44–3 Using the Connection, Statement, Query, and ResultSet Objects 4-54–4 Implementing User Validation 4-195–1 Skeleton Code for a Basic Java Bean with Accessor Methods 5-35–2 Method for Updating a Database Record 5-75–3 Method for Adding a New Employee Record 5-135–4 Method for Deleting an Employee Record 5-185–5 Adding a Method to Handle Any SQLException in the Application 5-216–1 Creating a PreparedStatement 6-26–2 Creating a CallableStatement 6-26–3 Calling Stored Procedures 6-36–4 Creating a Stored Function 6-36–5 Calling a Stored Function in Java 6-36–6 Creating a PL/SQL Stored Procedure to Insert Employee Data 6-46–7 Using PL/SQL Stored Procedures in Java 6-66–8 Declaring a REF CURSOR Type 6-106–9 Accessing REF Cursor Data in Java 6-106–10 Creating a Package in the Database 6-116–11 Creating a Stored Function 6-129–1 Mapping from a Java Locale to an Oracle Language and Territory 9-29–2 Determining User Locale in Java Using the Accept-Language Header 9-39–3 Explicitly Specifying User Locale in Java 9-39–4 Specifying Page Encoding in the HTTP Specification 9-49–5 Specifying Page Encoding on an HTML Page 9-49–6 Specifying Page Encoding in Servlets Using setContentType 9-59–7 Difference Between Date Formats by Locale (United States and Germany) 9-79–8 Difference Between Number Formats by Locale (United States and Germany) 9-89–9 Variations in Linguistic Sorting (Binary and Spanish) 9-89–10 Creating a Resource Bundle Class 9-11
Trang 91–1 JDeveloper User Interface 1-41–2 Web Pages in the Sample Application 1-53–1 Specifying Connection Details 3-33–2 Accessing Database Objects in the Database Navigator 3-43–3 Viewing the Table Structure and Data 3-43–4 Selecting the Class to View the Javadoc in JDeveloper 3-63–5 Javadoc Display in JDeveloper 3-73–6 Creating a Java Class 3-103–7 Java Source Editor 3-113–8 Importing Libraries 3-123–9 Java Code Insight 3-144–1 Test Output for Query Method in Log Window 4-64–2 Adding Content to JSP Pages in the JDeveloper Visual Source Editor 4-94–3 Adding Static Content to the JSP Page 4-104–4 useBean Representation in the employees.jsp File 4-114–5 Scriptlet Representation in a JSP Page 4-124–6 Viewing Errors in the Structure Window 4-124–7 Importing Packages in JDeveloper 4-134–8 Table in a JSP Page 4-144–9 HTML Form Components in the JSP Page 4-174–10 Using the Scriptlet Properties Dialog Box 4-184–11 Login Page 4-224–12 Login Page for Sample Application in the Browser 4-234–13 Unfiltered Employee Data in employee.jsp 4-244–14 Filtered Employee Data in employee.jsp 4-245–1 Generate Accessors Dialog Box 5-35–2 Link to Edit Employees in employees.jsp 5-95–3 Creating a JSP Page to Edit Employee Details 5-115–4 Editing Employee Data 5-125–5 Form to Insert Employee Data 5-155–6 Inserting New Employee Data 5-165–7 Inserting Employee Data 5-175–8 Link for Deleting an Employee from employees.jsp 5-196–1 Adding a Link to Provide the Stored Procedure Option 6-86–2 Using Stored Procedures to Enter Records 6-96–3 Structure View of Dropdown ListBox Options 6-146–4 Dynamically Generated List in Browser 6-157–1 Master Detail Application Pages 7-27–2 Persistence Model 7-47–3 Creating Java Service Facade 7-77–4 JSF Navigation 7-87–5 Master-Detail Application Viewed in a Browser 7-127–6 Editing the Master Detail Application Content 7-12
Trang 10List of Tables
2–1 Directories and Files in the ORACLE_HOME Directory 2-43–1 Standard Data Source Properties 3-84–1 Key Query Execution Methods for java.sql.Statement 4-29–1 Locale Representation in Java, SQL, and PL/SQL Programming Environments 9-2
Trang 11This Preface introduces you to , by discussing the intended audience and conventions
of this document It also includes a list of related Oracle documents that you can refer
to for more information
Audience
This guide is intended for application developers using Java to access and modify data
in Oracle Database This guide illustrates how to perform these tasks using a simple Java Database Connectivity (JDBC) application This guide uses the Oracle JDeveloper integrated development environment (IDE) to create the application This guide can be read by anyone with an interest in Java programming, but it assumes at least some prior knowledge of the following:
Access to Oracle Support
Oracle customers have access to electronic support through My Oracle Support For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired
Accessibility of Links to External Web Sites in Documentation
This documentation may contain links to Web sites of other companies or organizations that Oracle does not own or control Oracle neither evaluates nor makes any representations regarding the accessibility of these Web sites
Deaf/Hard of Hearing Access to Oracle Support Services
To reach Oracle Support Services, use a telecommunications relay service (TRS) to call Oracle Support at 1.800.223.1711 An Oracle Support Services engineer will handle technical issues and provide customer support according to the Oracle service request process Information about TRS is available at
Trang 12http://www.fcc.gov/cgb/consumerfacts/trs.html, and a list of phone numbers is available at http://www.fcc.gov/cgb/dro/trsphonebk.html.
■ Oracle Database JDBC Developer's Guide and Reference, 11g Release 2 (11.2)
■ Oracle Database Java Developer's Guide, 11g Release 2 (11.2)
Conventions
The following text conventions are used in this document:
with an action, or terms defined in text or the glossary
italic Italic type indicates book titles, emphasis, or placeholder variables for
which you supply particular values
monospace Monospace type indicates commands within a paragraph, URLs, code
in examples, text that appears on the screen, or text that you enter
Trang 13Using Java with Oracle Database
Oracle Database is a relational database that you can use to store, use, and modify data The Java Database Connectivity (JDBC) standard is used by Java applications to access and manipulate data in relational databases
JDBC is an industry-standard application programming interface (API) developed by Sun Microsystems that lets you embed SQL statements in Java code JDBC is based on the X/Open SQL Call Level Interface (CLI) and complies with the Entry Level of the SQL-92 standard Each vendor, such as Oracle, creates its JDBC implementation by implementing the interfaces of the standard java.sql package
See Also:
■ http://java.sun.com/javase/technologies/database/index.jsp
This guide shows you how to use a simple Java application to connect to Oracle Database and access and modify data within the database Further, it uses the Oracle Application Development Framework (ADF) to develop a master-detail application to display employee data
This chapter introduces you to the Java application created in this guide, and to the tools you can use to develop the Java application in the following topics:
■ Using Java to Connect to Oracle Database
■ Using JDeveloper to Create JDBC Applications
■ Overview of Sample Java Application
Using Java to Connect to Oracle Database
JDBC is a database access protocol that enables you connect to a database and run SQL statements and queries on the database The core Java class libraries provide the JDBC APIs, java.sql and javax.sql However, JDBC is designed to allow vendors to supply drivers that offer the necessary specialization for a particular database
Note: Oracle Database 11g Release 2 support JDK 5 and onward The
JDBC support in this release includes the ojdbc5.jar and ojdbc6.jar files The ojdbc6.jar file offers JDBC 4.0 compliance To use this file, you need JDK 6
Oracle Database provides support for the client-side application development through the JDBC Thin Driver and the Oracle Call Interface (OCI) Driver, and the oracle.sql and oracle.jdbc packages The classes and interfaces in these packages extend the
Trang 14Using Java to Connect to Oracle Database
JDBC standard They allow you to access and modify Oracle data types and use Oracle performance extensions for JDBC with greater flexibility in a Java application
The following sections describe Oracle support for the JDBC standard:
■ Oracle JDBC Thin Driver
■ Oracle JDBC OCI Driver
■ Oracle JDBC Packages
See Also:
■ Oracle Database JDBC Developer's Guide and Reference
■ Oracle Database Java Developer's Guide
Oracle JDBC Thin Driver
Oracle recommends using the JDBC Thin Driver for most requirements JDBC-OCI is only needed for OCI-specific features
The JDBC Thin Driver is a pure Java, Type IV driver It supports the JavaTM 2 Platform Standard Edition 5.0, also known as Java Development Kit (JDK) 5 It also includes support for JDK 6 It is platform-independent and does not require any additional Oracle software for client-side application development The JDBC Thin Driver communicates with the server using SQL*Net to access Oracle Database
The JDBC Thin Driver allows a direct connection to the database by providing a pure Java implementation of Oracle network protocols (Two-Task Common, also known as the TTC protocol, and SQL*Net) The driver supports the TCP/IP protocol and requires a Transparent Network Substrate (TNS) listener on the TCP/IP sockets on the database server The Thin driver will work on any machine that has a suitable Java virtual machine (JVM)
You can access the Oracle-specific JDBC features and the standard features by using the oracle.jdbc package
Oracle JDBC OCI Driver
The JDBC OCI driver is a Type II driver used with Java applications It requires an Oracle client installation It supports all installed Oracle Net adapters, including interprocess communication (IPC), named pipes, TCP/IP, and InternetworkPacket Exchange/Sequenced Packet Exchange (IPX/SPX)
OCI is an API that enables you to create applications that use native procedures or function calls The JDBC OCI driver, written in a combination of Java and C, converts JDBC calls to calls to OCI It does this by using native methods to call C-entry points These calls communicate with the database using SQL*Net
Oracle JDBC Packages
Oracle support for the JDBC API is provided through the oracle.jdbc and oracle.sql packages These packages support all Java Development Kit (JDK) releases from 1.5 through 1.6
oracle.sql
The oracle.sql package supports direct access to data in SQL format This package consists primarily of classes that provide Java mappings to SQL data types and their
Trang 15support classes Essentially, the classes act as Java wrappers for SQL data The characters are converted to Java chars and, then, to bytes in the UCS-2 character set.Each of the oracle.sql.* data type classes extends oracle.sql.Datum, a superclass that includes functions and features common to all the data types Some of the classes are for JDBC 2.0-compliant data types In addition to data type classes, the oracle.sql package supports classes and interfaces for use with objects and collections.
oracle.jdbc
The interfaces of the oracle.jdbc package define the Oracle extensions to the interfaces in the java.sql package These extensions provide access to Oracle SQL-format data They also provide access to other Oracle-specific features, including Oracle performance enhancements
The key classes and interfaces of this package provide methods that support standard JDBC features and perform tasks such as:
■ Returning Oracle statement objects
■ Setting Oracle performance extensions for any statement
■ Binding oracle.sql.* types into prepared and callable statements
■ Retrieving data in oracle.sql format
■ Getting meta information about the database and result sets
■ Defining integer constants used to identify SQL types
See Also: ■Oracle Database JDBC Developer's Guide and Reference
Using JDeveloper to Create JDBC Applications
The Java application tutorial in this guide uses Oracle JDeveloper 10g release 10.1.3 as
the integrated development environment (IDE) for developing the Java application and creating Web pages for users to view and change the data
Oracle JDeveloper is an IDE with support for modeling, developing, debugging, optimizing, and deploying Java applications and Web services
JDeveloper provides features for you to write and test Java programs that access the database with SQL statements embedded in Java programs For the database, JDeveloper provides functions and features to do the following:
■ Create a connection to a database
■ Browse database objects
■ Create, edit, or delete database objects
■ Create and edit PL/SQL functions, procedures, and packages
JDeveloper User Interface
Oracle JDeveloper is an IDE that uses windows for various application development tools You can display or hide any of the windows, and you can dock them or undock them to create a desktop suited to your method of working
In addition to these tools, JDeveloper provides a range of navigators to help you organize and view the contents of your projects Application and System navigators show you the files in your projects, and a Structure window shows you the structure
of individual items
Trang 16Using JDeveloper to Create JDBC Applications
You can arrange the windows as you choose, and can close and open them from the View menu Figure 1–1 shows the default layout of some of the available navigators, palettes, and work areas in the JDeveloper user interface (GUI)
Figure 1–1 JDeveloper User Interface
Java Source Editor/
Visual Editor
Application Navigator
Connections Navigator
Component Palette
Property Inspector
Runtime Messages
Structure Window
See Also: Working with Windows in the IDE, in the JDeveloper online
Note: The Java Code Insight feature is a facility that provides context-specific, intelligent input when creating code in the Java Source Editor In this guide, you will see many instances of how you can use Java Code Insight to insert code
Trang 17■ Component Palette, from which you select the user interface components, such as buttons and text areas, that you want to display on your pages.
■ Property Inspector, which gives a simple way of setting properties of items such
as user interface components
Figure 1–1 might help you get a better idea of where you can access these tools in the JDeveloper UI
Overview of Sample Java Application
This guide shows you how to create an application using Java, JDBC and Oracle ADF
In this application, you build in the following functions and features:
1. Allow users to log in and validate the user name and password
2. Establish a connection to the database
3. Query the database for data and retrieve the data using a JavaBean
4. Display the data using JavaServer Pages (JSP) technology
5. Allow users to insert, update, or delete records
6. Access and modify information from a master-detail application
7. Handle exceptions
Note: The application connects to the HR schema that ships with Oracle Database Although the Oracle Database client installation comes with both the Thin and OCI drivers, the sample application will use only the JDBC Thin Driver
Overview of Application Web Pages (JSP Pages)
Figure 1–2 shows the relationships among the pages developed for this application
Figure 1–2 Web Pages in the Sample Application
• a link to add an employee
• links to edit employee rows
• links to delete employee rows
Trang 18Overview of Sample Java Application
■ employees.jspThis is the main page of the application It displays a list of all the employees in the HR schema for AnyCo Corporation and allows the user to filter the list of employees using any string It also includes links to add, edit, and delete any user data These actions, however, are handled by other JSP pages that are created specifically for each of these tasks
The link to insert employee data on the employees.jsp page redirects the user to this page This includes a form that accepts all the details for a new employee record The details entered on this form are processed by the insert_action.jsp page
■ insert_action.jspThis is a nonviewable page that handles the insertion of data for a new employee that is entered on the insert.jsp page
The link to edit employee data on the employees.jsp page redirects the user to this page This form displays current data of a single employee in text fields, and the user can edit this information
■ update_action.jspThe submit action on the edit.jsp page directs the data to this nonviewable page, which inserts the edited data into the database
■ delete_action.jspThe link to delete an employee record on the employees.jsp page is handled by this nonviewable page, which deletes the employee data and forwards the user back to the employees.jsp page
Trang 19■ Employees.javaThis class is a JavaBean that holds a single employee record It contains accessor methods to get and set the values of each of the record fields It also contains accessor methods to retrieve and modify employee records.
■ JavaClient.javaThis class is used only for testing the DataHandler class
Note: This application is developed throughout this guide in the form of a tutorial It is recommended, therefore, that you read these chapters in sequence
Advanced Application Development Using Developer Frameworks
To develop enterprise solutions that search, display, create, modify, and validate data using web, wireless, desktop, or web services interfaces, you need to use developer frameworks to simplify your job
Using frameworks, developers can write code based on well-defined interfaces This is largely a time-saving benefit, but it also makes sense in a Java EE environment because Java EE frameworks provide the necessary infrastructure for the enterprise
application In other words, Java EE frameworks make the concepts expressed in the Java EE design patterns more concrete
The Oracle Application Development Framework (Oracle ADF) is such an end-to-end application framework that builds on Java EE standards and open-source technologies
to simplify and accelerate implementing service-oriented applications
To illustrate how application development can be made easy using a feature-rich environment that facilitates the creation of complex applications, this guide includes a master-detail application in Chapter 7
Trang 20Advanced Application Development Using Developer Frameworks
Trang 21Getting Started with the Application
To develop a Java application that connects to Oracle Database, you need to ensure that certain components are installed as required This chapter covers the following topics:
■ What You Need to Install
■ Verifying the Oracle Database Client Installation
■ Installing Oracle JDeveloper
What You Need to Install
To be able to develop the sample application, you need to install the following products and components:
■ Oracle Database Server
■ Oracle Database Client
■ J2SE or JDK
■ Integrated Development Environment
■ Web Server
The following subsections describe these requirements in detail
Oracle Database Server
To develop the Java application, you need a working installation of Oracle Database
Server with the HR schema, which comes with the database If you choose to install the client, then you must install the Oracle Database Server before the Oracle Database Client installation The installation creates an instance of Oracle Database and provides additional tools for managing this database The server installation is
platform-specific For more information, refer to the Oracle Database Installation Guide.
Modifying the HR Schema for the JDBC Application
The HR user account, which owns the sample HR schema used for the Java application
in this guide, is initially locked You must log in as a user with administrative privileges (SYS) and unlock the account before you can log in as HR
If the database is locally installed, use the command prompt or console window to unlock the account as follows:
1. Log in to SQL*Plus as a user with DBA privileges, for example:
> SQLPLUS SYS/ AS SYSDBA
Trang 22What You Need to Install
Enter password: password
2. Run the following command:
> PASSWORD HRChanging password for HR
New password: password Retype new password: password
3. Test the connection as follows:
> CONNECT HR
Enter password: password
You should see a message indicating that you have connected to the database
Note: For information on creating and using secure passwords with
Oracle Database, refer to Oracle Database Security Guide
In addition, some of the constraints and triggers present in the HR schema are not in line with the scope of the Java application created in this guide You must remove these constraints and triggers as follows using the following SQL statements:
DROP TRIGGER HR.UPDATE_JOB_HISTORY;
DROP TRIGGER HR.ADD_JOB_HISTORY;
DROP TRIGGER HR.SECURE_EMPLOYEES;
ALTER TABLE EMPLOYEES DROP CONSTRAINT JHIST_EMP_FK;
DELETE FROM JOB_HISTORY;
Oracle Database Client
Oracle Database Client installation is optional, but recommended Installing Oracle Database Client on any computer allows easy access from that system to the Oracle Database The installation also includes the following development tools:
■ Oracle JDBC drivers
■ Oracle Open Database Connectivity (ODBC) driver
■ Oracle Provider for OLE DB
■ Oracle Data Provider for NET (ODP.NET)
■ Oracle Services for Microsoft Transaction ServerThe client installation is platform-specific Refer to the following Oracle Database Client installation guides for more information on installing the client:
■ Oracle Database Client Installation Guide 11g Release 2 (11.2) for Linux
■ Oracle Database Client Installation Guide 11g Release 2 (11.2) for Microsoft Windows
Trang 23Note:
■ Oracle Database does not support JDK 1.2, JDK 1.3, JDK 1.4, and all classes12*.* files You need to use the ojdbc5.jar and the ojbc6.jar files with JDK 5.n and JDK 6.n, respectively.
■ The oracle.jdbc.driver.* classes, the ojdbc4.jar file, and the OracleConnectionCacheImpl class are no longer supported or available
■ JDK versioning conventions have changed from JDK version 1.n
to JDK n Refer to the Sun Java site at the following location for
Integrated Development Environment
For ease in developing the application, you can choose to develop your application in
an integrated development environment (IDE) This guide uses Oracle JDeveloper to create the files for this application For more information on installing JDeveloper, refer to Installing Oracle JDeveloper
Web Server
The sample application developed in this guide uses JavaServer Pages (JSP) technology to display information and accept input from users To deploy these pages, you need a Web server with a servlet and JSP container, such as the Apache Tomcat application server
This guide uses the embedded server called the Oracle WebLogic Server in JDeveloper for deploying the JSP pages If you choose not to install Oracle JDeveloper, then any Web server that allows you to deploy JSP pages should suffice
JDeveloper supports direct deployment to the following production application servers:
■ Oracle WebLogic Server
■ Oracle Application Server
Trang 24Verifying the Oracle Database Client Installation
Verifying the Oracle Database Client Installation
Oracle Database client installation is platform-specific You need to verify that the client installation was successful before you proceed to create the sample application This section describes the steps for verifying an Oracle Database client installation Verifying a client installation involves the following tasks:
■ Checking Installed Directories and Files
■ Checking the Environment Variables
■ Determining the JDBC Driver Version
Checking Installed Directories and Files
Installing Oracle Java products creates the following directories:
/jdbc/lib The lib directory contains the ojdbc5.jar and ojdbc6.jar
required Java classes These contain the JDBC driver classes for use with JDK 5 and JDK 6
/jdbc/Readme.txt This file contains late-breaking and release-specific information
about the drivers, which may not have been included in other documentation on the product
/jlib This directory contains the orai18n.jar file This file contains
classes for globalization and multibyte character sets support
Note: These files can also be obtained from the Sun Microsystems Web site However, it is recommended to use the files supplied by Oracle, which have been tested with the Oracle drivers
Checking the Environment Variables
This section describes the environment variables that must be set for the JDBC Thin Driver You must set the classpath for your installed JDBC Thin Driver For JDK 5, you must set the following values for the CLASSPATH variable:
ORACLE_HOME/jdbc/lib/ojdbc5.jar ORACLE_HOME/jlib/orai18n.jar
Ensure that there is only one JDBC class file, such as ojdbc6.jar, and one globalization classes file, orai18n.jar, in the CLASSPATH variable
Determining the JDBC Driver Version
Starting from Oracle Database 11g Release 1, you can get details about the JDBC
support in the database as follows:
> java -jar ojdbc6.jar
Trang 25Oracle 11.1.0.0 JDBC 4.0 compiled with JDK6
In addition, you can determine the version of the JDBC driver that you installed by calling the getDriverVersion method of the OracleDatabaseMetaData class
Note: The JDBC Thin Driver requires a TCP/IP listener to be running on the computer where the database is installed
Example 2–1 illustrates how to determine the driver version:
Example 2–1 Determining the JDBC Driver Version
import java.sql.*;
import oracle.jdbc.*;
import oracle.jdbc.pool.OracleDataSource;
class JDBCVersion{
public static void main (String args[]) throws SQLException {
OracleDataSource ods = new OracleDataSource();
ods.setURL("jdbc:oracle:thin:hr/hr@localhost:1521/XE");
Connection conn = ods.getConnection();
// Create Oracle DatabaseMetaData object DatabaseMetaData meta = conn.getMetaData();
// gets driver info:
System.out.println("JDBC driver version is " + meta.getDriverVersion()); }
}
Installing Oracle JDeveloper
In this guide, the integrated development environment (IDE) that is used to create the sample Java application using JDBC is Oracle JDeveloper release 11.1.1 This release of JDeveloper is supported on the Microsoft Windows Vista, Windows XP, Windows
2003, Windows 2000, Linux, and Mac OS X operating systems Installation of
JDeveloper is described in detail in Installation Guide for Oracle JDeveloper Release 11.1.1.0.0, which is available online on the Oracle Technology Network at
JDeveloper Studio Edition: Base Installation and Full Installation
JDeveloper 11.1.1 is available in two editions The Studio Edition includes Oracle ADF, which is required for developing the master-detail application created in this guide.You can install either the base installation or the full installation of the JDeveloper Studio Edition In addition to JDeveloper, the full installation includes the required version of Java, the specialized Oracle Java Virtual Machine for JDeveloper (OJVM),
Trang 26Installing Oracle JDeveloper
and the online documentation, so the download file size is larger For quicker downloading, you can install the JDeveloper base installation
Steps to Install JDeveloper
If you are installing the base installation, you need to have J2EE version 1.6.0_05 on your machine If you are installing the full installation, then J2EE is included In outline, the installation process is as follows:
1. Download JDeveloper version 11.1.1 Studio Edition from the Oracle Technology Network at
http://www.oracle.com/technology/software/products/jdev/htdocs/soft11.html
Download the base installation (jdevjavabase11110.zip), or the full installation (jdevstudio11110install.exe ) It is recommended that you download the Studio Edition to avail all features
2. To launch the installer for the base installation, enter the following command at the command line:
java -jar jdevstudio11110install.jar
To launch the installer for the full installation, double click jdevstudio11110install.exe and follow the instructions
Note: When choosing the Middleware Home directory, ensure that you choose a directory that does not contain spaces For example, do not use C:\Program Files as the Middleware Home
To change a JDK location that you have previously specified, you have to modify
the jdev.conf file Set the variable SetJavaHome in the file <install_
dir>/jdeveloper/jdev/bin/jdev.conf to the location of your Java installation
Here, Middleware Home directory has been represented by <install_dir>.
For example, in a UNIX environment, if the location of your JDK is in a directory called /usr/local/java, your entry in jdev.conf would be as follows:
SetJavaHome /usr/local/javaOther tasks that you must perform include setting the permissions for all JDeveloper files to read, and giving all users write and execute permissions to files
in a range of JDeveloper directories
3. If you are using the base installation, there are some additional setup tasks, such
as setting the location of your Java installation in the JDeveloper configuration file, optionally installing OJVM, and downloading the online documentation so that it
is locally available
See Also: ■http://download.oracle.com/docs/cd/E12839_
01/install.1111/e13666/toc.htm for the JDeveloper Installation Guide
Trang 27for displaying internal diagnostic information, run the jdev.exe file in the same directory instead of jdevw.exe
To start JDeveloper on other platforms, run the <install_
dir>/jdeveloper/jdev/bin/jdev file
Trang 28Installing Oracle JDeveloper
Trang 29Connecting to Oracle Database
This chapter is the first in a series of five chapters, each of which describes how to create parts of a Java application that accesses Oracle Database and displays, modifies, deletes, and updates data on it To be able to access the database from a Java
application, you must connect to the database using a java.sql.Connection object This chapter includes the following sections:
■ Connecting to Oracle Database from JDeveloper
■ Setting Up Applications and Projects in JDeveloper
■ Connecting to Oracle Database from a Java Application
Connecting to Oracle Database from JDeveloper
You can set up and manage database connections in JDeveloper to enable your application to communicate with external data sources, including Oracle Database and offline database objects This is done using the Database Navigator The same
navigator is also used to manage other connections your application needs, such as connections to application servers The following subsections describe how you can use the Database Navigator to view the database and its objects and to create a connection to the database:
■ JDeveloper Database Navigator
■ Creating a Database Connection
■ Browsing the Data Using the Database Navigator
JDeveloper Database Navigator
The Database Navigator displays all currently defined connections To view the
Database Navigator, select the Database Navigator tab in the navigator panel on the
top left-hand side of the JDeveloper display, if it is displayed, or use the View menu For an illustration of the default layout of the JDeveloper IDE, see Figure 1–1
You can use the Database Navigator to browse through the connections it displays In particular, for a database schema, you can also view database objects, tables, views, and their contents
Database connections are shown under the IDE Connections node To view the objects
in the database, expand the connection Expanding a schema displays nodes for the object types in that schema Expanding the node for an object type displays its individual objects When you expand a table node, you can view the structure of the table and the data within the table
Trang 30Connecting to Oracle Database from JDeveloper
Creating a Database Connection
You can connect to any database for which you have connection details When you create a database connection, you must specify a user name and a password By default, the connection allows you to browse only the schema of the user that you specify in the connection
To create a connection, follow these steps:
1. Start JDeveloper
2 From the View menu select Database Navigator The Database Navigator is
displayed, showing you a list of available connections
3 Right-click IDE Connection, and from the shortcut menu, select New Connection
The Create Database Connection screen is displayed
4. On the Connection screen, do not change the default values for the connection
name and type, Connection1 and Oracle (JDBC) Enter HR in both the Username and Password fields Do not enter a value for Role, and select Deploy Password
You must provide information about the computer where your database is located Your database administrator should provide you with this information.Enter the following information:
Click Test Connection If the connection is successful, the word Success! is
displayed in the Status field
Figure 3–1 shows the Connection screen where you enter these details
Trang 31Figure 3–1 Specifying Connection Details
5 Click Finish to create the connection and close the screen.
Disconnecting and Reconnecting from Oracle Database in JDeveloper
To disconnect from the database in JDeveloper, in the Database Navigator, right-click
the connection name and select Disconnect The display in the Database Navigator
now shows only the name of the connection, without the plus (+) symbol for expanding the node To reconnect to the database, right-click the connection name and
select Connect.
Browsing the Data Using the Database Navigator
After you have successfully established a connection to the database, you can browse its contents through the Database Navigator The Database Navigator displays a navigable, hierarchical tree structure for the database, its objects, their instances, and the contents of each To view the contents at each level of the hierarchy of the database connection that you created, do the following:
1. The IDE Connections node in the Database Navigator now shows a node with the name of your connection Click the plus symbol (+) to the left of the connection name to expand the navigation tree To display a list of the instances of an object type, for example Tables, expand the Table navigation tree
2. The Structure window below the navigator shows the detailed structure of any object selected in the navigator Select a table in the navigator (for example
Employees) to see the columns of that table in the Structure window
Trang 32Connecting to Oracle Database from JDeveloper
Figure 3–2 Accessing Database Objects in the Database Navigator
Figure 3–3 Viewing the Table Structure and Data
Trang 333. If you double-click a table in the navigator, the structure of that table is displayed
in the main editing area of the window It includes details about all the columns, such as Name, Type, and Size, so you can browse the table definition
To view the data from a table, select the Data tab below the table structure You
can now view and browse through the table data
4. You can also edit the objects in the Database Navigator To edit a table, right-click
the table and select Edit from the shortcut menu A dialog box allows you to make
changes to the selected table
Setting Up Applications and Projects in JDeveloper
In JDeveloper, you create your work in an application, within which you can organize your work into a number of projects JDeveloper provides a number of application templates, to help you to create the project structure for standard types of application relatively quickly and easily At the time you create your application in JDeveloper, you can choose the application template that matches the type of application you will
be building
The application template you select determines the initial project structure (the named project folders within the application) and the application technologies that will be included You can then add any extra libraries or technologies you need for your particular application, and create additional projects if you need them
Using the JDeveloper Application Navigator
The Application Navigator displays all your applications and projects When you first start JDeveloper, the Application Navigator is displayed by default on the left side of the JDeveloper IDE
To view the Application Navigator when it is not displayed, you can click the
Applications tab in the navigator panel on the top left-hand side of the JDeveloper
display, or select Application Navigator from the View menu.
The Application Navigator shows a logical grouping of the items in your projects To see the structure of an individual item, you can select it and the structure is displayed
in the Structure window
From the Application Navigator, you can display items in an appropriate default editor For example, if you double-click a Java file, the file opens in the Java Source Editor, and if you double-click a JavaServer Pages (JSP) file, it opens in the JSP/HTML Visual Editor
Creating an Application and a Project
To get started with JDeveloper, you must create an application and at least one project
in which to store your work, as follows:
1 In the Application Navigator, click on New Application.
2. The Create Generic Application wizard is displayed Enter HRApp in the
Application Name field, and from the Application Template list, select Generic Application Click Next.
3. On the Name your Generic project screen, enter view as the name of the project
Click Finish.
4. The new HRApp application is displayed in the Application Navigator
Trang 34Setting Up Applications and Projects in JDeveloper
5 Save your application To do this, from the File menu, select Save All.
Viewing the Javadoc and Source Code Available in the Project Scope
You can view the Javadoc or the code for any of the classes available in the project technology scope within JDeveloper In addition, you can view the details of all the methods available for those classes
For example, to see the code or Javadoc for the Connection class, do the following:
1 With your project selected in the Application Navigator, from the Navigate menu select Go to Java Class You can also do this for a specific file in your project.
2 In the Go to Java Class dialog box, select Source or Javadoc.
3 Enter the name of the class you want to view in the Name field, or click Browse to
find the class For the Connection class, start to enter Connection, and from the
displayed list select Connection (java.sql)
Figure 3–4 Selecting the Class to View the Javadoc in JDeveloper
4 Click OK.
Trang 35Figure 3–5 Javadoc Display in JDeveloper
Connecting to Oracle Database from a Java Application
So far, you have seen how to connect to the database from JDeveloper To initiate a connection from the Java application, you use the Connection object from the JDBC application programming interface (API)
This section describes connecting to the database from the Java application in the following subsections:
■ Overview of Connecting to Oracle Database
■ Specifying Database URLs
■ Creating a Java Class in JDeveloper
■ Java Libraries
■ Adding JDBC and JSP Libraries
■ Importing JDBC Packages
■ Declaring Connection-Related Variables
■ Creating the Connection Method
Overview of Connecting to Oracle Database
In Java, you use an instance of the DataSource object to get a connection to the database The DataSource interface provides a complete replacement for the previous JDBC DriverManager class Oracle implements the javax.sql.DataSource interface
Trang 36Connecting to Oracle Database from a Java Application
with the OracleDataSource class in the oracle.jdbc.pool package The overloaded getConnection method returns a physical connection to the database
Note: The use of the DriverManager class to establish a connection to
a database is deprecated
You can either set properties using appropriate setxxx methods for the DataSource
object or use the getConnection method that accepts these properties as input parameters
Important DataSource Properties are listed in Table 3–1
Table 3–1 Standard Data Source Properties
databaseName String Name of the particular database on the server Also known as the service name
(or SID) in Oracle terminology For Oracle Database, this is ORCL by default dataSourceName String Name of the underlying data source class
description String Description of the data source
networkProtocol String Network protocol for communicating with the server For Oracle, this applies
only to the JDBC Oracle Call Interface (OCI) drivers and defaults to tcp
password String Password for the connecting user
portNumber int Number of the port where the server listens for requests
serverName String Name of the database server
user String User name to be used for login
driverType String Specifies the Oracle JDBC driver type It can be either oci or thin
This is an Oracle-specific property
url String Specifies the URL of the database connect string.You can use this property in
place of the standard portNumber, networkProtocol, serverName, and databaseName properties
This is an Oracle-specific property
If you choose to set the url property of the DataSource object with all necessary parameters, then you can connect to the database without setting any other properties
or specifying any additional parameters with the getDBConnection method For more information on setting the database URL, refer to the Specifying Database URLs
section
Note: The parameters specified through the getConnection method override all property and url parameter settings previously specified
in the application
See Also: Oracle Database JDBC Developer's Guide and Reference
Specifying Database URLs
This release of Oracle JVM supports Internet Protocol Version 6 (IPv6) addresses in the URL and machine names of the Java code in the database, which resolve to IPv6 addresses
Trang 37Database URLs are strings that you specify for the value of the url property of the DataSource object The complete URL syntax is the following:
jdbc:oracle:driver_type:[username/password]@database_specifier
The first part of the URL specifies which JDBC driver is to be used The supported
driver_type values for client-side applications are thin and oci The brackets indicate
that the user name and password pair is optional The database_specifier value
identifies the database to which the application is connected
The following is the syntax for thin-style service names that are supported by the Thin driver:
jdbc:oracle:driver_type:[username/password]@//host_name:port_number:SID
For the sample application created in this guide, if you include the user name and password, and if the database is hosted locally, then the database connection URL is as shown in Example 3–1
Example 3–1 Specifying the url Property for the DataSource Object
jdbc:oracle:thin:hr/hr@localhost:1521:UORCL
Using the Default Service Feature of the Oracle Database Client
Oracle Database comes with a new connection feature If you install the Oracle
Database client, then you need not specify all the details in the database specifier part
of the connection URL Under certain conditions, the Oracle Database connection adapter requires only the host name of the computer where the database is installed.Because of this feature introduced in Oracle Database, some parts of the JDBC
connection URL syntax become optional:
jdbc:oracle:driver_type:[username/password]@[//]host_name[:port][:ORCL]
In this URL:
■ // is optional
■ :port is optional
Specify a port only if the default Oracle Net listener port (1521) is not used
■ :ORCL (or the service name) is optional
The connection adapter for the Oracle Database Client connects to the default service on the host On the host, this is set to ORCL in the listener.ora file
Example 3–2 shows a basic configuration of the listener.ora file, where the default service is defined
Example 3–2 Default Service Configuration in listener.ora
Trang 38Connecting to Oracle Database from a Java Application
After making changes to the listener.ora file, you must restart the listener with the following command:
> lsnrctl start mylistener
The following URLs should work with this configuration:
jdbc:oracle:thin:@//test555.testserver.comjdbc:oracle:thin:@//test555.testserver.com:1521jdbc:oracle:thin:@test555.testserver.comjdbc:oracle:thin:@test555.testserver.com:1521jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test555.testserver.com)(PORT=1521)))
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test555.testserver.com)))
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=test555.testserver.com)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=)))
Note: Default service is a new feature in Oracle Database 11g Release
1 If you use any other version of the Oracle Database Client to connect to the database, then you must specify the SID and port number
Creating a Java Class in JDeveloper
The first step in building a Java application is to create a Java class The following instructions describe how you create a class called DataHandler, which will contain the methods for querying the database and modifying the data in it
1 In the Application Navigator, right-click the View project, and from the shortcut menu, select New.
2 In the New Gallery, select the General category In the Items list, select Java Class , and click OK The Create Java Class dialog box is displayed.
3 In the Create Java Class dialog box, enter DataHandler as the class Name, and hr
as the Package Do not change the default values of the Optional Attributes, and click OK The Create Java Class dialog box with the appropriate values specified is
shown in Figure 3–6
Figure 3–6 Creating a Java Class
Trang 394. The skeleton DataHandler class is created and is displayed in the Java Source Editor The package declaration, the class declaration, and the default constructor are created by default Figure 3–7 shows the class displayed in the Java Source Editor, ready for you to add your Java code:
Figure 3–7 Java Source Editor
Java Libraries
Oracle JDeveloper comes with standard libraries to help Java application programming These libraries include API support for Application Development Framework (ADF), Oracle libraries for JDBC, JSP, and so on
To use JDBC in your project, you import the Oracle JDBC library into the project Similarly, to use JSP technology, you import the JSP Runtime library
Overview of the Oracle JDBC Library
Important packages of the Oracle JDBC library include the following:
■ oracle.jdbc: The interfaces of the oracle.jdbc package define the Oracle extensions to the interfaces in the java.sql package These extensions provide access to Oracle SQL-format data and other Oracle-specific features, including Oracle performance enhancements
■ oracle.sql: The oracle.sql package supports direct access to data in SQL format This package consists primarily of classes that provide Java mappings to SQL data types and their support classes
■ oracle.jdbc.pool: This package includes the OracleDataSource class that is used
to get a connection to the database The overloaded getConnection method returns a physical connection to the database
Overview of the JSP Runtime Library
This library includes the classes and tag libraries required to interpret and run JSP files
on the Oracle WebLogic Server that comes with JDeveloper
Adding JDBC and JSP Libraries
To include libraries in your project, perform the following steps:
1 Double-click the View project in the Application Navigator to display the Project
Properties dialog box
2 Click Libraries and Classpath, and then click Add Library The Add Library
dialog box is displayed with a list of the available libraries for the Java2 Platform,
Trang 40Connecting to Oracle Database from a Java Application
3. In the Add Library dialog box, scroll through the list of libraries in the Extension
folder Select the JSP Runtime library and click OK to add it to the list of selected
libraries for your project Similarly, add the Oracle JDBC library Figure 3–8 shows the Oracle JDBC library added to the view project
Figure 3–8 Importing Libraries
4 Click OK.
Importing JDBC Packages
To use JDBC in the Java application, import the following JDBC packages:
1. If the DataHandler.java class is not already open in the Java Source Editor, in the
Application Navigator, expand the View project, Application Sources, and your package (hr) and double-click DataHandler.java.
2. At the end of the generated package declaration, on a new line, enter the import statements shown in Example 3–3
Example 3–3 Importing Packages in a Java Application
package hr;
import java.sql.Connection;
import oracle.jdbc.pool.OracleDataSource;
Declaring Connection-Related Variables
Connection information is passed to the connection method by using the following connection variables: the connection URL, a user name, and the corresponding password
Use the Java Source Editor of JDeveloper to edit the DataHandler.java class as follows: