Java 是否必须在SpringStarter项目中配置数据源?
我想创建一个基本的Spring启动应用程序并发出get请求。我添加了SpringJPA、SpringWeb依赖项,并开始在端口8080中运行,但我的应用程序无法启动。上面说 “说明: 配置数据源失败:未指定“url”属性,无法配置嵌入式数据源。 原因:未能确定合适的驱动程序类别” 我没有添加任何数据库依赖项,因为我不需要它,在我的项目中必须有数据库依赖项吗? 这是我的pom.xmlJava 是否必须在SpringStarter项目中配置数据源?,java,mysql,spring,spring-boot,web,Java,Mysql,Spring,Spring Boot,Web,我想创建一个基本的Spring启动应用程序并发出get请求。我添加了SpringJPA、SpringWeb依赖项,并开始在端口8080中运行,但我的应用程序无法启动。上面说 “说明: 配置数据源失败:未指定“url”属性,无法配置嵌入式数据源。 原因:未能确定合适的驱动程序类别” 我没有添加任何数据库依赖项,因为我不需要它,在我的项目中必须有数据库依赖项吗? 这是我的pom.xml <?xml version="1.0" encoding="UTF-8&quo
<?xml version="1.0" encoding="UTF-8"?>
4.0.0
org.springframework.boot
spring启动程序父级
2.3.1.1发布
com.example
java示例项目
0.0.1-快照
java示例项目
SpringBoot的演示项目
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
1.8
org.springframework.boot
spring引导启动器数据jpa
org.springframework.boot
SpringBootStarterWeb
org.springframework.boot
弹簧靴开发工具
运行时
真的
org.springframework.boot
弹簧起动试验
测试
org.junit.vintage
朱尼特老式发动机
org.springframework.boot
springbootmaven插件
您的POM中可能存在数据依赖关系:(或build.gradle)
org.springframework.boot
spring引导启动器数据jpa
2.3.1.1发布
如果是,请删除。如果您包括Spring JPA,那么是的,它是强制性的 但您可以轻松禁用Spring自动配置:
spring.autoconfigure.exclude=
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration, \
org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration, \
org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration
是的,这是强制性的。但是,如果您不想运行一个真正的数据库,那么就使用内存中的数据库H2。只需将com.h2数据库:h2添加到依赖项中。您将包括JPA。在没有数据库的情况下如何使用JPA?这是一个解决方法。如果一个人不需要JPA(或DB访问),你就不应该包括它。
spring.autoconfigure.exclude=
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration, \
org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration, \
org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration