Class AuthorDAO

java.lang.Object
librarybooks.dao.AuthorDAO

public class AuthorDAO extends Object
Classe DAO para a entidade Author. Fornece métodos para interagir com a tabela 'authors' no banco de dados.
  • Constructor Details

    • AuthorDAO

      public AuthorDAO()
  • Method Details

    • addAuthor

      public static void addAuthor(Author author) throws SQLException
      Adiciona um novo autor ao banco de dados. O ID do autor é gerado automaticamente pelo banco de dados e definido no objeto Author.
      Parameters:
      author - O objeto Author a ser adicionado.
      Throws:
      SQLException - Se ocorrer um erro de acesso ao banco de dados.
    • getAllAuthors

      public static List<Author> getAllAuthors() throws SQLException
      Retorna uma lista de todos os autores presentes no banco de dados.
      Returns:
      Uma lista de objetos Author.
      Throws:
      SQLException - Se ocorrer um erro de acesso ao banco de dados.
    • getAuthorById

      public static Author getAuthorById(int id) throws SQLException
      Retorna um autor específico pelo seu ID.
      Parameters:
      id - O ID do autor a ser buscado.
      Returns:
      O objeto Author correspondente ao ID, ou null se não for encontrado.
      Throws:
      SQLException - Se ocorrer um erro de acesso ao banco de dados.
    • updateBooksCount

      public static void updateBooksCount(int authorId, int increment) throws SQLException
      Atualiza a quantidade de livros para um autor específico.
      Parameters:
      authorId - O ID do autor.
      increment - O valor a ser adicionado na quantidade de livros.
      Throws:
      SQLException - Se ocorrer um erro de acesso ao banco de dados.
    • deleteAuthor

      public static boolean deleteAuthor(int authorId) throws SQLException
      Exclui um autor do banco de dados. Um autor só pode ser excluído se não tiver livros associados na coleção.
      Parameters:
      authorId - O ID do autor a ser excluído.
      Returns:
      true se o autor foi excluído com sucesso, false caso contrário
      Throws:
      SQLException - Se ocorrer um erro de acesso ao banco de dados.