SpringBoot Setup
Spring initializr

build.gradle.kts

What's the role of plugin.spring?
Spring uses proxy pattern. This pattern requires inheritance so all spring bean classes have to be open.
That plugin automatically adds open keyword when we add annotation on classes. (e.g. @Component, @Transactional)
build.gradle document
