【发布时间】:2016-11-08 23:53:24
【问题描述】:
我正在努力实现这个 DOA 类。我添加了 getConnection 和 closeConnection 方法,但是,当添加 ArrayList<Employees> 时,我总是会出错。我在下面添加了我的代码。有人给了我一个 UML 图供我使用。
我做错了什么?有人能指出我正确的方向吗?
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class EmployeeDAO {
public static void main(String[] args) throws ClassNotFoundException {
Connection con = null;
Statement st = null;
ResultSet rs = null;
Class.forName("org.sqlite.JDBC");
try {
String dbURL = "jdbc:sqlite:employeeDatabase.sqlite";
con = DriverManager.getConnection(dbURL);
st = con.createStatement();
rs = st.executeQuery("SELECT * FROM employees;");
while (rs.next()) {
System.out.println(rs.getString("ID"));
System.out.println(rs.getString("Name"));
System.out.println(rs.getString("Gender"));
System.out.println(rs.getString("DOB"));
System.out.println(rs.getString("Address"));
System.out.println(rs.getString("Postcode"));
System.out.println(rs.getString("NIN"));
System.out.println(rs.getString("JobTitle"));
System.out.println(rs.getString("StartDate"));
System.out.println(rs.getString("Salary"));
System.out.println(rs.getString("Email"));
}
} catch (SQLException ex) {
ex.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
}
if (st != null) {
st.close();
}
if (con != null) {
con.close();
}
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}
}
线程“main”java.lang.Error 中的异常:未解决的编译 问题:
无法将员工解析为类型
参数 selectallEmployees 的非法修饰符;只允许决赛
员工无法解析为 EmployeeDAO.main(EmployeeDAO.java:61) 处的类型
【问题讨论】:
-
您是否有理由自己这样做而不是使用 Hibernate 或 MyBatis 之类的框架?
-
你得到什么错误?
-
我没有看到您的班级中定义了
getConnection或closeConnection。 -
我也没有看到任何 ArrayList。
-
您的主要方法最好完全位于您的模型之外。