MyBatisSimple Project🔎 MyBatis 적용 방법에는 두가지 방식이 있다. 1. XML Mapper 를 사용하는 방식 2. Interface Mapper를 사용하는 방식 Interface Mapper를 사용하는 방식이 XML Mapper를 사용하는 방식보다 간단하여 더 추천한다. ※XML Mapper를 사용하는 방식은 아래 글을 참고한다. https://steady-record.tistory.com/entry/Spring-MyBatis-와-Spring-연동하기1-XML-Mapper를-사용한-연동 [Spring] MyBatis 와 Spring 연동하기(1) : XML Mapper를 사용한 연동 MyBatis 예전에는 iBatis라고 불렀다. 영속성 계층, 데이터베이스 조작 계층으로써 JDB..
Address REST API Sever 구축 프로젝트🔎 REST API Server는 개발자에게 제공되는 기능들을 모아놓은 서버로 클라이언트 측 기능이 전혀 없다. 기존 사용했던 MVC 디자인 패턴에서 View 빠진 패턴으로 서버와 DB 통신만 이루어진다. 화면 구축이 없는 것이 각종 Open API 서버와 동일하다고 볼 수 있다. 파일 구성🔎 패키지(경로) 파일명 com.test.controller AddressController.java RestController.java com.test.domain AddressDTO.java com.test.persistence AddressDAO.java(interface) AddressDAOImpl.java RESE API Server는 view를 만들지 않..
REST 🔎 Representational State Transfer의 약자 웹상의 자원(문서, 이미지, 영상 등)을 자원명으로 표시하여 상태를 주고 받는 규칙 HTTP URI를 통해서 자원을 명시하고, HTTP Method를 통해서 자원에 대한 CRUD 처리하는 방식 URI(URL) 표기하는 방식 중 하나이다. URI와 HTTP Method 를 결합한 것이 REST API이다. URI 표기 방식 비교🔎 예를들어 게시판을 구현할 때, 이전 방식에서는 'http://localhost/board/list.do' 으로 동사를 이용해서 행위하는 것을 표현했다. - 이전 방식 페이지 요청 메서드 요청 주소 목록보기 GET http://localhost/board/list.do 추가하기 POST http://loc..
JUnit🔎 Java 언어를 위한 단위 테스트 프레임워크 중 하나로, 소프트웨어의 각 부분이 의도한 대로 작동하는지를 확인하는 데 사용된다. 단위 테스트(설정 테스트)🔎 단위테스트는 각각의 메소드 또는 기능이 의도한 대로 작동하는지 확인함으로써 코드의 신뢰성을 확보할 수 있다. 또한, 코드가 예상대로 동작함을 확인하면 개발자들은 안정적이고 확신을 가지고 코드를 수정하고 확장할 수 있다. 업무 협업 시에는 반드시 자신의 코드를 테스트를 거치고 공유한다. 만약 검증을 하지않고 에러가 발생한다면 확인해야할 곳이 너무 많아 힘들어지므로 단위테스트를 통해 에러가 발생하지 않는 범위를 늘려가며, 안정성을 확보한다. - 파일 구성 상위폴더 패키지 파일명 src/test/java com.test.java.db JDBC..
AOP 웹에 적용하기🔎 이전 수업때의 AOP는 콘솔과 Xml 설정으로 진행했다. 지금 수업의 AOP는 웹과 어노테이션 설정으로 진행한다. 이전 글 참고 https://steady-record.tistory.com/entry/Spring-Spring-AOP-기초-및-예제 [Spring] Spring AOP 기초 및 예제 🔻Spring AOP AOP : Aspect Oriented Programming 관점 지향 프로그래밍 관점(=관심사)는 업무 구현시 주업무가 아닌 나머지 보조 업무를 의미한다. 횡단 관심사를 별도의 모듈로 분리하여 코드의 재사용성 steady-record.tistory.com aop는 글쓰기, 수정하기, 삭제하기 , 방문 기록 로그 남기기 기능 등 권한체크할 때 주로 사용한다. 파일 구성..
다중파일 업로드🔎 파일을 여러개 올리기위해서는 설정이 더 필요하다. 이번에는 DB를 연결하여 게시물에 파일을 첨부해서 올리고 그 글을 읽는 기능을 구현한다. 1. 게시글 추가 2. 게시글 (목록/상세)읽기 3. 게시글 밑 사진 내의 위치정보로 지도 출력 *이전 글과 이어집니다. https://steady-record.tistory.com/entry/Spring-Apache-Commons-IO-라이브러리1-file-입출력 [Spring] Apache Commons IO 라이브러리(1) : file 입출력 Apache Commons IO 라이브러리🔎 Apache 소프트웨어 재단에서 제공하는 오픈 소스 라이브러리로, Java 언어로 작성되어 있다. 입출력 작업을 보다 편리하게 수행할 수 있도록 다양한 유틸리티..
Apache Commons IO 라이브러리🔎 Apache 소프트웨어 재단에서 제공하는 오픈 소스 라이브러리로, Java 언어로 작성되어 있다. 입출력 작업을 보다 편리하게 수행할 수 있도록 다양한 유틸리티 메서드와 클래스를 제공한다. 주로 파일 및 스트림 처리와 관련된 작업을 단순화하고 개선하는 데 사용된다. 파일 구성🔎 패키지(경로) 파일명 com.test.file.controller FileController.java views add.jsp addok.jsp webapp/resources/files 환경설정🔎 기본 설정 아래 글을 참조한다. https://steady-record.tistory.com/entry/Spring-스프링-프로젝트-설정-일괄-적용 [Spring] 스프링 프로젝트 설정 일괄 ..
Tiles 프레임워크🔎 레이아웃 프레임워크 페이지간 공통되는 레이아웃(뼈대)을 구성하고 관리하는 기술이다. 이전 레이아웃 작업을 include로 작업하여 페이지를 분리시켜서 최대한 재사용하였다. 하지만, include는 조직적인거나 대중적인 작업을 하기에는 부족한 면이 많았다. 규모가 있는 작업을 할 때는 라이브러리나 프레임워크를 사용한다. 그 중 Tiles 프레임워크가 스프링과 연동을 하여 오랫동안 사용한 프레임워크이다. tiles를 사용해보면 다른 디자인 프레임워크와 비슷하여 크게 어렵지않을 것이다. 레이아웃🔎 상위 메뉴는 고정이며, 회원 / 관리자마다 사이드메뉴를 다르게 출력한다. 구현 기능🔎 1. 메인 (index.do) 2. 회원 회원정보(member/info.do) 활동내역(member/his..
코드 조각 관리 게시판 Spring MVC 프로젝트에 Spring MyBatis 를 이용한다. 코드 조각 관리 게시판은 해당 언어에 맞춰 코드 하이라이트가 되는 게시판이다. 버튼을 누를 때마다 해당 언어만 필터링 되어 출력된다. 파일 구성🔎 패키지(경로) 파일명 com.test.controller CodeController.java com.test.persistence CodeDAO.java (interface) CodeDAOImpl.java com.tet.domain CodeDTO.java views list.jsp view.jsp add.jsp src/main/resources/mapper code.xml root script.spl 초기 세팅🔎 컴포넌트 등록 - servlet-context.xml ..