본문 바로가기

전체 글

(70)
[Spring] Spring HTTP 기반 데이터 요청 (HttpServletRequest, @RequestParam, Command Object) [해당 포스트는 개인적으로 공부를 하고 차후에 참고용으로 하고자 작성한 것입니다. 따라서 잘못된 부분이나 부족한 부분이 있을 수 있기에 참고하시기 바랍니다.] 로그인이나 회원가입, 게시글 등록 등 View에서 사용자가 데이터를 입력하여 Server에 저장하고자 할 때 데이터를 추출할 수 있어야 한다. 이러한 처리를 위해 Spring에선 HTTP Servlet을 통해 HTTP 요청을 처리한다. Client가 HTTP 요청을 하면 Spring은 Servlet을 통해 HTTP 요청을 인식하여 Controller에게 작업을 할당시켜준다. Controller는 HTTP 요청 중 데이터 전송이 있으면 이를 받아와 Service에게 넘겨주어 DB와 통신을 하게 된다. 이후 DB 결과를 Model을 이용하여 View에..
[Spring] View에 데이터 전송 (Model / ModelAndView) [해당 포스트는 개인적으로 공부를 하고 차후에 참고용으로 하고자 작성한 것입니다. 따라서 잘못된 부분이나 부족한 부분이 있을 수 있기에 참고하시기 바랍니다.] Controller는 Business Logic의 결과를 사용자의 View에 전달하기 위해선 특정 저장공간에 담아서 전달해야 한다. 이번엔 Controller에서 View에게 전달하는 방법 2가지에 대해 정리한다. Model Model은 model attributes를 저장하는 Interface이다. Model에 Attributes를 추가하기 위해 고안되었으며, Java.util.Map으로 모든 Model에 접근을 허용한다. 주로 addAttribute Method를 통해 데이터를 Model에 저장한다. 일반적인 사용법은 아래의 예제를 통해 확인하..
[Spring] MVC 패턴 & Spring Framework MVC [해당 포스트는 개인적으로 공부를 하고 차후에 참고용으로 하고자 작성한 것입니다. 따라서 잘못된 부분이나 부족한 부분이 있을 수 있기에 참고하시기 바랍니다.] Spring Framework로 웹 개발을 할 땐 기본적으로 MVC 패턴을 따른다. MVC 패턴은 Model, View, Controller 이 3가지로 나뉘어 역할을 분할하여 처리한다. 역할을 나누어 처리하기 때문에 서로의 결합도가 낮아져서 좋은 코드가 되며 유지보수도 하기 편해진다. Spring MVC Framework 구조를 공부하기 앞서 MVC 패턴의 방식과 개념에 대해 간략히 알아보도록 하자. MVC 패턴 MVC 패턴은 Model, View, Controller 개념이 합쳐지면서 생긴 방식으로 소프트웨어 공학에서 사용되는 디자인 패턴이다...
[Spring] Annotation을 이용한 Spring 설정을 이용한 학생 관리 프로젝트 구현 [해당 포스트는 개인적으로 공부를 하고 차후에 참고용으로 하고자 작성한 것입니다. 따라서 잘못된 부분이나 부족한 부분이 있을 수 있기에 참고하시기 바랍니다.] 저번 포스팅에선 XML 파일을 이용하여 Container를 생성하고 Bean을 관리하였다. 이번 포스팅에선 XML파일 대신 Java파일을 이용하여 의존관계를 관리해보도록 하자. Spring 3.0 이전에는 Spring 설정을 XML로 대부분 처리를 하였다. 3.0 버전 이후부터 Java 파일을 통해 Spring 설정이 가능해졌다. 이후 Spring Boot부터 대부분 Spring 설정은 Java 코드로 많이 설정하는 추세가 되었다고 한다. 꼭 Java 파일로만 설정을 안 해도 되며 본인에 취향 또는 팀 개발 환경에 맞게 XML이나 Java 파일로 ..
[자율운동] 2019년 9월 25일 9월달 총 뛴 걸음: 12.98km 누적 뛴 걸음: 65.38Km 누적시간: 364분
[Spring] 의존객체 자동 주입 (@Autowired, @Resource) & 의존객체 선택 주입 (@Inject, @Qualifier) [해당 포스트는 개인적으로 공부를 하고 차후에 참고용으로 하고자 작성한 것입니다. 따라서 잘못된 부분이나 부족한 부분이 있을 수 있기에 참고하시기 바랍니다.] 이전 포스팅에서 Spring 설정 파일에 의존 객체를 주입할 때 태그 또는 태그를 이용하여 주입하였다. 이번 포스팅에선 위의 태그로 의존 대상 객체를 명시하지 않아도 Spring Container가 자동으로 필요한 의존 대상 객체를 찾아서 의존 대상 객체가 필요한 객체에 주입하는 방법에 대해 설명하도록 하겠다. 의존객체자동주입 @Autowired 주입하려고 하는 '객체의 타입'이 일치하는 객체를 자동으로 주입한다. 태그 속성을 이용하여 Spring에서 제공하는 Annotation을 이용할 수 있다. Default application-context..
[Spring] Bean의 범위 [해당 포스트는 개인적으로 공부를 하고 차후에 참고용으로 하고자 작성한 것입니다. 따라서 잘못된 부분이나 부족한 부분이 있을 수 있기에 참고하시기 바랍니다.] Bean의 범위는 크게 2가지로 나뉜다. Singleton : 동일한 Bean 객체는 동일한 타입에 대해서는 기본적으로 한 개만 생성된다. Prototype : Singleton과 반대되는 Type으로 동일한 Bean 객체를 사용하더라도 여러 번 호출하면 객체가 여러 개 생성된다. Singleton Spring Container에서 생성된 Bean 객체의 경우 동일한 타입에 대해서는 기본적으로 한 개만 생성이 되며, getBean() 메소드를 호출될 때 동일한 객체가 반환된다. 다음의 예제는 동일한 Bean을 이용하여 인스턴스를 2개 생성한 후, ..
[Spring] Spring Framework & Spring Container & DI(의존성 주입) [해당 포스트는 개인적으로 공부를 하고 차후에 참고용으로 하고자 작성한 것입니다. 따라서 잘못된 부분이나 부족한 부분이 있을 수 있기에 참고하시기 바랍니다.] Framework 소프트웨어 개발자가 응용 소프트웨어의 표준 구조를 구현하기 위해 사용하는 소프트웨어 프레임워크로 구성된다. 프로그래밍에서 특정 OS를 위한 응용 프로그램 표준 구조를 구현하는 Class와 Library모임. 특징 Modularity (모듈화) 프레임워크는 구현을 위한 인터페이스 뒤에 감추는 캡슐화를 통해서 모듈화를 강하게 한다. Reusability (재사용성) 프레임워크가 제공하는 인터페이스는 여러 Application에서 반복적으로 사용할 수 있는 일반적인 Component를 정의할 수 있게 함으로써 재사용성을 높여준다. 프레..