web-dev-qa-db-fra.com

spring jpa application.properties useSSL

J'essaie de désactiver ssl, dans ma base de données mysql locale. Mais je ne trouve pas la propriété réelle dans un fichier spring application.properties qui ferait cela.

mon dossier actuel est:

# ===============================
# = DATA SOURCE
# ===============================

# Set here configurations for the database connection

# Connection url for the database "test"
spring.datasource.url = jdbc:mysql://localhost:3306/test
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

# Username and password
spring.datasource.username = root
spring.datasource.password = blah

# Keep the connection alive if idle for a long time (needed in production)
spring.datasource.testWhileIdle = true
spring.datasource.validationQuery = SELECT 1

# ===============================
# = JPA / HIBERNATE
# ===============================

# Use spring.jpa.properties.* for Hibernate native properties (the prefix is
# stripped before adding them to the entity manager).

# Show or not log for each sql query
spring.jpa.show-sql = true

# Hibernate ddl auto (create, create-drop, update): with "update" the database
# schema will be automatically updated accordingly to Java entities found in
# the project
spring.jpa.hibernate.ddl-auto = update

# Naming strategy
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy

# Allows Hibernate to generate SQL optimized for a particular DBMS
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect

J'ai essayé spring.datasource.useSSl=false et cela ne fonctionne pas. J'ai aussi essayé spring.datasource.url = jdbc:mysql://localhost:3306/test&useSSL=false

18
SJC

J'ai résolu mon problème avec ce qui suit:

jdbc:mysql://localhost:3306/test?verifyServerCertificate=false&useSSL=false&requireSSL=false
36
Sanjay Mistry

Ne devriez-vous pas utiliser "?" au lieu de '&'

C'est le votre

spring.datasource.url =jdbc:mysql://localhost:3306/test&useSSL=false

Ce que je dis c'est

spring.datasource.url = jdbc:mysql://localhost:3306/test?useSSL=false
1
Subhajit Roy

Je n'aime pas polluer les options Java ou les propriétés système, qui sont de toute façon inutiles dans les conteneurs d'application ...

Vous pouvez définir un certificat SSL pour la connexion MySQL par programmation avec:

jdbc: mysql: //example.com: 3306/MYDB? verifyServerCertificate = true & useSSL = true & requireSSL = true & clientCertificateKeyStoreUrl = fichier: cert/keystore.jks & clientCertificateKeyStorePassword = 123456 & trustCertificateKeyStoreUrl = fichier: trustKey\trust12345

Il est documenté:

1
gavenkoa