访问数据库时出现错误

package db;
import java.sql.*;
public class Test {
public static void main(String[] args) {
Connection cn;
PreparedStatement psm=null;
ResultSet rs; //ResultSet接口用来暂存数据库查询出的结果集
DBCon dbcon=new DBCon();
cn=dbcon.getConnection(); //获取数据库对象
Classes classes=new Classes();
String sql="select * from classes";
try {
psm=cn.prepareStatement(sql);
rs=psm.executeQuery();
if(rs.next()) { //判断是否查询到结果
rs.absolute(0);
while(rs.next()) {
String classNum=rs.getString(2);
String className=rs.getString(3);
String classSex=rs.getString(4);
String classTime=rs.getString(5);
String classAcademy=rs.getString(6);
String classSpecialized=rs.getString(7);
String classClassa=rs.getString(8);
classes.setNum(classNum);
classes.setName(className);
classes.setSex(classSex);
classes.setTime(classTime);
classes.setAcademy(classAcademy);
classes.setSpecialized(classSpecialized);
classes.setClassa(classClassa);
System.out.println(classes.getNum()+","+classes.getName()+","+classes.getSex()+","+classes.getTime()+","+classes.getAcademy()+","+classes.getSpecialized()+","+classes.getClassa());
}

        }
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    
}

}

img

rs.absolute(0);中0设置为1看看

boolean absolute( int row ) throws SQLException;

按照源码中说明,The first row is row 1, the second is row 2, and so on.

将rs.absolute(0) 改成rs.absolute(1) ,或者去掉试试。

你看看第17行代码是什么

你的17行是哪个?看报错像是set的时候类型转换错了

楼上说的是这个17行; 你点击可以直接跳转到那一行

img