Diretório META-INF no Java Web

Galera, boa tarde!

Gostaria de saber qual é a finalidade do META-INF no Java Web. Pergunto, pois ao criar um projeto no Maven utilizando o Archetype spring-mvc-webapp, a seguinte estrutura de diretórios foi criada:



src/main/resources
|----- META-INF
        |----- spring
                 |----- applicationContext.xml
                 |----- infrastructure.xml
        |----- persistence.xml


src
|----- main
        |----- webapp
                |----- WEB-INF
                        |----- jboss-as-spring-mvc-context.xml
                        |----- jboss-deployment-structure.xml
                        |----- spring-quickstart-ds.xml
                        |----- web.xml

A dúvida é a seguinte: porque ele separou em 2 partes os aquivos de configurações dos frameworks… na 1ª parte, ele deixou o applicationContext.xml, infrastructure.xml e persistence.xml dentro do META-INF do src/main/resources. Na 2ª parte deixou o jboss-as-spring-mvc-context.xml, jboss-deployment-structure.xml e spring-quickstart-ds.xml em WEB-INF do src/main/webapp.

Porque ele separou a configuração de XML em 2 partes?
Porque uma parte em src/main/resources/META-INF e outra parte em WEB-INF do src/main/webapp?
Porque criou a pasta META-INF em src/main/resources?

Desde já agradeço atenção e ficaria MUITO grato se alguém me desse uma luz!
Grande abraço a todos!

A 1 META-INF é criada principalmente por conta do persistence.xml que precisa estar dentro dessa pasta.

Os outros .xml quem cria é o archetype, e ele que quis dividir nessas pastas.

Entendi. Porém, é o ideal deixar os arquivos de configurações .xml dentro de src/main/resource/META-INF no projeto Maven ao invés de deixa-los em webapp/WEB-INF?