le code source de démarrage du printemps pour la création datasource

Giotrrjh:

Je suis en train de passer par des sources de démarrage de printemps pour gagner un peu plus de confiance sur son fonctionnement interne.

Par exemple:
Lorsque vous utilisez les propriétés suivantes:

spring.datasource.url=jdbc:h2:./data/test
spring.datasource.username=sa
spring.datasource.password=as

démarrage de printemps va essayer de deviner le pilote JDBC dont vous avez besoin en analysant la spring.datasource.urlpropriété, et regardez dans le chemin de classe pour le pilote souhaité.

On peut en déduire ce comportement en lisant la documentation Spring:

Vous ne sont souvent pas besoin de spécifier le pilote de classe-nom, depuis le printemps Boot peut déduire pour la plupart des bases de données de l'URL.

Pour une mise en commun de DataSource à créer, nous devons être en mesure de vérifier qu'une classe de pilote valide est disponible, donc nous vérifions que quoi que ce soit avant de le faire. En d'autres termes, si vous définissez spring.datasource.driver-class-name = com.mysql.jdbc.Driver, cette classe doit être chargeable.

Je pense que le code responsable de ce pourrait être trouvé quelque part ici .

Mais il me semble ne pas être capable de le trouver.

Pouvez-vous me aider à faire la lumière à ce sujet?

Charles Dowbecki:

Le nom de la classe du pilote JDBC est régie par les constantes du DatabaseDriverENUM . Voyez comment cette ENUM est utilisé pour comprendre où la propriété URL de source de données est analysé par exemple dans , DataSourceConfigurationvous trouverez:

DatabaseDriver databaseDriver = DatabaseDriver
                .fromJdbcUrl(properties.determineUrl());

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=206239&siteId=1
conseillé
Classement