开发者社区 问答 正文

java:包org.springframework.dao和org.springframework.

刚开始处理Maven和Spring。当我尝试创建DAO和ResultSet然后运行该应用程序时会引发错误:

Error:(4, 31) java: package org.springframework.dao does not exist
Error:(5, 37) java: package org.springframework.jdbc.core does not exist
Error:(5, 43) java: package org.springframework.context.support does not exist

你能建议出什么问题吗?不是这样配置的依赖项或其他东西吗?

我的pom.xml由

<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>5.2.1.RELEASE</version>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>5.2.1.RELEASE</version>
    </dependency>

    <dependency>
        <groupId>javax.inject</groupId>
        <artifactId>javax.inject</artifactId>
        <version>1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-dbcp2</artifactId>
        <version>2.7.0</version>
    </dependency>
    <dependency>
        <groupId>postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>9.1-901-1.jdbc4</version>
    </dependency>
    <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>42.2.8</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-jdbc</artifactId>
        <version>5.2.1.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
        <version>2.2.1.RELEASE</version>
    </dependency>
</dependencies>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.1</version>
            <configuration>
                <source>8</source>
                <target>8</target>
            </configuration>
        </plugin>
    </plugins>
</build>

DAO类和应用程序附在此处1和2

展开
收起
几许相思几点泪 2019-12-08 22:05:32 1064 分享 版权
阿里云 AI 助理回答

从你提供的错误信息来看,问题在于Maven项目中缺少对org.springframework.daoorg.springframework.jdbc.core以及org.springframework.context.support这些包的引用。尽管你的pom.xml文件中已经包含了部分Spring相关的依赖,但可能因为版本不匹配或者依赖未被正确解析,导致这些包没有被正确导入。

首先,请确保所有Spring相关依赖的版本是一致的,并且与你的项目需求兼容。在你的案例中,所有Spring框架的依赖都使用了5.2.1.RELEASE版本,这是一个好的实践,保持版本一致可以减少潜在的兼容性问题。

其次,确认是否所有的必需依赖项都已经添加到pom.xml中。对于处理数据库操作(DAO和ResultSet),除了你已有的依赖外,确保有直接包含spring-jdbc的依赖,你已经包含了这个依赖,看起来是正确的。

针对你遇到的具体错误,我注意到你已经包含了spring-jdbc,这应该会提供org.springframework.jdbc.core包。但是,对于org.springframework.daoorg.springframework.context.support,通常它们是由spring-contextspring-tx(事务支持)提供的。虽然你已经有了spring-context,但请检查是否需要显式地添加spring-tx来获取org.springframework.dao包。

因此,尝试在你的pom.xml中加入或确认spring-tx的依赖项:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-tx</artifactId>
    <version>5.2.1.RELEASE</version>
</dependency>

确保所有更改后,执行mvn clean installmvn clean compile命令来刷新Maven依赖并重新编译项目。如果问题仍然存在,考虑检查IDE(如IntelliJ IDEA或Eclipse)的Maven配置,确保它没有使用过时的本地依赖快照,有时清理IDE的缓存和重新导入项目也能解决这类问题。

最后,如果你的DAO类和其他代码片段中使用了特定于Spring Boot的注解(比如@Repository@Autowired等),确保你的项目结构和配置遵循Spring Boot的标准做法,包括但不限于正确的@ComponentScan设置和@SpringBootApplication入口类。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答标签:
问答地址: