The web.xml file - or more specifically, the
/WEB-INF/web.xml file is what in
JEE is known as the
server-independent deployment descriptor. Along with the server-
dependent deployment descriptor, they describe the overall configuration of every JEE web application. The server-dependent deployment descriptor's name and location vary with which brand of webapp server you are using. For example, for the
Tomcat webapp server, it's a Context XML file and it can be located and named in a variety of ways. If you're interested, check the Tomcat server documentation.
The
web.xml file is, approximately speaking, a "servlet configuration file", although it does much more than that. It also may not physically exist in modern webapps, since a lot of the information in it can now be supplied from annotations on the
Java webapp classes.
All of the above information is independent of Spring and it applies whether you are using Spring (or Spring Boot) or not.
As far as Spring's configuration files go, again, modern apps carry a lot of that information in annotations. You can configure Spring in a lot of ways, in fact. For webapps, however, the usual setup is to define the beans in the application's
WEB-INF/applicationContext.xml file. I believe Beans.xml has been used for non-web (standalone) Spring apps.