본문 바로가기

Java . Spring . Web . SQL76

Srping MVC Spring MVC 의 구조와 흐름 1 ) Client 로 부터 받는 모든 "~.do" 요청(request)을 DispatcherServlet 이 받음 2 ) DispatcherServlet 이 HandlerMapping 사용해서 해당 요청을 처리해줄 Controller 를 검색함 3 ) DispatcherServlet 이 검색된 Controller 를 실행시켜서 Client의 요청을 처리함 4 ) Controller가 비즈니스 로직의 수행결과로 얻은 Model, View 정보를 ModelAndView 객체에 저장해서 리턴! 5 ) DispatcherServlet이 ModelAndView 로 부터 View 정보를 추출하고, ViewResolver 를 이용해서 응답으로 사용할 View를 찾아냄(얻어냄) 6.. 2020. 11. 2.
MVC 프레임워크 개발 (Spring MVC 프레임워크 전) 이 전까지 했던 게시판 개발은 MVC 아키텍처를 사용하긴 했어도, DispatcherServlet 클래스 하나로만 Controller 기능을 해줬었다. heidish.tistory.com/84?category=889082 ( 위 글 참고 : Model 2 아키텍처로 게시판 개발 ) 근데 이렇게 하나의 서블릿으로 Controller 를 구현하게 되면 클라이언트의 모든 요청을 이 하나의 서블릿이 처리해야 되므로, 수많은 분기처리 로직을 갖게 되며, 개발&유지보수가 어려워진다. 무슨말이냐면, DispatcherServlet 클래스가 여태 구현한것처럼 수많은 기능을 하도록 구현되어있으면 특정 기능을 수정하고 싶을 때 해당 코드를 찾기도 힘들 뿐더러, 새로운 기능을 추가할때마다 분기처리 로직이 계속 늘어나게 되므.. 2020. 10. 27.
스프링과 Mybatis 연동 이 전 글에서 사용한 MybatisProject 프로젝트가 아닌 그 전에 계속 사용하던 BoardWeb_SpringMVC 프로젝트를 사용할꺼임 스프링과 Mybatis 연동을 위해서는, Mybatis 에서 제공하는 아래의 두 클래스들을 이용해서 연동시켜줘야 한다. org.mybatis.spring.SqlSessionFactoryBean org.mybatis.spring.SqlSessionTemplate 가장 먼저, BoardWeb_SpringMVC 프로젝트 내부에는 스프링과 Mybatis 연동을 처리해줄 라이브러리들이 없으므로 pom.xml 문서 내부에 를 추가해주자 ( pom.xml ) JSON 설정과 AspectJ 설정 사이에 넣어줬음 생략.... com.fasterxml.jackson.core jac.. 2020. 10. 27.
Mybatis 프레임워크 : Basic Mybatis 프레임워크의 특징 1) 한 두줄의 자바코드로 DB 연동을 처리한다. ( 단, sql session factory가 필요함 ) 2) SQL 명령어를 자바 코드에서 분리해서, XML 파일에 따로 관리함 ( mapper.xml 에서 관리함 / 환경설정은 configuration.xml 에서! ) 위의 특징을 좀 더 자세히 설명하자면, 1. Mybatis 는 XML 파일에 저장된 SQL 명령어를 mapper.xml 을 통해서 대신 실행해주고, 실행한 결과를 VO 자바 객체에 자동으로 매핑까지 해준다 ! 그래서 Mybatis 프레임워크를 Data Mapper 라고 부른다. 2. Mybatis 는 Java 코드에서 SQL 구문을 분리해준다. Mybatis 역시 플러그인을 설치해야 사용 가능한데, Ja.. 2020. 10. 26.
데이터 변환 : JSON & XML 데이터 변환 다른 시스템과 정보를 주고받을 때, 데이터를 변환해서 주고받는 경우가 있다. 그럴 때 사용하는 방법이 두 가지가 있는데, 하나는 JSON 으로 데이터 변환이고, 다른 하나는 XML 로 데이터 변환이다. 1. JSON 으로 데이터 변환 JSON 방식으로 데이터를 변환해서 내보내는건 필수로 알아놓자! JSON 은 JavaScript Object Notation 으로, 자바스크립트 객체로 만들어지기 때문에 JSP, PHP 등등 다른 언어간에 정보교환이 쉽게 이루어질 수 있다. 파이썬, R 같은 언어도 JSON 형태의 데이터를 읽을 수 있다고 한다,, 여태 계속 스프링으로 게시판 만들기를 하면서, 글 목록을 띄워주기 위해서 board_spring 테이블이 갖고있는 모든 글을 검색한 뒤, 저장된 게시글 정보를 B.. 2020. 10. 23.
다국어 처리 : 메시지파일, MessageSource 등록, LocaleResolver 등록, Locale 변경 다국어 처리 스프링에서 제공하는 다국어 처리 방식은 스프링 이전에 등장했던 Struts 프레임워크와 매우 유사하다. 그리고 사용자가 원하는 언어로 화면이나 메시지를 출력해주기 위해서는 각 언어에 따른 메시지 파일을 모두 작성해야 한다. 기본적으로 메시지 파일의 확장자는 " .properties " 이며, 파일명은 해당 언어의 Locale 정보를 이용해 작성해준다. ex ) messageSource_en.properties 여태 만든 프로젝트에 다국어 처리를 해줄껀데 영어, 한국 두 가지 언어로 해줄꺼다,,,, 1. 영어 메시지파일 생성 영어, 한글 각각의 메시지 파일을 먼저 만들어야하는데, 아래와 같이 src/main/resources 소스폴더 내부에 패키지를 먼저 생성하자. 그리고 이 message 라.. 2020. 10. 22.