JSP中DatabaseConnection无法解析问题求助(Eclipse可自动补全)
问题:JSP中DatabaseConnection无法解析,但IDE能自动补全
开发动态Web/Servlet项目时,JSP代码中出现「DatabaseConnection无法解析」的错误,对应位置带有红色下划线。奇怪的是,在Eclipse中输入包名时IDE能自动补全该类,但错误始终无法消除,求解决办法。
数据库连接类代码
package com.connection; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; public class DatabaseConnection { //Creating Connection public static Connection connection; //Creating universal method to open connect will mysql database public static Connection getConnection() { try { //Registering with mysql Driver Class.forName("com.mysql.jdbc.Driver"); connection = DriverManager.getConnection("jdbc:mysql://localhost:3308/shoppingsystem", "root", "Narend-10"); } catch (Exception e) { e.printStackTrace(); } return (connection); } //Creating universal method to close connect will mysql database public static void CloseConnection() { if (connection != null) { try { connection.close(); connection = null; } catch (SQLException ex) { ex.printStackTrace(); } } } //Creating universal method to query for retriving information public static ResultSet getResultFromSqlQuery(String SqlQueryString) { //Creating Resultset object ResultSet rs = null; try { //Checking whether the connection is null or null if (connection == null) { getConnection(); } //Querying the query rs = connection.createStatement().executeQuery(SqlQueryString); } catch (Exception ex) { ex.printStackTrace(); } return rs; } //Creating universal method to query for inserting or updating information in mysql database public static int insertUpdateFromSqlQuery(String SqlQueryString) { int i = 2; try { //Checking whether the connection is null or null if (connection == null) { getConnection(); } //Querying the query i = connection.createStatement().executeUpdate(SqlQueryString); } catch (Exception ex) { ex.printStackTrace(); } return i; } } } }
JSP代码片段
<% ResultSet resultOrders=DatabaseConnection.getResultFromSqlQuery("select * from tblorders where order_status='Pending'"); while (resultOrders.next()) { %>
解决办法
添加JSP类导入
JSP未显式导入目标类时,即使IDE能识别,运行/编译阶段仍会报错。在JSP文件顶部添加导入语句:<%@ page import="com.connection.DatabaseConnection" %> <%@ page import="java.sql.ResultSet" %>验证类编译状态
确认DatabaseConnection.java已编译为.class文件,检查项目build/classes/com/connection/目录下是否存在DatabaseConnection.class;若未编译,右键项目选择「Build Project」手动触发编译。检查部署装配配置
右键项目 → 「Properties」→ 「Deployment Assembly」,确保Java Build Path Entries对应的编译输出目录已被包含在部署列表中,保证编译后的类能被服务器加载。清理重建项目
执行「Project」→ 「Clean...」清理旧编译文件,之后重新构建项目,再重启服务器测试。核对大小写一致性
确认JSP中引用的DatabaseConnection类名、包名与Java类完全一致,Java对大小写敏感,细微差异都会导致解析失败。
内容的提问来源于stack exchange,提问作者achiever17
相关产品推荐
相关产品推荐

