spring40 [Spring] Environment 프로파일이란? IoC 컨테이너의 Environment에 대해서 알아보겠습니다. Environment는 ApplicationContext가 가지고있는 기능중 하나로 Application에 등록되어있는 여러 환경들을 제어하고 이용할 수 있도록 도와주는 기능입니다. *ApplicationContext - IoC 컨테이너가 갖추어야 할 기능들을 정의하고 있는 인터페이스로 다른 추가적인 기능들을 상속받고 있습니다 그 중 하나가 바로 EnvironmentCapable입니다. Environment의 기능 1. Profile Profile이란 환경에 따라 필요한 Bean들이 달라질 수 있는데 이것을 쉽게 관리할 수 있도록 도와주는 기능입니다. 예를 들어 Test 환경에서 사용할 Bean들과 Develop중 사용할 Bean들 그리고 .. 2020. 1. 13. [Spring] Bean의 Scope Bean의 Scope이란? -Bean의 Scope란 Bean의 생성방식을 결정하는 것입니다. ex) Scope에 따라서 Bean이 Application당 1개만 생성(singleton방식)되거나, 필요할 때마다 새로 생성을 한다던지 하는 그런한 방식을 의미합니다. ※ single ton ? - 해당 애플리케이션 전반에 걸쳐서 해당 bean의 instance가 오직 1개뿐인 경우. 2. Bean의 Scope 종류 Singleton 어플리케이션이 동작하는동안 단 한개만 만들어진다는 의미입니다. Spring에서의 Bean들은 별도의 설정이 없다면 기본적으로 Singleton으로 생성이 됩니다. 즉, 지금까지 생성했던 Bean들은 모두 Singleton으로 주입이 되었던 것입니다. 예제를 통해 조금 더 자세히 .. 2020. 1. 13. [Spring] @Component Scan 컴포넌트 스캔? @Componentscan -@Component어노테이션 및 streotype(@Service, @Repository, @Controller.)어노테이션이 부여된 Class들을 자동으로 Scan하여 Bean으로 등록해주는 역할을 하는 어노테이션입니다. 이전 xml파일에 를 이용해 지정해주었던 것을 Java파일을 이용하여 bean을 scan하기 위해서 생겨났습니다. 예제 1. 프로젝트 구조 Application Class : Main ApplicationConfig Class: Bean설정을 어노테이션 기반으로 처리하기 위한 클래스 BookRepository Class: Bean으로 등록되기 위한 Class 2. Class 2.1 BookRepository @Repository public class Bo.. 2020. 1. 13. [Spring] @Autowired 란? @Service란, bean등록을 위해 명시해주는 애노테이션이다. [ @Repository ] OR [ @Component ] ->구분해서 사용하자 ! why ? 서비스에 bean 주입이 가능하며 애노테이션이 붙어있는 특정한 기능을 실행할 수 있고, AOP에서 사용하기에도 좋다. Autowired란? -필요한 의존 객체의 "타입"에 해당한느 빈을 찾아 주입한다. [ @Autowired ] - required : 기본값 : true (못 찾으면 구동 실패 ) [ 사용할 수 있는 위치 ] -생성자 (스프링 4.3부터는 생략 가능) -setter - filed [ 경우의 수 ] -해당 타입의 빈이 없는 경우 -해당 타입의 빈이 한 개인 경우 -해당 타입의 빈이 여러개인 경우 -> 빈 이름으로 시도, - 같은 .. 2020. 1. 12. [Spring]RedirectAttributes RedirectAttributes 폼 형식의 문서를 작성 후, 서버로 보내면(POST 방식) 곧이어 다른 페이지로 리다이렉트 한다. 문제는 이러한 리다이렉트 방식이 GET 방식 이라 데이터 전송에는 적절하지 않다. 리다이렉트의 특징은 다음 그림과 같다. spitter객체를 보내려고 한다. 리다이렉트가 발생하면 원래 요청은 끊어지고, 새로운 HTTP GET 요청이 시작된다.(브라우저에게 이 URL로 리다이렉트해!) 때문에 리다이렉트 실행 이전에 수행된 모델 데이터는 소멸한다. 따라서 리다이렉트로 모델을 전달하는 것은 의미 없다. 그러나 리다이렉트 방법으로도 데이터를 전달하는 방법이 있다. GET의 특징을 사용하는 것이다. 리다이렉트는 HTTP GET 메소드 방식이라고 앞서 말했다. GET방식은 아래 그림.. 2020. 1. 5. [spring]스프링 Mybatis DB연결 Mybatis와 DB 연결방식은 대략 다음과 같다. Database Connection Pool(DBCP) : JDBC를 통하여 DB에 연결할 경우, 매번 드라이버를 로드하고 Connection 객체를 가져와야하는데 매우 비효율적이다. 이를 해소하기 위해 웹 컨테이너가 실행되면서 DB와 연결된 Connection 객체를 미리 Pool에 생성해두고 필요할 때에 가져다쓰고 반환한다. DB의 부하를 줄이고 유동적으로 연결을 관리할 수 있다. SessionFactory : 단일 데이터 저장소, 안정적인 스레드를 위한 목적으로 사용된다. SessionFactory를 사용함으로서 다수의 스레드가 DB세션에 동시에 접근가능하며 특정 데이터베이스에 매핑된 캐시가 변하지 않는다. SessionFactory는 프로그램이 .. 2019. 12. 16. 이전 1 ··· 3 4 5 6 7 다음