Oracle fournit quatre types de pilotes pour sa base de données, mais je n'énumérerai que les deux dont vous avez parlé.
L'OCI le pilote est un type 2 pilote JDBC et utilise le code natif pour se connecter à la base de données. Ainsi, il ne s'agit que d'une option sur les plates-formes disposant de pilotes Oracle natifs et il ne s'agit pas d'une implémentation Java "pure".
Le pilote JDBC Thin d'Oracle est un type 4 Pilote JDBC qui utilise des sockets Java pour se connecter directement à Oracle. Il implémente directement le protocole SQL*Net TCP/IP d'Oracle. Parce qu'il est 100% Java, il est indépendant de la plate-forme et peut également être exécuté à partir d'une applet. (pas que vous devriez)