因为我用console输入密码,因此 必须在命令行中运行,在用到dao的时候出现了以上情况。
附上Userdao.login的代码
package dao;
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import domain.Course;
import domain.Stu;
import domain.Teacher;
import util.JDBC;
public class Userdao {
Connection conn=JDBC.getConnection();
public boolean login(Stu stu) throws SQLException {
// TODO 核对登陆信息,返回结果
String id=stu.getid();
String pass=stu.getpass();
Statement sta=conn.createStatement();//这是第24行
ResultSet rs=sta.executeQuery("select * from stu");
while(rs.next()) {
if(id.equalsIgnoreCase(rs.getString("ID"))) {
if(pass.equalsIgnoreCase(rs.getString("pass"))) {
rs.close();
sta.close();
return true;
}
}
}
rs.close();
sta.close();
return false;
}
之后我在第二十四行前插入了一段代码判断conn是否为null,并重新在命令行
预编译,并运行,结果报错信息仍然在第24行。就像没有更改一样。
删除原编译的文件在编译运行也没有用。
请问是什么原因?Testwin调用的文件都需要在命令行编译吗?