我试图在java类中从MySQL数据库中获取记录,并且first
条目没有被获取。
以下是我尝试获取记录的课程:
public class BookDaoImpl
{
private static String SELECT;
static
{
SELECT = "SELECT * FROM databaseName.books;";
}
public BookDaoImpl()
{
connection = JDBCDaoImpl.getConnection();
}
public List<Book> fetchBooksList() throws SQLException
{
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery(SELECT);
if (!resultSet.next())
return null;
List<Book> listOfBooks = new ArrayList<Book>();
Book tempBook;
while (resultSet.next())
{
tempBook = new Book();
tempBook.setBookId(resultSet.getInt("bookId"));
tempBook.setBookName(resultSet.getString("bookName"));
tempBook.setBookPrice(resultSet.getInt("bookPrice"));
tempBook.setBookQuantity(resultSet.getInt("bookQuantity"));
listOfBooks.add(tempBook);
}
System.out.println("listOfBooks : ");
for (int i = 0; i < listOfBooks.size(); i++)
{
System.out.println(listOfBooks.get(i));
}
return listOfBooks;
}
}
此外,即使我在表格中添加了更多条目,第一个条目仍然没有。
答案 0 :(得分:5)
你跳过第一个条目:
if (!resultSet.next())
return null;
如果删除这两行代码,您的方法将正常工作(但如果不存在任何条目,则返回空列表而不是null)。