본문 바로가기

Spring3

[Spring] @Value 어노테이션 사용시 Access key cannot be null Amazon S3의 설정값을 application-properties에 지정하고, S3Config 클래스를 작성했다. @Configuration @Getter public class S3Config { @Value("${ncloud.endPoint}") private String endPoint; @Value("${ncloud.regionName}") private String regionName; @Value("${ncloud.accessKey}") private String accessKey; @Value("${ncloud.secretKey}") private String secretKey; @Value("${ncloud.bucketName}") private String bucketName; fin.. 2023. 12. 2.
[Spring] Dependency Injection (의존성 주입) 정리 DI란 외부에서 두 객체 간의 관계를 결정해주는 디자인 패턴으로, 인터페이스를 사이에 둬서 클래스 레벨에서는 의존관계가 고정되지 않도록 하고 런타임 시에 관계를 동적으로 주입하여 유연성을 확보하고 결합도를 낮출 수 있게 해준다. public class Zoo{ private Tiger tiger; public Zoo(){ this.tiger = new Tiger(); } } 위에 클래스는 Zoo와 Tiger 클래스가 강하게 결합되 있고, 클래스간의 관계가 맺어있다. 동물원에 새로운 동물이 들어오면 생성자 변경은 필수이다. 그리고 Tiger라는 클래스는 너무 구체적이다. 동물원에 들어오는 동물이 호랑인지 기린인지 몰라도 Animal이라는 인터페이스를 사용하여 추상적으로 구현할 필요가 있다. public i.. 2023. 10. 1.
[Mybatis] insert 쿼리 실행 결과를 리턴받아 원하는 값 얻기 <selectKey> insert나 update를 한후, 결과값을 바로 리턴해야 하는 경우가 있는데, 기본 mybatis에서 제공하는 insert와 update는 업데이트 한 행의 개수를 리턴해준다 결과값을 받기위해 불필요한 쿼리를 또 진행해야 하는 문제가 생긴다. 이때 selectKey라는 엘리먼트를 사용하여 INSERT나 UPDATE에서 결과값을 리턴할수 있게 해준다. 사용법 INSERT INTO product (prod_no,prod_name,prod_detail,manufacture_day,price,image_file,reg_date) VALUES (seq.NEXTVAL,#{prodName},#{prodDetail},#{manuDate},#{price},#{fileName},SYSDATE) SELECT seq.cur.. 2023. 8. 24.