package company.specialsource.config; import company.specialsource.entity.User; import company.specialsource.repository.UserRepository; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; // 로그를 위해 추가 import org.springframework.boot.CommandLineRunner; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Component; @Component @RequiredArgsConstructor @Slf4j // 로그 라이브러리 public class DataInitializer implements CommandLineRunner { private final UserRepository userRepository; private final PasswordEncoder passwordEncoder; @Override public void run(String... args) { if (userRepository.findByUsername("admin").isEmpty()) { userRepository.save(User.builder() .username("admin") .password(passwordEncoder.encode("Ppasse444$")) .role("ROLE_USER") .build()); log.info("초기 관리자 계정(admin)이 생성되었습니다."); } else { log.info("이미 관리자 계정이 존재합니다."); } } }