哪位工程师能讲解一下,实在看不懂

  • package jg;

    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.ArrayList;
    import java.util.Scanner;

public class DBO {
    
    public static Connection conn = null;
    public static Statement stmt = null;
    public static PreparedStatement ptmt= null;
    public static ResultSet rs = null;
    static int result;
    @SuppressWarnings("unused")
    private Scanner input=new Scanner(System.in);
    public static ArrayList<Studengtcourse> getAll() {
        ArrayList<Studengtcourse> list=new ArrayList<Studengtcourse>();
        conn=DBC.getConn();
        try {
            stmt=conn.createStatement();
            String sql="select * from studengtcourse";
            rs=stmt.executeQuery(sql);
            while(rs.next())
            {
                Studengtcourse studengtcourse=new Studengtcourse();
                studengtcourse.setId(rs.getInt("id"));
                studengtcourse.setStudentName(rs.getString("student_name"));
                studengtcourse.setStudentId(rs.getInt("student_id"));
                studengtcourse.setEnglishCourse(rs.getInt("english_course"));
                studengtcourse.setMathCourse(rs.getInt("math_course"));
                studengtcourse.setComputerCourse(rs.getInt("computer_course"));
                
                list.add(studengtcourse);
            }        
        } catch(SQLException e) {
            e.printStackTrace();
        }finally {
            DBC.closeResultSet(rs);
            DBC.closeStatement(stmt);
            DBC.closeConnection(conn);              
            }
        return list;
    }
    public static int add(String studengtid, String name, String english, String math, String computer) {
        int i=0;
        try {
            conn=DBC.getConn();
            String sql="insert into studengtcourse (student_id,student_name,english_course,math_course,computer_course) values(?,?,?,?,?)";
            PreparedStatement ptmt = conn.prepareStatement(sql);
            ptmt.setInt(1, Integer.valueOf(studengtid));
            ptmt.setString(2, name);
            ptmt.setInt(3, Integer.valueOf(english));
            ptmt.setInt(4, Integer.valueOf(math));
            ptmt.setInt(5, Integer.valueOf(computer));
            i=ptmt.executeUpdate();    
        } catch (SQLException e) {
            e.printStackTrace();
            System.out.println("连接异常!");
        }finally
        {
            DBC.closePreparedStatement(ptmt);
            DBC.closeConnection(conn);
        }
        return i;
    }
    public static ArrayList<Studengtcourse> findByName(String name) {
        ArrayList<Studengtcourse> list=new ArrayList<Studengtcourse>();
        conn=DBC.getConn();
        try {
            stmt=conn.createStatement();
            String sql="select * from studengtcourse where student_name='"+name+"'";
            rs=stmt.executeQuery(sql);
            while(rs.next())
            {
                Studengtcourse studengtcourse=new Studengtcourse();
                studengtcourse.setId(rs.getInt("id"));
                studengtcourse.setStudentName(rs.getString("student_name"));
                studengtcourse.setStudentId(rs.getInt("student_id"));
                studengtcourse.setEnglishCourse(rs.getInt("english_course"));
                studengtcourse.setMathCourse(rs.getInt("math_course"));
                studengtcourse.setComputerCourse(rs.getInt("computer_course"));
                
                list.add(studengtcourse);
            }        
        } catch(SQLException e) {
            e.printStackTrace();
        }finally {
            DBC.closeResultSet(rs);
            DBC.closeStatement(stmt);
            DBC.closeConnection(conn);              
            }
        return list;
    }
    public static int deleteByName(String name3) {
        
        int i=0;       
        try {           
            conn=DBC.getConn(); 
            Statement stmt = conn.createStatement();
            String sql="delete from studengtcourse where student_name='"+name3+"'";        
            i=stmt.executeUpdate(sql);
        }catch(SQLException e) {
            e.printStackTrace();
            System.out.println("连接异常!");
         }finally
        {
            DBC.closePreparedStatement(ptmt);
            DBC.closeConnection(conn);  
        }
        return i;
    }
    public static String updateByName(String xh, String name4, String yy, String sx, String jsj) {
        String sql="update studengtcourse set student_id =?,student_name=?,english_course=?,math_course=?,computer_course=?  where student_name=?";
        try {          
            int xh1=Integer.valueOf(xh);
            int yy1=Integer.valueOf(yy);
            int sx1=Integer.valueOf(sx);
            int jsj1=Integer.valueOf(jsj);
            conn=DBC.getConn();
            ptmt=conn.prepareStatement(sql);
            ptmt.setInt(1,xh1);
            ptmt.setString(2,name4); 
            ptmt.setInt(3,yy1);
            ptmt.setInt(4,sx1);
            ptmt.setInt(5,jsj1);
            ptmt.setString(6,name4); 
            result=ptmt.executeUpdate();
        if(1==result){
            return"修改成功";
        }
                    
        } catch (SQLException e) {
            System.out.println("修改失败");
            e.printStackTrace();  
            
        }
        finally
        {
        
            DBC.closeConnection(conn);
        }      
        return "";
    }
    
    

    
}

    

        
        
    
        
    
        

这不就是连接数据库后的select、update和delete操作表记录么,哪个地方不明白?

这个就是jdbc链接收据库的代码,首先得到链接,然后连接得到Statement ,写一个sql,通过Statement 去执行这个sql,得到返回值,遍历返回值,然后给每个对象设置属性,最后添加到list中