프로그래밍/Spring
-
[Spring] Maven에 대해 알아보자프로그래밍/Spring 2020. 9. 2. 17:19
Youtube 뉴렉처 강사님의 메이븐 강의를 듣고 정리한 글입니다. #1 Maven이란? 빌드할 때 사용하는 도구(Tool) - 라이브러리 관리(설치, 삭제, 다운로드 받기) - 빌드기능 프로젝트 빌드 과정 프로젝트 생성 -> 라이브러리 설정 -> 코드작업 -> 컴파일 -> 테스트 -> 패키지생성 -> 배포 -> 레포팅 이러한 과정들을 쉽게 구현할 수 있도록 도와준다. IDE와 빌드 도구의 차이 Eclipse, Intellj, VSCode 등 과 같은 IDE에서도 프로젝트를 생성, 라이브러리 설정, 코드작업, 컴파일 등등을 할 수 있다. 프로젝트를 개발할 때 필요한 도구들(빌드도구, 디버거, 컴파일러, 형상관리, 탐색기, 콘솔 등등)을 하나로 통합한 것이 IDE다. 빌드 도구는 IDE에서 사용할 수 있는..
-
[Spring] DB연결, Controller에 대해 알아보자프로그래밍/Spring 2020. 8. 20. 19:29
스프링 흐름도 1. 요청 -> DispatcherServlet이 FrontController역할을 한다. root-context.xml에 있는 빈들을 메모리에 올린다. 2. XXXController로 연결해서 주소창에 매핑되어 있는 이름에 맞는 SubController로 이동한다. 3. Controller에서 DB에서 가져올 데이터가 필요하면 XXXDAO를 통해 DB와 연동 후 데이터를 가져온다. 4. Controller는 Model이름을 DispatcherServlet에 반환한다. 5. ViewResolver는 Model의 이름 앞 뒤에 접두사, 접미사를 붙여서 /WEB-INF/view/뷰이름.jsp로 만든다. (ViewResolver는 servlet-context.xml에서 빈으로 등록되어 있다.) ..
-
[Spring] 프로젝트 생성 방법에 대해 알아보자프로그래밍/Spring 2020. 8. 18. 19:39
스프링 프로젝트 생성 SpringMVC 프로젝트를 생성하자. - 설치할 라이브러리 Lombok Oracle DBCP MyBatis Spring JDBC HikariCP 1. Spring Legacy Project를 선택하고 Spring MVC Project 템플릿을 선택한다. - 별도의 설정 없이 Maven을 사용하는 스프링 프로젝트를 생성할 수 있다. 2. pom.xml 설정 1) 자바 버전, 스프링프레임워크 버전, aspect 버전을 설정해준다. (여기선 1.8, 5.0.7, 1.9.0을 사용) 1.8 5.0.7.RELEASE 1.9.0 1.6.6 밑으로 내려보면 태그가 있는데 그곳에 있는 와 도 1.8로 바꿔준다. org.apache.maven.plugins maven-compiler-plugin ..
-
[Spring] Constructor Injection에 대해 알아보자프로그래밍/Spring 2020. 8. 13. 13:47
Constructor Injection 생성자를 이용하여 클래스 사이의 의존 관계를 연결하는 방법이다. setter injection의 경우 컨테이너 (xml파일) 에 태그를 통해 값을 넣어줬다면, constructor injection은 태그를 통해 값을 넣는다. 앞서 포스팅 했던 DI 참고 [프로그래밍/Spring] - 알기 쉬운 Spring DI (Dependency Injection)에 대해 알아보자 DI 분류 체계 1) Setter Injection - 기본 생성자를 통해 접근 2) Constructor Injection - 기본 생성자가 없다면 인자생성자를 통해 접근 Constructor Injection 사용하기 - Emp interface 생성 package ex05; public inte..
-
[Spring] DI (Dependency Injection)에 대해 알아보자프로그래밍/Spring 2020. 8. 13. 10:39
DI (Dependency Injection) DI (Dependency Injection) 는 클래스 간의 의존관계를 빈-xml 파일정보를 바탕으로 컨테이너가 자동으로 연결해주는 것을 의미한다. - 참조되는 객체 (class)를 직접 생성 (new) 하지 않고 컨테이너에 등록 (injection) 한 빈(객체)으로 불러와서 (lookup) 사용하는 방법이다. 스프링 컨테이너란? 빈을 관리하는 저장소라고 생각하면 쉽다. 스프링 컨테이너는 빈 객체를 저장하고 있으며, 각 객체간의 의존 관계를 관리해준다. BeanFactory와 ApplicationContext가 컨테이너 역할을 수행하는 인터페이스 1) BeanFactory (인터페이스) 2) ApplicationContext (BeanFactory 를 상..
-
[Spring] IoC에 대해 알아보자프로그래밍/Spring 2020. 8. 11. 18:55
spring framework의 특징 1. 경량컨테이너 - 자바 객체의 생성, 소멸 등 라이프사이클을 관리한다. 2. DI(Dependency Injection)를 지원 - 설정파일이나 어노테이션을 통해 객체 간의 의존관계를 설정하도록 한다. 3. AOP(Aspect Oriented Programming)를 지원 - 트랜잭션, 로깅, 보안과 같은 모듈들을 분리해서 관리하고 각 모듈에 적용가능하다. 4. POJO(Plain Old Java Object)를 지원 - 특정한 인터페이스를 구현하거나 클래스를 상속받지 않아도 된다. IoC란? Inversion of Control 의 약자로 역제어의 뜻을 가지고 있다. 개발자는 객체를 생성할 때 new를 통해 객체를 생성하고 객체 간의 의존관계 연결 등에 대한 제..