본문 바로가기

개발 공부/Spring

(19)
코드로 배우는 스프링 웹 프로젝트-13.MyBatis와 스프링에서 페이징 처리 코드로 배우는 스프링 웹 프로젝트-13.MyBatis와 스프링에서 페이징 처리 코드로 배우는 스프링 웹 프로젝트 - 개정판 2019년 7월 10일 인쇄판 Part3. 기본적인 웹 게시물 관리 Chapter13. MyBatis와 스프링에서 페이징 처리 페이징 처리를 위해 필요한 파라미터는 페이지 번호(pageNum), 한 페이지당 몇 개의 데이터(amount)를 보여줄 것인지이다. org.zerock.domain 패키지에 Criteria 클래스 작성 package org.zerock.domain; import lombok.Getter; import lombok.Setter; import lombok.ToString; @Getter @Setter @ToString public class Criteria { ..
코드로 배우는 스프링 웹 프로젝트-12.오라클 데이터베이스 페이징 처리 코드로 배우는 스프링 웹 프로젝트-12.오라클 데이터베이스 페이징 처리 코드로 배우는 스프링 웹 프로젝트 - 개정판 2019년 7월 10일 인쇄판 Part3. 기본적인 웹 게시물 관리 Chapter12. 오라클 데이터베이스 페이징 처리 구현된 기능들 중 가장 미숙한 부분이 목록 페이지이다. 기본적으로 페이징 처리가 필요한데, 상식적으로 수많은 데이터를 한 페이지에서 보여주면 처리 성능에 영향을 미친다. 일반적으로 페이징 처리는 크게 번호를 이용하거나 계속 보기 형태로 구현됟나. 번호 페이징 처리는 전통적인 방식이고 계속 보기는 Ajax와 앱이 등장한 후 무한 스크롤이나 더 보기 형태로 구현된다. 12.1 order by의 문제 데이터 양이 많을수록 정렬은 많은 리소스를 소모한다. 데이터베이스를 이용할 때..
코드로 배우는 스프링 웹 프로젝트-11.화면처리 코드로 배우는 스프링 웹 프로젝트-11.화면처리 코드로 배우는 스프링 웹 프로젝트 - 개정판 2019년 7월 10일 인쇄판 Part3. 기본적인 웹 게시물 관리 Chapter11. 화면처리 각 영역에 대한 모든 처리와 테스트가 완료되었다. 만일 에러가 발생한다면 모든 문제는 화면 쪽에서 발생한다고 할 수 있다. 화면을 개발하기 전엔 반드시 전체 레이아웃과 디자인이 반영된 상태에서 개발하는 것을 추천한다. 디자이너가 같이 참여하지 못한다면 BootStrap을 이용해 무료 디자인을 찾아보는 것도 좋다. https://startbootstrap.com/template-categories/all/ Redirecting… startbootstrap.com 예제에서 사용할 디자인은 SB Admin2이다. 11. 1..
코드로 배우는 스프링 웹 프로젝트-10.프레젠테이션(웹)계층의 CRUD 구현 코드로 배우는 스프링 웹 프로젝트-10.프레젠테이션(웹)계층의 CRUD 구현 코드로 배우는 스프링 웹 프로젝트 - 개정판 2019년 7월 10일 인쇄판 Part3. 기본적인 웹 게시물 관리 Chapter10. 프레젠테이션(웹) 계층의 CRUD 구현 10.1 Controller의 작성 Controller는 하나의 클래스 내에서 여러 메서드를 작성하고 @RequestMapping을 이용해 URL을 분기하는 구조로 작성할 수 있기 때문에 하나의 클래스에서 필요한 만큼 분기를 이용하는 구조로 작성한다. 10.1.1 BoardController의 분석 Task URL Method Parameter From URL 이동 전체 목록 /board/list GET 등록 처리 /board/register POST 모든 항..
코드로 배우는 스프링 웹 프로젝트 P3: Chap09.비즈니스 계층 코드로 배우는 스프링 웹 프로젝트 - 개정판 코드로 배우는 스프링 웹 프로젝트 - Part3: Chap09.비즈니스 계층 2019년 7월 10일 인쇄판 Chapter09. 비즈니스 계층 비즈니스 계층은 고객의 요구사항을 ㅇ반영하는 계층으로 프레젠테이션 계층과 영속 계층의 중간 다리 역할을 하게 된다. 영속 계층은 Database 기준으로 해서 설계를 나눠 구현하지만 비즈니스 계층은 로직을 기준으로 해서 처리하게 된다. 일반적으로 비즈니스 영역에 있는 객체들은 서비스 용어로 많이 표현함. 9.1 비즈니스 계층의 설정 org.zerock.service 패키지 작성 설계를 할 때 각 계층 간 연결은 interface를 이용해 느슨한 연결을 한다. BoardService 인터페이스와 Impl 클래스 선언 pac..
코드로 배우는 스프링 웹 프로젝트 P3: Chap08. 영속/비즈니스 계층의 CRUD 구현 코드로 배우는 스프링 웹 프로젝트 - 개정판 코드로 배우는 스프링 웹 프로젝트 - Part3: Chap08. 영속/비즈니스 계층의 CRUD 구현 2019년 7월 10일 인쇄판 Chapter08. 영속/비즈니스 계층의 CRUD 구현 영속 계층의 작업은 다음 같은 순서로 진행된다 - 테이블의 칼럼 구조를 반영하는 VO 클래스 생성 - MyBatis의 Mapper 인터페이스의 작성, XML 처리 - 작성한 Mapper 인터페이스의 테스트 8.1 영속 계층의 구현 준비 거의 모든 웹 앱의 최종 목적은 DB에 데이터를 기록하거나 가져오는 것이 목적이므로 개발 시 어느 정도의 설계가 진행되면 DB 관련 작업을 하게 된다. 8.1.1 VO 클래스의 작성 테이블 설계를 기준으로 작성하면 된다. org.zerock.do..
코드로 배우는 스프링 웹 프로젝트 - Part3: Chap07. 스프링 MVC 프로젝트의 기본 구성 코드로 배우는 스프링 웹 프로젝트 - 개정판 코드로 배우는 스프링 웹 프로젝트 - Part3: Chap07. 스프링 MVC 프로젝트의 기본구성. 2019년 7월 10일 인쇄판 Part3: 기본적인 웹 게시물 관리 Chapter07. 스프링 MVC 프로젝트의 기본 구성 일반적으로 웹 프로젝트는 3-tier 방식으로 구성한다. Presentation - Business - Persistence tier Presentation Tier는 화면에 보여주는 기술을 사용하는 영역. 책의 예제에선 SErvlet/JSP나 스프링 MVC가 담당하는 영역이 된다. Presentation Tier는 프로젝트의 성격에 맞춰 앱으로 제작하거나 CS(Client-Server)로 구성되는 경우도 있다. Business Tier는 ..
코드로 배우는 스프링 웹 프로젝트 - Part2 : 스프링 MVC 설정 코드로 배우는 스프링 웹 프로젝트 - 개정판 코드로 배우는 스프링 웹 프로젝트 - Part2 : 스프링 MVC 설정 2019년 7월 10일 인쇄판 Part2. 스프링 MVC 설정 Chapter 05. 스프링 MVC의 기본 구조 스프링 MVC는 스프링의 서브 프로젝트이다. https://spring.io/projects를 를 보면 SPring Framework라는 메인 프로젝트 외에도 여러 서브 플젝이 있는데 스프링 MVC도 이 중 하나. 스프링은 하나의 기능을 위해 만들어진 프레임웤이 아니라 코어라고 할 수 있는 framework에서 여러 서브 플젝을 결합해 다양한 상황에 대처할 수 있도록 개발되었따. 즉 "별도의 설정이 존재할 수있다"는 개념. Spring legacy project에서도 servlet..
(New)코드로 배우는 스프링 웹 프로젝트 - Part1 : 스프링 개발 환경 구축 코드로 배우는 스프링 웹 프로젝트 - 개정판 코드로 배우는 스프링 웹 프로젝트 - Part1 : 스프링 개발 환경 구축 html, css, javascript는 기억안나면 인프런으로 보충할 예정 2019년 7월 10일 인쇄판 Part1. 스프링 개발 환경 구축 Chapter 01. 개발을 위한 준비 1.1 개발 환경 설정 - JDK 1.8 버전 설치 - Eclise / STS 설치 및 프로젝트 생성(저는 Eclipse 위주로 갑니다) - Tomcat 설치 및 연동 - 오라클 데이터베이스 / SQL Daveloper 설치 및 설정 - 스프링 프로젝트 생성 및 라이브러리 추가 - MyBatis / mybatis-spring 설정 - 스프링 MVC 개발 설정 1.1 개발 환경설정 1.1.1 JAVA 설치 생략..