with postgres conectar con postgresql spring-data-jpa spring-jdbc spring-boot

conectar - spring postgresql 10



El arranque de primavera no puede cargar DataSource usando el controlador PostgreSQL (2)

¿De dónde vino esto: database.driverClassName=org.postgresql.Driver ? ¿No quieres decir spring.datasource.driverClassName ?

He desarrollado con éxito un prototipo utilizando Spring Boot 1.0.2.RELEASE (era 1.0.1.RELEASE hasta hoy).

He buscado y buscado y probado soluciones como: La configuración automática del origen de datos jdbc de Spring Boot falla en Tomcat independiente. Spring Boot / Spring Data import.sql no ejecuta Spring-Boot-1.0.0.RC1

Todos sugieren dejar que Spring Boot haga el trabajo. Cuando uso H2, todo funciona, pero cuando intento cambiar a PostgreSQL, obtengo:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''entityManagerFactory'' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Instantiation of bean failed; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.entityManagerFactory(org.springframework.orm.jpa.JpaVendorAdapter)] threw exception; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [javax.sql.DataSource] is defined

Mi build.gradle es como sigue:

loadConfiguration() def loadConfiguration() { def environment = hasProperty(''env'') ? env : ''dev'' project.ext.envrionment = environment println "Environment is set to $environment" def configFile = file(''config.groovy'') def config = new ConfigSlurper("$environment").parse(configFile.toURL()) project.ext.config = config } buildscript { ext { springBootVersion = ''1.0.2.RELEASE'' } repositories { mavenCentral() } dependencies { classpath("org.springframework.boot:spring-boot-gradle- plugin:${springBootVersion}") } } apply plugin: ''java'' apply plugin: ''eclipse'' apply plugin: ''idea'' apply plugin: ''spring-boot'' apply plugin: ''war'' apply plugin: ''groovy'' war { baseName = ''test'' version = ''0.0.1-SNAPSHOT'' } configurations { providedRuntime } repositories { mavenCentral() } dependencies { compile("org.springframework.boot:spring-boot-starter-web:${springBootVersion}") compile("org.springframework.boot:spring-boot-starter-thymeleaf:${springBootVersion}") compile("org.springframework.boot:spring-boot-starter-jdbc:${springBootVersion}") compile("org.springframework.boot:spring-boot-starter-data-jpa:${springBootVersion}") compile("postgresql:postgresql:9.1-901.jdbc4") //compile("com.h2database:h2") testCompile("org.springframework.boot:spring-boot-starter-test:${springBootVersion}") } task wrapper(type: Wrapper) { gradleVersion = ''1.11'' }

application.properties:

spring.jpa.database=POSTGRESQL spring.jpa.show-sql=false spring.jpa.hibernate.ddl-auto=update spring.database.driverClassName=org.postgresql.Driver spring.datasource.url=jdbc:postgresql://localhost/cms spring.datasource.username=cms spring.datasource.password=NA

Eliminando application.properties y cambiando la dependencia de nuevo a H2 y todo está bien.

No puedo encontrar donde estoy haciendo mal :-(


alguna vez intente volver a importar su proyecto mvn si las dependencias no se actualizan, también agregue el siguiente a su pom.xml

<dependency> <groupId>postgresql</groupId> <artifactId>postgresql</artifactId> <version>9.1-901.jdbc4</version> </dependency>