Controllerに@Transactionalをつけるのは違和感があるので、Serviceに切り出してService側に@Transactionalを付加