Итак, на самом деле я не работал в Eclipse, но у вас есть две папки src? Если это так, вам нужно держать все классы и ресурсы в одной папке src, что-то вроде этого:
-src
-main
-java (Your controllers)
-other packages under java folder
-resources (spring configuration file)
-webapp (jsp, web.xml etc.)
В дополнение к этому, я думаю, строка неверна
<context:component-scan base-package="com.demo.controllers.*"/>
Возможноэто было разрешено в более ранних версиях весны. Но если вы увидите официальную документацию, я не видел использование версии с символом «*». И я пытался использовать это локально, у меня это не сработало. Так что используйте com.demo.controllers