[Spring] Spring에서의 객체 관리: XML 설정 파일 vs 어노테이션 기반 DI
·
Spring
컨테이너란?컨테이너는 개발자를 대신해서 객체를 생성하고 관리하는 역할을 한다.서블릿 컨테이너인 톰캣이 new를 호출하여 서블릿 객체를 만들어주는 것처럼, Spring 컨테이너도 개발자 대신 객체를 생성한다.아래 코드는 Spring 컨테이너를 구동하는 방식이다.AbstractApplicationContext factory = new GenericXmlApplicationContext("applicationContext.xml"); 이 코드에서 컨테이너는 applicationContext.xml 파일을 읽고, 그 안에 정의된 객체(bean)를 생성한다.다음과 같은 방식으로 객체를 정의할 수 있다. 아래는 applicationContext.xml의 일부 코드이다.  하지만 XML 설정 방식은 점점 복..
[Spring] 의존성 주입
·
Spring
의존성 주입 (DI)의존성은 어떤 코드가 다른 코드에 의존하는 것을 의미한다. 예를 들어, 클래스 A가 클래스 B를 사용해야 한다면, 클래스 A는 B에 의존하고 있다고 할 수 있다. DI(Dependency Injection)는 이런 의존성을 코드 내에서 직접 생성하는 대신, 외부에서 주입하는 방식으로 해결한다.  Spring은 다음과 같은  두 가지 방법으로 DI를 지원한다. 생성자 주입: 의존성이 필요한 객체를 생성자에서 받아서 주입하는 방식이다. 이 방식은 객체가 생성될 때 필요한 의존성을 미리 설정할 수 있어 더 안전한 방식으로 여겨진다.Setter 주입: 기본 생성자를 호출한 후, 필요할 때 setter를 통해 의존성을 주입하는 방식이다. 이 방법은 유연성을 제공하지만, 객체가 완전하지 않은 상..
[Spring] 스프링 프레임워크
·
Spring
Spring Framework의 구조Spring은 개발 양식을 제시하여 개발자의 역량을 획일화하고, 일관성 있는 코드를 작성할 수 있게 도와준다.장점으로는 쉬운 관리, 구현 시간 단축, 유지보수 용이, 재사용성 증가가 있다.Spring FrameWork란?한 문장으로 말하면, "IoC와 AOP를 지원하는 경량의 프레임워크" 여기서 IoC란, (Inversion of Control) 제어의 역행을 뜻한다.제어의 역행이란, 객체 관리의 주체가 개발자에서 프레임워크로 바뀌는 개념이다.예전에는 개발자가 직접 생성(new)하고 관리했다면, Spring에서는 컨테이너가 이 역할을 대신한다.서블릿컨테이너(예: 톰캣)가 서블릿을 대신 생성하고 관리해주듯이, Spring 컨테이너는 개발자가 직접 new를 사용하지 않고도..
스프링 프레임워크
·
Spring
0819 국비 내용 정리스프링 프레임워크의 구조스프링전자정부프레임워크스프링 기반 자체 프레임워크=> 구조가 다 똑같음controller.jsp >> JAVA에서 작업하자! >> .java(서블릿,Servlet) == FrontController HomeController, DispatcherServlet 톰캣(Server)에게 설정을 적용하는 방법 xxx.xml (==설정파일) 등록 => web.xml.xml --->> @(==어노테이션, 애너테이션) 등록@WebServlet("*.do")// 톰캣(server)이 구동될때, xxx.do로 끝나는 요청에 대하여 FC를 호출하게됨   만약 서로 관련없는 코드들이 한 곳에 저장되어 있다면 ? (예시 : controller 코드를 하나의 파일안에 다 저장되어있..