Well in boot's autoconfig it's a generally a good thing to guard bean creation with these extra conditionals. Then if for some reason same bean in future is created some place else, beans don't override each others. I've just learned in a hard way that these things comes back to haunt you with all the boot autoconfig magic happening.