mysql+java实现分页显示的例子使用limit

public List<Student> queryStudent(String sname,int currentPage){
        ArrayList<Student> students=new ArrayList<Student>();
        Connection con=null;
        PreparedStatement pre=null;
        ResultSet rs=null;
        DBUtil conns=new DBUtil();
        con=conns.getConnection();
        System.out.println(sname);
        try {
            pre=con.prepareStatement("SELECT * FROM student s LEFT JOIN grade g ON s.gid=g.gid WHERE sname LIKE ? AND SID NOT IN(SELECT t.sid FROM(select * from student where sname like ? limit ?)as t)");
            pre.setString(1, "%"+sname+"%");
            pre.setString(2, "%"+sname+"%");
            int a=(currentPage-1)*size;
            pre.setInt(3, a);
            
            rs=pre.executeQuery();
            while(rs.next()){
                Student student=new Student();
                student.setSname(rs.getString("sname"));
                student.setSid(rs.getString("sid"));
                student.setSaddress(rs.getString("saddress"));
                student.setAlikes(rs.getString("alikes"));
                Grade grade=new Grade();
                grade.setGid(rs.getString("gid"));
                grade.setGname(rs.getString("gname"));
                student.setGrade(grade);
                students.add(student);
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally{
            try {
                con.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        return students;
    }

你可能感兴趣的:(mysql+java实现分页显示的例子使用limit)