Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否必须在SpringStarter项目中配置数据源?_Java_Mysql_Spring_Spring Boot_Web - Fatal编程技术网

Java 是否必须在SpringStarter项目中配置数据源?

Java 是否必须在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

我想创建一个基本的Spring启动应用程序并发出get请求。我添加了SpringJPA、SpringWeb依赖项,并开始在端口8080中运行,但我的应用程序无法启动。上面说 “说明:

配置数据源失败:未指定“url”属性,无法配置嵌入式数据源。 原因:未能确定合适的驱动程序类别”

我没有添加任何数据库依赖项,因为我不需要它,在我的项目中必须有数据库依赖项吗? 这是我的pom.xml

<?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