public Courses getCourseByISBN(String isbn) { Connection con = null; PreparedStatement pre = null; ResultSet resultSet = null; try { con = DBUtils.getConnection(); String sql = "select * from td_courses where isbn = ?"; pre = con.prepareStatement(sql); pre.setString(1, isbn); resultSet = pre.executeQuery(); while (resultSet.next()) { String isbns = resultSet.getString("isbn"); String bookName = resultSet.getString("book_name"); String author = resultSet.getString("author"); String content = resultSet.getString("content"); String press = resultSet.getString("press"); String tname = resultSet.getString("tname"); Date pressTime = resultSet.getDate("press_time"); Courses course = new Courses(); course.setIsbn(isbns); course.setBookName(bookName); course.setAuthor(author); course.setContent(content); course.setPress(press); course.setPressTime(pressTime); course.setTname(tname); return course; } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { DBUtils.closeConnection(con, pre, resultSet); } return null; }
时间: 2024-04-06 13:33:40 浏览: 51
这段代码是用于从数据库中查询指定 ISBN 号的课程信息的。具体来说,它使用了 JDBC API 来获取一个数据库连接,并通过 PreparedStatement 对象执行了一条 SQL 查询语句。这条 SQL 语句的参数通过 `isbn` 参数获取,其中 `isbn` 是一个 String 类型的值,表示需要查询课程的 ISBN 号。最后,该方法返回了一个 `Courses` 对象,表示查询到的课程信息。如果查询失败,则返回 `null`。
在查询过程中,该方法使用了 ResultSet 对象遍历查询结果,并将每一行查询结果映射为一个 `Courses` 对象。该对象中包含了课程信息的各个字段值,如 ISBN 号、书名、作者、内容、出版社、教师名称等。最后,该方法返回了第一条查询结果对应的 `Courses` 对象。如果查询结果为空,则返回 `null`。值得注意的是,该方法在 finally 块中关闭了数据库连接等资源。
相关问题
public void deleteCourse(String isbn) { Connection con = null; PreparedStatement pre = null; ResultSet resultSet = null; try { con = DBUtils.getConnection(); String sql = "delete from td_courses where isbn = ?"; pre = con.prepareStatement(sql); pre.setString(1, isbn); pre.execute(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { DBUtils.closeConnection(con, pre, resultSet); } }
这段代码是用来删除数据库中指定ISBN号的课程信息。它接受一个字符串类型的参数isbn,表示要删除的课程的ISBN号。首先,它通过DBUtils工具类获取数据库连接对象,然后构建一个带有参数的SQL删除语句,将isbn参数传入预编译的SQL语句中。接着,它调用PreparedStatement对象的execute()方法来执行SQL语句,从而删除指定的课程信息。最后,它使用try-catch-finally语句块来处理异常,并在finally中关闭数据库连接、预编译语句对象和结果集对象,以释放资源。如果执行SQL语句过程中发生异常,则打印异常信息。
public void updateCourse(Courses course) { Connection con = null; PreparedStatement pre = null; ResultSet resultSet = null; try { con = DBUtils.getConnection(); String sql = "update td_courses set isbn = ?, tname = ? where isbn = ?"; pre = con.prepareStatement(sql); pre.setString(1, course.getIsbn()); pre.setString(2, course.getTname()); pre.setString(3, course.getIsbn()); pre.execute(); } catch (SQLException e) { e.printStackTrace(); } finally { DBUtils.closeConnection(con, pre, resultSet); } }
这段代码是用于更新数据库中指定 ISBN 号的课程信息的。具体来说,它使用了 JDBC API 来获取一个数据库连接,并通过 PreparedStatement 对象执行了一条 SQL 更新语句。这条 SQL 语句的参数通过 `course` 参数获取,其中 `course` 是一个 `Courses` 对象,包含了需要更新的课程的各个字段值。该方法更新了 `td_courses` 表中 ISBN 号为 `course.getIsbn()` 的记录的 `isbn` 和 `tname` 字段的值为 `course.getIsbn()` 和 `course.getTname()`。最后,该方法没有返回值。
值得注意的是,该方法在 finally 块中关闭了数据库连接等资源。另外,该方法并没有对更新操作的结果进行处理。如果更新操作失败,该方法不会抛出异常,也不会提供其他的错误信息。
阅读全文