Vi nas aulas do curso que o instrutor sempre chama o método da instancia da classe DAO e depois fecha a conexão. Ex:
dao.Insert(); 
dao.close();Não seria melhor colocar essa chamada dentro do próprio método? Ex:
public void Insert()
{
   ...
   this.close();
} 
            