본문 바로가기

자바/SpringFrameWork

(31)
DAY4-Class02.어노테이션으로 게시판 프로그램 구현하기 "앞서 배운 @RequestMapping 어노테이션과 @Controller 어노테이션 기능을 통해서, 로그인/게시판 기능을 구현 할 수 있다. 특히, GetBoardListController.java(2.1 참조) / LogoutController.java(2.7 참조)를 통해서 POJO를 구현 할 수 있다. " 2.1 글 등록 구현하기 1. 목적 : GetBoardListController.java 를 통해서, 컨트롤러 메소드의 POJO 구현 2. 방법 1) 컨트롤러 메소드의 반환값과 매개변수에 ModelAndView와 DAO를 첨부한다. (* 첨부자료 1 참조) 2) mav.addObject를 통해 Model 정보를 저장, mav.setViewName을 통해 반환 될 Page 저장. (* ModelA..
DAY4-Class01.어노테이션 기반 MVC 개발 " 스프링은 스프링 설정파일(* presentation_layer.xml) 내의 annotation 설정을 통해서 과도한 XML 설정을 해소해 준다." 1.1 어노테이션 관련 설정 1. 목적 : 스프링설정파일 내의 annotation 설정을 통한 과도한 XML 설정 해소 2. 방법 1) presentation_layer.xml 내의 모든 bean 설정을 삭제하고, 엘리먼트로 대체한다. 2) 의 범위 지정을 통한 객체의 자동 설정(Lookup) #. 1. 첨부자료 1.2 @Controller 사용하기 1. 목적 1) @Controller를 사용해야 하는 이유는 객체 생성과 POJO(Plain Old Java Object)를 위함이다. 그렇지 않을 경우, 정형화된 인터페이스 Controller를 상속 받게 ..
SPRING MVC 적용 6.1 Spring MVC 적용 준비(P.325) : 앞 전에 말했다시피, 그 간 설정했던 서블릿(DispatcherServlet)을 포함 한 Controller, HandlerMapping, ViewResolver은 스프링프레임워크에서 자동으로 제공한다. 따라서, 아래와 같이 직접 생성한 Java 파일들은 모두 삭제한다. #1. 첨부자료 : Java 파일 삭제 #2. 첨부자료 : 스프링에서 제공하는 Controller 인터페이스 : 스프링프레임워크에서 제공하는 Controller 인터페이스의 모습이다.(* 실제로는 작성하지 않는다.) Package org.springframework.web.servlet.mvc; import javax.servlet.http.HttpServletRequest; impo..
[스프링프레임워크3-(1~2)]- MVC 프레임워크 개발-(3) ※ DAY3의 5~7 CLASS는 본격적인 스프링프레임워크의 설정 과정이므로 이어진다. " MVC 프레임워크 개발에서는 DispatcherServlet, ViewResolver, HandlerMapping 등의 클래스들을 직접 생성하여 학습했다. 사실 위의 학습은 프레임워크를 익히기 위해 직접 개발을 한 것이고, 스프링프레임워크에서는 서블릿컨테이너 및 스프링컨테이너를 통해 위의 클래스들을 자동으로 직접 생성해준다. 이번 장에서는 스프링 프로젝트를 하기 위한 '설정'에 주목하여 학습한다 " 5.1 Spring MVC 수행흐름(P.313~) #1. 첨부자료 : 스프링프레임워크 MVC 수행 개괄도 "앞 절의 개괄도와의 차이점은 DispatcherServlet을 스프링프레임워크에서 직접 생성해 준다는 점이고, ..
[스프링프레임워크 DAY3 - C4)]-MVC 프레임워크 개발 "앞 절에서는 MVC1-2를 이용한 웹 프로젝트 개발에 관해 학습했다. 여기서 부터는 드디어 프레임워크를 활용한 웹 프로젝트 제작에 대하서 배운다." 4.1 MVC 프레임워크 구조 : MVC2 패턴의 DIspatcherServlet.java 파일을 보면, 웹에서 사용 되는 모든 로직이 한 개의 클래스에 모여있다. 이런 식이라면 유지보수 및 개발이 상당히 어려워 진다. 따라서 하나의 서블릿안에 모든 로직을 넣기 보다는 각각의 Controller 별로 나누어 구현 하는 것이 효과적이다. #1. 첨부자료 1 - MVC2 패턴에서 모든 로직이 모여져 있는 DIspatcherServlet.java의 분기 로직(* MVC2 참고) "편의상 메모장에서 스캔 했지만... 여하튼 모든 *.do의 로직들이 한개의 서블릿에..
[스프링프레임워크 DAY3 - C3]-Model2 아키텍처로 게시판 개발 "MVC2 패턴으로 회원 가입 및 게시판을 개발하는 작업을 진행한다. 앞 절에서 구축 했던 MVC1 패턴을 MVC2패턴으로 변경하여 작업을 진행한다." 3.1 Model 2 아키텍처 구조(p. 263) : Model1에서는 JSP에 Controller와 View가 모두 통합되어 있었다. 따라서 Controller에 해당하는 자바 로직을 찾기가 쉽지 않다. 이 문제를 해결 하기 위해서 Model2에서는 Controller가 직접 등장한다. "Model1= Model + JSP(View+Controller) 였다면, Model2 에서는 Model + JSP(View) + Controller가 철저하게 나누어 진다. (*참고로 Model2에서는 Servlet이 Controller를 담당한다.)" #1. 첨부자..
[스프링프레임워크 DAY3 - C1~2)]-Model1 아키텍처로 게시판 개발 "이제는 MVC 1~3 패턴으로 회원가입 및 게시판을 개발하는 작업을 진행 할 것이다." ( *M : Model / V : View / C : Controller ) 1.1 Model1 (MVC1) 아키텍처 구조(P. 241) : Model1 의 가장 큰 특징은 JSP(* 자바 서버 페이지) 에서 View 기능과 Controller 기능을 동시해 수행한다는 점이다. #1. 첨부자료 - MVC 1 패턴 1) Controller : 사용자의 요청 처리와 관련된 자바 코드를 의미한다. (* 구체적인 내용 아래 소스 참고) 2) View : 화면 이동 처리(HTML, CSS) 3) Model : DAO, DTO 와 같은 데이터베이스 연동 자바 객체 1.2 로그인 기능 구현(P. 243) " 1.2에서는 로그인 ..
[스프링퀵스타트2-2] : 스프링 JDBC (P. 209 ~ ) "Spring framework는 결국에는 MVC 패턴으로 DB와 연결하여, 데이터 정보를 가지고 와야 한다. 여기서는 스프링 프레임워크에서 사용하는 DB연결 클래스인 JDBCTemplate에 대해서 배운다." 6.1 스프링 JDBC 개념 6.2 JdbcTemplate 클래스 : JdbcTemplate는 GoF 디자인 패턴 중 템플릿 메소드 패턴이 적용된 클래스이다. 템플릿 메소드 패턴은 복잡하고 반복되는 알고리즘(* 마치 앞장 JDBC 설정 처럼) 을 캡슐화해서 재사용하는 패턴이다. "즉, JdbcTemplate를 사용하면, 개발자는 JDBC에서 반복되는 소스들을 재사용하지 않고, 달라지는 SQL 구문과 설정값만 신경 쓰면 된다." ※ 자세한 사진 "개발자가 설정해야하는 소스는 JdbcTemplate,..