목록Web (20)
공부하는 스누피
환경 - Eclipse Jee 2019-03 - JDK 1.8 - STS 3.x - AWS EC2 t2.micro (프리 티어) 1. Spring mvc 프로젝트 만들기 이클립스에서 marketplace에 있는 Spring Toolkit을 설치하면 간단한 Spring MVC 프로젝트를 바로 빌드할 수 있다. 패키지 입력할 때는 반드시 3단계로 해주어야 합니다. ex. com.myexample.app 2. Tomcat 서버에 돌아가는지 확인하기 프로젝트 폴더 우클릭->Run as->Run on Server 클릭 서버 선택 : 버전에 맞는 서버 선택하기 (Tomcat 9.0 선택했음) 서버를 돌린 후 콘솔에 아래 메세지가 출력되고, 자동으로 웹페이지가 켜짐 3. war 배포 파일로 만들기 war 파일은 자바..
AOP(Aspect Oriented Programming) AOP는 여러 객체에 적용되는 공통 기능을 분리하는 프로그래밍 기법으로, 재사용성을 높여준다. OOP는 실제 세계의 사물을 모듈화(객체화)하는 것이지만, AOP는 부가적인 기능을 모듈화하는데 집중한다. ex) A 클래스와 B 클래스 둘 다 print라는 동일한 기능을 사용해야 할 때, print를 따로 분리한다. A 또는 B 객체를 사용하게 되면 Proxy가 자동으로 print 기능을 실행시켜준다. 스프링에서는 Proxy를 이용해 AOP를 구현한다. 자동으로 Proxy 객체를 만들어 주기 때문에 직접 Proxy 인터페이스를 구현하지 않아도 된다. Bean 객체가 인터페이스를 상속하면 별도 설정이 없는 이상 인터페이스를 이용해서 Proxy를 생성한..
@Autowired 어노테이션 - 의존 자동 주입 기능을 사용하기 위해 대상 객체에 붙이는 어노테이션이다. - Bean 객체의 메소드에 붙이면 해당 메소드를 호출하고, 메소드 파라미터 타입에 해당하는 Bean을 찾아 인자로 주입한다. - 필드에도 적용할 수 있다. - 설정 클래스에서 직접 주입을 하지 않아도 되어 편리하다. - @Qualifier로 주입 Bean의 중복을 막을 수 있다. 없으면 Bean의 이름을 한정자(Qualifier)로 지정한다. - @Primary로도 중복을 막을 수 있다. @Primary가 붙여진 Bean을 우선시 한다. - required 속성을 false로 지정하면 Bean이 존재하지 않아도 메소드를 호출하지 않기 때문에 Exception 발생 안함. => 자동 주입 대상 타입..
1. 의존 주입 Dependency Injection 한 클래스가 다른 클래스의 메소드를 실행할 때 이를 '의존'한다고 표현한다. 의존 관계는 변경에 의해 영향을 받는 관계로, B 클래스가 A 클래스의 메소드를 실행할 때 A 클래스에 변경이 이루어지면 B 클래스에 영향이 가게 된다. 여기서 B 클래스의 메소드를 실행하는 C 클래스가 있다면, 이 변경은 C 클래스까지 전파된다. 의존 관계를 구현하기 가장 쉬운 방법은 B 클래스에서 A 클래스 객체를 직접 생성하는 방법이다. DI(Dependency Injection)는 의존하는 객체를 직접 생성하지 않고 의존 객체를 전달받는 방식을 사용한다. 즉, DI란 의존하는 객체를 전달받아서 사용하는 패턴이다. DI는 의존 객체 변경이 유연하다는 것이 큰 장점인데, ..