package st1.imp; import st1.dao.BookDAO; public class BookDAOImp implements BookDAO { @Override public int addBook() { // 实现插入图书的代码 if (插入成功) { return 1; } else { return 0; } } @Override public void dispAllBooks() { // 实现显示所有图书的代码 } }插入图书填什么
时间: 2024-02-14 08:07:46 浏览: 51
在 `addBook()` 方法中,需要填写插入图书信息的代码。根据题目中给出的图书信息表和样本数据示例,可以编写如下的插入图书信息的代码:
```java
@Override
public int addBook(String bookid, String bookname, String bookauthor, float bookprice, Date publishdate, int bookcount) {
Connection conn = null;
PreparedStatement pstmt = null;
try {
conn = getConnection();
String sql = "INSERT INTO t_book(bookid, bookname, bookauthor, bookprice, publishdate, bookcount) VALUES (?, ?, ?, ?, ?, ?)";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, bookid);
pstmt.setString(2, bookname);
pstmt.setString(3, bookauthor);
pstmt.setFloat(4, bookprice);
pstmt.setDate(5, publishdate);
pstmt.setInt(6, bookcount);
int result = pstmt.executeUpdate();
if (result > 0) {
return 1; // 插入成功
} else {
return 0; // 插入失败
}
} catch (SQLException e) {
e.printStackTrace();
return 0; // 插入失败
} finally {
close(conn, pstmt, null);
}
}
```
其中,`getConnection()` 方法用于获取 `Connection` 对象,`close()` 方法用于关闭数据库连接和释放资源。在 `PreparedStatement` 对象中使用占位符 `?` 代替具体的参数值,然后使用 `setXXX()` 方法设置占位符对应的参数值,最后使用 `executeUpdate()` 方法执行 SQL 语句并返回受影响的行数。如果受影响的行数大于 0,则表示插入成功,否则表示插入失败。在捕获到 SQL 异常时,需要打印异常信息并返回插入失败。
阅读全文