Qual a diferença entre o DAO e o MVC?

Tipo, os caras ficam falando de você fazer o modelo DAO pra web por exemplo, eu não entendo por que, eu fiz uma página HTML e uma servlet e só com as duas eu gravo dados em uma tabela no banco de dados.A servlet captura os camposdo HTML grava em uma variável e ja manda pro banco, pra que criar um modelo/pojo como tem no DAO?

DAO ,Data Access Object, é um padrão para persistência de dados

MVC, Model-view-controller, é um padrão de arquitetura de software que visa a separar a lógica de negócio da lógica de apresentação

A questão é: hoje, pelo que eu entendi, todo o código responsável na sua aplicação por fazer a conexão com o banco de dados, traduzir os dados vindos do request em um “insert” e etc. está todo na sua servlet.

Digamos que você esteja usando JDBC “puro”. E se amanhã você precisar substituir esse modelo pelo Hibernate? Ou por outro tipo de algoritmo de persistência? Ou pior, se precisar mudar a servlet, ou precisar acessar esses mesmos dados de outra parte da sua aplicação?

Entenda, o DAO isola toda a lógica de acesso e manutenção de dados do resto da sua aplicação. Ele encapsula essa funcionalidade. E isso é uma das bases da Orientação a Objetos.