Gentoo Archives: gentoo-dev

From: Dylan Carlson <absinthe@g.o>
To: gentoo-dev@g.o
Cc: java@g.o
Subject: [gentoo-dev] [RFC]: JDBC Driver Type Support
Date: Fri, 16 May 2003 04:18:28
Hash: SHA1


Since incorporating more JDBC support into the tree, I have gotten a few 
inquiries on how we plan to support different driver types.  This email 
will hopefully explain the direction I intend to guide the process 
towards, so that Java developers listening can have an opportunity to 
voice any concerns.


JDBC Types:  

	Type 1:  JDBC-ODBC bridge, plus an ODBC driver 
	(for things like dBase, Access, Excel)
	Type 2:  native API, part-Java driver 
	(rarely used)
	Type 3:  100% Java driver for database middleware
	Type 4:  100% Java driver for direct connections

JDBC Versions:  JDBC 2.0 vs 3.0?

I won't attempt to explain this detail.   JDBC 3.0 is for Java 1.4 and 
later only, and has improvements in pooling, and integration with J2EE.  
It should be noted that the lead author of JDBC 3.0 (Jon Ellis) is also a 
Gentoo developer.  :)


1.  Type 4 drivers will be the default for any data source that has Type 4 
drivers available.

2.  Type 1 drivers will be added only when Type 4 drivers are not available 
(as will normally be the case).

3.  I am not expecting to see any support for Type 2 drivers in the tree.  
If they do exist, they will be done as separate packages from any other 
driver type, because of portability issues.

4.  Type 3 drivers are expected to be included if they are available, in 
the same ebuilds that install the Type 4 drivers.   This will mean the 
addition of one local USE flag:   "jdbc-type3".

5.  Setting "jdbc-type3" will ensure that Type 3 drivers will get installed 
(if they exist) instead of Type 4 drivers.   Both cannot be installed at 
the same time, as both drivers would end up in package.env's CLASSPATH -- 
which is not a sane configuration.

6.  JDBC 2.0 drivers will be kept in separate packages from JDBC 3.0 

Questions?  Comments?   

Dylan Carlson

Public Key:
Key fingerprint = 3AEA DE38 FE42 15A6 C0E2 730E 3D04 BCC1 708E 165F
Version: GnuPG v1.2.1 (GNU/Linux)


gentoo-dev@g.o mailing list