🌿RESTREST(Representational State Transfer)는 웹 상의 자원(문서, 이미지, 영상 등)을 자원명으로 표시해서 상태를 주고받는 규칙을 의미한다.HTTP URI(Uniform Resource Identifier)를 통해서 자원을 명시하고, HTTP Method(POST, GET, PUT, DELETE, PATCH 등)를 통해서 해당 자원에 대한 CRUD를 처리하는 방식이다.즉, REST는 인터넷 주소를 어떻게 만들지에 대한 규칙이라고 할 수 있다.Spring과 독립된 기술로, 주소의 형식만 갖추면 Servlet/JSP로도 사용할 수 있다. URI(URL) 표기 방식게시판을 만든다는 걸 가정해서 URI 표기 방식의 차이를 알아보도록 하자. 이전 방식목록보기: GET (http..
🌿Spring AOP [Spring] 관점 지향 프로그래밍 AOP: Aspect Oriented Programming🌿Spring AOP Aspect Oriented Programming 관점 지향 프로그래밍(AOP)은 애플리케이션의 핵심 비즈니스 로직에서 분리된 관심사(Concern)를 모듈화 하여 코드의 가독성과 유지보수성을 향상하는 기술이다.isaac-christian.tistory.comAOP는 주 업무가 들어있는 파일에 보조 업무를 구현하지 않는다. 즉, 주 업무와 보조 업무를 분리하는 작업을 하며, 추후 주 업무 보조 업무가 동시(before, after 등의 특정 시점)에 실행되도록 한다.이전에는 AOP를 콘솔과 XML 방식으로 사용했지만, 이번에는 AOP를 어노테이션 방식으로 사용하도록..
🌿Tiles페이지를 만들다 보면 공통적으로 생기는 디자인적인 뼈대가 있다. Tiles는 이때 사용할 수 있는 레이아웃 프레임워크이다.이전에는 레이아웃을 로 페이지를 최대한 분리시켜서 반복되는 디자인 요소를 구성했다.레이아웃을 서포트하는 프레임워크를 사용하면 조직적이고 대규모적인 작업을 할 수 있다.Tiles는 include를 대신하여 페이지의 레이아웃을 구성하고 관리하는 기술이다. 구현 기능메인(index.do)회원회원정보(member/info.do)활동내역(member/history.do)즐겨찾기(member/favorite.do)관리자로그(admin/log.do)환경설정(admin/setting.do) 🌿Tiles를 사용하지 않고 레이아웃 구현파일 생성com.test.comtrollerMainCo..
🌿코드 조각 관리 게시판코드 조각 관리 게시판을 구현해 보도록 하자. 파일 생성com.test.controllerCodeController.javacom.test.persistenceCodeDAO.java (I)CodeDAOImpl.java (C)com.test.domainCodeDTO.javaviewslist.jspviews.jspadd.jspsrc/main/resources > mappercode.xml 기본 작업1. 프로젝트 설정 2. CodeDTO 태그 name 추가3. CodeDAOImpl과 CodeDAO implements 설정4. CodeDAOImpl이 bean이 되도록 @Repository 붙임@Autowiredprivate CodeDAO dao; //public CodeControlle..
🌿쿼리 경우의 수1. 반환값(X), 매개변수(X)2. 반환값(X), 매개변수(O)3. 반환값(O), 매개변수(X)반환값: 단일값반환값: 레코드 1줄반환값: 레코드 N줄4. 반환값(O), 매개변수(O)반환값: 단일값반환값: 레코드 1줄반환값: 레코드 N줄 [Spring] MyBatis: Connection Pool (Commons DBCP, HikariCP)🌿MyBatis 영속성 계층 (데이터베이스 조작 계층) Mybatis는 자바 오브젝트와 SQL사이의 자동 매핑 기능을 지원하는 ORM(Object relational Mapping) 프레임워크이다. MyBatis는 Spring 기술이 아닌 독립적인 기술isaac-christian.tistory.com이전 MyBatis 글에서 이어진다. 🌿반환값(..
🌿MyBatis영속성 계층 (데이터베이스 조작 계층)Mybatis는 자바 오브젝트와 SQL사이의 자동 매핑 기능을 지원하는 ORM(Object relational Mapping) 프레임워크이다.MyBatis는 Spring 기술이 아닌 독립적인 기술이지만, Spring에서 도입을 해서 사용할 수 있도록 연동되어 있다.MyBatis는 SQL을 별도의 파일을 분리해서 관리하게 하며, 응용프로그램과 데이터베이스를 연결하는 JDBC 같은 역할을 한다. 단, SQL을 그대로 사용할 수 있다는 점에서 JDBC을 사용할 때의 불편함을 해결했다. [JDBC] JDBC란? (Java Database Connectivity)🍁JDBC JDBC는 자바 프로그램과 데이터베이스(오라클)를 연결시켜 주는 자바 API(응용 프..