web-dev-qa-db-fra.com

Quel connecteur MySQL dois-je utiliser: mysql-connector-Java-5.1.46.jar ou mysql-connector-Java-5.1.46-bin.jar Quelle est la différence?

Je me prépare à utiliser jdbc pour la première fois et je suis en train d'installer le pilote jdbc pour MySQL.

Cependant, je ne sais pas lequel de ces fichiers déplacer vers le dossier WEB_INF/lib dans Eclipse. Ils semblent tous deux contenir le même contenu et sont inclus ensemble dans le fichier Zip téléchargé pour le connecteur MySQL.

J'ai cherché partout mais je n'ai pas pu trouver de documentation pour expliquer lequel de ces fichiers utiliser.

13
IqbalHamid

Je pensais que vous plaisantiez, mais je viens de télécharger le Zip depuis https://dev.mysql.com/downloads/connector/j/ et, en effet, il contient les deux.

Le mysql-connector-Java-5.1.46.jar et mysql-connector-Java-5.1.46-bin.jar sont binaires identiques, à l'exception de META-INF/INDEX.LIST (qui contient le nom réel du fichier jar). J'ai décompressé les deux et les ai comparés en utilisant kdiff3.

En bref: vous pouvez utiliser soit: ce que vous préférez.

Cette modification est mentionnée dans CHANGES comme:

- Correction du bogue n ° 27231383, FOURNIR DES PAQUETS COMMERCIAUX FAVORISANTS SANS "-BIN".

Fait intéressant, il n'y a pas de bogue 27231383 dans le suiveur de bogues MySQL (le nombre est trop élevé pour les bogues `` normaux '' répertoriés), il peut donc provenir d'un autre système au sein d'Oracle.

De plus, le notes de mise à jour du connecteur en ligne/J 5.1.46 mentionne:

Le bundle pour Connector/J 5.1 fourni par Oracle contient désormais un package jar supplémentaire avec le nom mysql-connector-Java-5.1.ver.jar (mysql-connector-Java-commercial-5.1.ver.jar pour les offres commerciales). Il est identique à l'autre package jar avec le package d'origine nommé mysql-connector-Java-5.1.ver-bin.jar (mysql-connector-Java-commercial-5.1.ver-bin.jar pour les offres commerciales), à l'exception de son nom de fichier plus convivial pour Maven. (Bogue n ° 27231383)

Vraisemblablement, étant donné la correspondance plus étroite avec les conventions de dénomination Maven, cela facilite l'installation de la bibliothèque dans les référentiels Maven locaux/d'entreprise (par exemple, si vous ne voulez pas, ou ne pouvez pas légalement, utiliser Maven Central).

Mais pour répéter: ce sont les mêmes, et vous pouvez utiliser l'un ou l'autre.

22
Mark Rotteveel