Eclipse中JSP无法访问MySQL驱动,出现导入类型报错
解决JSP中MySQL连接的导入错误问题
嘿,别担心!作为JSP新手遇到这种环境配置问题太正常了,咱们一步步来搞定这个Only a type can be imported. com.mysql.jdbc.Connection resolves to a package错误:
先修正你的导入语句
你大概率是在JSP里写了<%@ page import="com.mysql.jdbc.Connection" %>,但其实JDBC标准推荐使用通用的java.sql.Connection接口,而非MySQL的具体实现类。而且这个报错的核心原因是:com.mysql.jdbc.Connection是一个类,不是包,但Eclipse识别不到它——要么是导入路径错了,要么是jar包没放对位置。建议把导入语句改成:<%@ page import="java.sql.Connection, java.sql.DriverManager, java.sql.SQLException" %>确保jar包在正确的位置
仅仅在Eclipse的Build Path里添加外部jar是不够的!Tomcat运行JSP时,只会读取项目WEB-INF/lib目录下的依赖包。你需要把mysql-connector-java-5.1.45.jar复制到项目的WEB-INF/lib文件夹里(如果没有这个文件夹就手动新建一个),然后右键项目选择Refresh刷新。清理项目缓存并重建依赖
Eclipse的缓存有时候会“抽风”,试试这几步:- 右键你的项目 → 选择
Clean,清理项目的编译缓存 - 右键项目 →
Properties→Java Build Path→Libraries,先移除原来添加的MySQL驱动jar,然后重新添加(这次直接从WEB-INF/lib目录里选择jar包) - 重启Eclipse和Tomcat服务器,再测试你的JSP页面
- 右键你的项目 → 选择
检查连接代码的正确性
在JSP里加载驱动和获取连接的代码要对应正确,5.1版本的驱动代码应该是这样的:try { Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/你的数据库名?useSSL=false&characterEncoding=utf8"; String username = "你的用户名"; String password = "你的密码"; Connection conn = DriverManager.getConnection(url, username, password); // 后续数据库操作 } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); }
按上面的步骤操作后,这个错误应该就能解决啦!
内容的提问来源于stack exchange,提问作者Lütfi GÜL
相关产品推荐
相关产品推荐

