梅晃诚 2019-08-21 16:29 采纳率: 0%
浏览 1087

Java.lang.NullPointerException 在IDE中不会报错,命令行中就会报错,何解?

因为我用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调用的文件都需要在命令行编译吗?

  • 写回答

3条回答 默认 最新

  • dabocaiqq 2019-08-21 16:52
    关注
    评论

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况