본문 바로가기

JAVAPROGRAMMING56

[20210712] Spring + MyBatis를 이용한 게시판 2 - DTO, DAO, Controller DTO(Data Transfer Object): 데이터 전송을 위해 사용하는 객체. 데이터 전송 및 검증 횟수를 줄이기 위해 자료들을 하나하나 호출하는 것이 아닌 클래스를 만들어 한 번에 전송할 수 있게 해 준다. 각 데이터 변수들과 그 변수들을 꺼내거나 설정할 수 있는 getter와 setter로 구성되어 있다. Spring에서는 사실상 DTO를 빈(Bean), 포조(POJO)와 같다고 볼 수 있으며 혼용이 가능하다.(이 용어들의 차이는 나중에 다뤄보겠다.) package newProject.dto; public class BoardDTO { private int brdno; private String brdtitle; private String brdwriter; private String brdme.. 2021. 7. 12.
[20210709] Spring + MyBatis를 이용한 게시판 1 - 프로젝트 구조 MyBatis는 데이터베이스에 접근해서 서버가 데이터를 가져올 수 있도록 해주는 프레임워크이다. 스프링 프레임워크로 웹 개발을 하면서 데이터베이스에 접근할 때는 MyBatis를 이용하도록 할 수 있다. 두 프레임워크를 사용하여 게시판을 만드는 프로젝트를 차근차근 살펴보자. 먼저, 스프링 프로젝트의 전체적인 구조에 대해 알아보자. 프로젝트의 이름은 newProject이다. newProject의 소스 코드(src) 폴더는 자바 코드와 관련된 main 폴더와 웹페이지와 관련된 webapp 폴더로 나뉜다. main 폴더 안에는 자바 코드를 담고 있는 java 폴더가 있으며 이 안에 control, dao, dto, resource 패키지가 위치한다. control에는 사용자가 요청한 작업을 수행하고 처리 결과를.. 2021. 7. 9.
[20210707] Spring Web MVC Web 개발 MVC 모델에 스프링 프레임워크를 사용하는 방법 web.xml: Deploy Describer(DD, 배치 기술서) 서블릿을 매핑하여 컨트롤러(서블릿)가 모델(DTO)을 통해 데이터를 가져오면 뷰(JSP)를 생성하는 과정을 가능하게 함. DispatcherServlet -> Model 접근 -> View 생성 -> 클라이언트(웹 브라우저가 요청한 정보 전달.) 2021. 7. 7.
[20210706] Spring Framework의 AOP AOP(Aspect Oriented Programming, 관점 지향형 프로그래밍) 로그인, 트랜잭션 등 보조적인 작업을 분리하여 작업 발생 시에만 호출하여 사용하는 것이다. 일반적인 업무는 "A-C-B-A-D-B-A-E-B"와 같이 루틴이 발생하는 경우가 많다. 예를 들어, DB에서 데이터를 가져오는 경우 DB Connection과 close가 작업 전후에 발생하는 구조이다. 따라서 이런 일상적인 업무에서 보조적인 작업들을 분리해내는 것이 AOP의 목표이다. 작업이 세로로 나열되어 있다고 할 때 이런 작업을 분리하기 위해서는 가로로 잘라내야 한다.(횡단, cross-cutting) 이런 반복적인 작업을 모듈화 시키고 함수화 시켜서 주 업무 중 필요시에만 호출하여 사용할 수 있다. 2021. 7. 6.
728x90