eclipse导入了jar包但是import时报错:The import com.alibaba cannot be resolved

图片说明
已导入jar包目录如此
图片说明
导入成功了

但是。。。
一直报错:DruidDataSourceFactory cannot be resolved
图片说明
图片说明

已经进行了删除重引入,project里clean操作,毫无卵用。。。望帮助

代码如下。。。

package Ex13_JDBC;

import com.alibaba.druid.pool.DruidDataSourceFactory;

import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;

/**
 * Druid 
 *  用连接池查询user表中的数据
 */
public class JdbcDruidDemo {
    public static void main(String[] args) {
        //将这些弄到大括号外面提升作用域,好释放资源
        Connection conn = null;
        Statement stmt = null;
        ResultSet rs = null;
        try {
            //1. 导入druid相应的jar包
            //2. 定义配置文件
                //2.1 定义一个io流集合
            Properties pro = new Properties();
                //2.2 将druid.properties文件读取出来并写入Properties集合中
            pro.load(JdbcDruidDemo.class.getClassLoader().getResourceAsStream("druid.properties"));
            //3. 创建数据库连接池对象  通过工厂来获取 DruidDataSourceFactory 然后传递Properties对象 实现标准接口:DataSource
            DataSource ds = DruidDataSourceFactory.createDataSource(pro);
            //4. 获取数据库连接对象
            conn = ds.getConnection();
            //5. 创建sql语句
            String sql = "select * from user";
            //6. 创建执行sql对象
            stmt = conn.createStatement();
            //7. 创建一个ResultSet:结果集对象,封装查询结果
            rs = stmt.executeQuery(sql);
            //8. 然后在用ResultSet里的方法 next():游标向下移动一行 判断是否有数据 有就是true,没有就是false
            while (rs.next()) {
                //rs.getString():传递的是数据库的字段
                String username = rs.getString("username");
                int password = rs.getInt("password");
                //9. 输入结果
                System.out.println(username + "    " + password);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally{
            //10. 释放资源
            try {
               if(rs != null){
                   rs.close();
               }
            }catch(Exception e){
                e.printStackTrace();
            }
            try {
                if(stmt != null){
                    stmt.close();
                }
            }catch(Exception e){
                e.printStackTrace();
            }
            try {
                if(conn != null){
                    conn.close();
                }
            }catch(Exception e){
                e.printStackTrace();
            }
        }
    }
}

img


我也是明明有jar包,还是会报错。我刚刚发现module-info.java中不知什么时候多了一个JDBC

img


我直接删掉整个module-info.java文件就可以了

img


不太懂为什么,但就是可以了,一开始没注意。知道原理也可以给我讲讲。

可能包有问题,可以到官网重新下载,https://repo1.maven.org/maven2/com/alibaba/druid/1.1.19/druid-1.1.19.jar