Skip to Content
Java Programming with Oracle JDBC
book

Java Programming with Oracle JDBC

by Donald Bales
November 2001
Intermediate to advanced
496 pages
13h 51m
English
O'Reilly Media, Inc.
Content preview from Java Programming with Oracle JDBC

Calling Object Methods

A database object can have two kinds of methods: static or member. The first, static, is just like a static Java method, in that it can be called by using its type name, just as a static Java method is called using its class name. For example, type person_typ, which has a static method get_id( ) that returns the next person_id sequence value, can be called as a stored procedure:

person_typ.get_id(  )

To execute get_id( ) , use a callable statement, which we covered in Chapter 13. Although using a callable statement to execute a static method is pretty straightforward, calling member methods presents a new problem.

Member methods -- just like their public, nonstatic Java counterparts -- must be associated with an instance of the object in order to be executed. But how do you get an instance of the object in the database to execute its member method? Your first guess might be to use a reference, which makes pretty good sense to me, too. But the functionality to execute a member method with a reference doesn’t exist yet. Instead, use the object value returned from the database value( ) function or the proprietary oracle.sql.REF object’s getValue( ) method. In this case, that object value is a Struct, and you pass that Struct as the first argument of the member function or procedure. Pass it as the first argument even though it is not a visibly defined parameter. The syntax is:

               user_defined_type.method_name(
 self in user_defined_type
[, parameter_1 IN data_type ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Expert Oracle JDBC Programming

Expert Oracle JDBC Programming

R.M Menon

Publisher Resources

ISBN: 059600088XPublisher WebsiteErrata Page