Usually within an implementation of SQLData, there is a corresponding field for every attribute of an SQL type, or only one field if the type is SQL DISTINCT. When the UDT is returned within a ResultSet, it is accessed with the ResultSet.getObject method and is returned as an Object which is an instance of the class defined by the SQLData mapping. The application can use this object just like any other Java object and can store changes back into the database using the PreparedStatement.setObject method which performs the reverse mapping into the SQL UDT.
It is standard for an implementation for a custom mapping to be generated by a tool. The tool usually requires the name of the SQL UDT, the name of the class which it is going to be mapped to, and the field names to which the UDT attributes will be mapped. The tool can then implement the SQLData readSQL and writeSQL methods. readSQL reads attributes from an SQLInput object, and writeSQL writes them. This is done via SQLInput and SQLOutput method calls respectively
Ordinarily a programmer would not call SQLData methods directly. Similarly SQLInput and SQLOutput methods are not usually called directly.
|
|
|
|