springboot 3

[ SpringBoot ] 08. Method Lookup Injection In Spring

Method Injection 생명주기가 다른 두 빈에 대한 작업을 할 때 사용하는 Injection 방법 Singleton Bean이 Prototype Bean의 참조를 가지고 있어서 Prototype이어야 하는 객체가 싱글톤으로 동작하는 문제를 해결하기 위해 생겨난 것 위와 같은 경우에 Spring은 singleton 객체를 리턴할 때 최초 한번 생성된 bean의 인스턴스를 계속해서 리턴하게 되는데 위와 같이 정의된 경우에는 singleBean은 singleton 패턴으로 초기 생성 이후 소멸하지 않기 때문에 singleBean 내부에 가지고 있는 someBean 역시 최초에 만들어지고, 다시 만들어지지 않게 되는 현상이 발생한다. 나는 someBean을 prototype으로 사용하고 싶다고!! 사실..

[ SpringBoot] 00. @SpringBootApplication Annotaion

@SpringBootApplication 스프링부트 템플릿을 통해 프로젝트를 생성하면 아래와 같이 자동으로 xxxApplication에 메인메소드가 생성이 된다. @SpringBootApplication public class FileDbWorkApplication { public static void main(String[] args) { SpringApplication.run(FileDbWorkApplication.class, args); } } 그 곳에 @SpringBootApplication이 존재하게 되며 그 안을 확인해보면 @Target({ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited @SpringBo..

[ Spring ] 12. DAO & DTO & Entity와 스프링 패키지의 전체 구조

DAO & DTO & Entity DAO Data Access Object repository package 실제로 DB에 접근하는 객체 Persistance Layer(DB에 dat를 CRUD하는 계층)이다. Service와 DB를 연결하는 고리의 역할 SQL을 사용해 (개발자가 직접 코딩) DB에 접근한 후 적절한 CRUD API를 제공한다. JPA 대부분의 기본적인 CRUD method를 제공하고 있다. extends JpaRepository public interface QuestionRepository extends CrudRepository { } "Object" 단위 -> (SQL을 이용한 CURD) -> DB의 "Record" 단위로 저장 되는 순서 Obejct와 Record 간의 miss..