Spring
Spring
Spring 팁

Spring Tip

PostConstruct Annotation

PostConstruct Annotation을 메서드 앞에 붙여주면 해당 Bean이 초기화 됐을 때 메서드가 호출이 된다.

@Service
public class UserRepository {
  private List<UserDto> userList = new ArrayList<>();
 
  // UserRepository가 초기화 될 때 호출된다.
  @PostConstruct
  public void init() {
  }
}

yaml 파일 parameter로 사용

yaml파일에 지정한 값을 parameter로 사용할 수 있는 방법이 있다. 아래와 같은 yaml 파일이 있다고 가정할 때,

application.yaml
... other codes 
 
token: 
  secret:
    key: "SpringBootJWTHelperTokenSecretKeyValue123!@#"
  access-token:
    plus-hour: 1
  refresh-token:
    plus-hour: 12

@Value() 어노테이션을 사용해서 yaml 파일의 값에 접근할 수 있다.

@Component
public class JwtTokenHelper implements TokenHelperInterface {
  // Spring.bean.factory.annotation.Value
  @Value("${token.secret.key}")
  private String secretKey;
  @Value("${token.access-token.plus-hour}")
  private Long accessTokenPlushHour;
  @Value("${token.refresh-token.plus-hour}")
  private Long refreshTokenPlusHour;
 
  ... other codes ... 
}