это зависит от того, как вы устанавливаете область действия компонента FooDAO.
<bean id="fooDAO" class="-" scope="prototype"/>
для каждого доступа (запроса) в fooDAO spring создается новый экземпляр FooDAO. Тогда это можно считать поточно-ориентированным, если ваши локальные потоки не используют один и тот же экземпляр FooDAO. Если это так, вы должны обрабатывать доступ к потокам с помощью "public synchronized void doSome ()"
<bean id="fooDAO" class="-" scope="singleton"/>
если ваш бин синглтон, то это не потокобезопасно. Экземпляр синглтона является общим для вашего приложения. Если это так, то вы должны синхронизировать метод.