try { con = DBUtils.getConnection(); String sql = "select * from tb_student_buy where isbn = ?"; pre = con.prepareStatement(sql); pre.setString(1, isbn); resultSet = pre.executeQuery(); while (resultSet.next()) { String isbn1 = resultSet.getString("isbn"); Score score = new Score(); score.setIsbn(isbn1); return score; }
时间: 2024-02-14 11:23:44 浏览: 62
这段代码是一个 Java 方法,用于根据图书的 ISBN 编号查询数据库中的购买记录,并将购买记录封装到一个 `Score` 对象中返回。具体实现步骤如下:
1. 首先,通过 `DBUtils.getConnection()` 方法获取一个数据库连接对象 `con`。
2. 然后,定义一个 SQL 查询语句,使用 `PreparedStatement` 对象 `pre` 预编译 SQL 语句并设置参数。
3. 设置 SQL 语句中的参数,这里是设置图书的 ISBN 编号 `isbn`。
4. 执行查询并返回一个 `ResultSet` 对象 `resultSet`,该对象包含了查询结果的数据。
5. 遍历 `ResultSet` 对象 `resultSet`,将查询结果的每一行数据取出来,并将其存储到一个 `Score` 对象中。
6. 返回 `Score` 对象,如果查询结果为空,则返回 `null`。
7. 关闭数据库连接。
总体来说,这个方法的作用是根据给定的图书 ISBN 编号查询数据库中的购买记录,并将其封装到一个 `Score` 对象中返回。如果没有查询到任何结果,则返回 `null`。
相关问题
public List<StudentBuy> getBuyCourseList(String studentNo) { Connection con = null; PreparedStatement pre = null; ResultSet resultSet = null; try { con = DBUtils.getConnection(); String sql = "select * from tb_student_buy where student_no = ?"; pre = con.prepareStatement(sql); pre.setString(1, studentNo); resultSet = pre.executeQuery(); List<StudentBuy> studentBuyList = new ArrayList<>(); while (resultSet.next()) { String studentNo1 = resultSet.getString("student_no"); String studentName = resultSet.getString("student_name"); String isbn = resultSet.getString("isbn"); String bookName = resultSet.getString("book_name"); Date createTime = resultSet.getDate("create_time"); StudentBuy buys = new StudentBuy(); buys.setStudentNo(studentNo1); buys.setStudentName(studentName); buys.setBookName(bookName); buys.setIsbn(isbn); buys.setCreateTime(createTime); studentBuyList.add(buys); } return studentBuyList; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { DBUtils.closeConnection(con, pre, resultSet); } return null; }
这是一个Java类,名为StudentBuyDao,其中包含一个getBuyCourseList(String studentNo)方法。这个方法从数据库中获取指定学生购买的所有课程的信息,并将它们存储在一个List<StudentBuy>对象中。在方法中,它首先获取一个数据库连接,然后通过执行一个带有参数的SQL查询语句来获取指定学生的购买记录。接着,它使用一个while循环来遍历所有的结果集,并将每个购买记录的信息存储在一个StudentBuy对象中。最后,它将每个StudentBuy对象添加到一个List<StudentBuy>对象中,并返回该对象。需要注意的是,在方法的最后,它关闭了所有的数据库连接和资源,以确保正确的释放资源。如果执行过程中出现异常,则会打印异常信息,并返回null值。
public class ScoreDao { // public List<Score> getScoreList() { Connection con = null; PreparedStatement pre = null; ResultSet resultSet = null; List<Score> res = new ArrayList<>(); try { con = DBUtils.getConnection(); String sql = "select * from tb_score"; pre = con.prepareStatement(sql); resultSet = pre.executeQuery(); while (resultSet.next()) { Score score = new Score(); score.setIsbn(resultSet.getString("isbn")); score.setCourseName(resultSet.getString("course_name")); score.setClassName(resultSet.getString("class_name")); score.setNum(resultSet.getInt("num")); res.add(score); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { DBUtils.closeConnection(con, pre, resultSet); } return res; } public boolean addScore(Score score) { Connection con = null; PreparedStatement pre = null; ResultSet resultSet = null; try { con = DBUtils.getConnection(); String sql = "insert into tb_score(isbn, course_name, class_name, num) values(?,?,?,?)"; pre = con.prepareStatement(sql); pre.setString(1, score.getIsbn()); pre.setString(2, score.getCourseName()); pre.setString(3, score.getClassName()); pre.setInt(4, score.getNum()); return pre.execute(); } catch (SQLException e) { e.printStackTrace(); } finally { DBUtils.closeConnection(con, pre, resultSet); } return false; } }
这段代码是一个名为ScoreDao的类,其中包含了两个方法:getScoreList和addScore。getScoreList方法用于从数据库中获取所有的成绩信息,返回一个Score对象列表。addScore方法用于向数据库中插入一条新的成绩信息,接受一个Score对象作为参数,返回一个布尔值表示插入操作是否成功。该类使用了DBUtils类来获取数据库连接和关闭连接。
阅读全文