서비스 클래스 추가 개요 서비스는 비즈니스 로직을 구현하는 레이어이기 때문에 인터페이스만으로는 동작하지 않습니다. 즉, 반드시 구현 클래스가 필요합니다. 서비스 인터페이스를 만들었으니 인터페이스에 해당하는 서비스 클래스를 추가해 보겠습니다. 서비스 구현 패키지 추가 v2.mvc.spring > blog > service 아래에 impl 패키지를 생성합니다. 서비스 구현 패키지 생성 확인 서비스 구현 패키지가 정상적으로 생성되었는지 확인합니다. 서비스 구현 클래스 이름 입력 서비스 패키지에 새로운 클래스를 생성합니다. 이름을 BlogServiceImpl로 입력합니다. 서비스 구현 클래스 인터페이스 추가 진입 interfaces 오른쪽의 Add 버튼을 클릭합니다. 서비스 구현 클래스 인터페이스 검색 Blog..
서비스 인터페이스 추가 개요 이번 챕터에서는 서비스 인터페이스를 추가합니다. 서비스란, 비즈니스 로직이 위치하는 곳입니다. 스프링 MVC 구조에서는 컨트롤러와 DAO를 연결하고, DAO 에 보낼 매개변수를 가공하거나, DAO에서 받은 결과를 가공해서 돌려주는 역할을 합니다. 자바의 인터페이스는 "설계"의 역할을 합니다. 인터페이스는 구현 클래스가 없고 메서드 시그니쳐(공개 범위, 메서드 이름, 매개변수, 반환값)만 정의하기 때문에 "구체적으로 어떻게 만들지는 모르겠지만 일단 이런 기능이 필요해"라는 것을 정의할 때 사용됩니다. 스프링 MVC에서 서비스 레이어는 인터페이스와 클래스를 함께 사용합니다. 스프링은 직접 클래스를 생성하는 것을 지양하고 인터페이스를 통해 접근하는 것을 권장하는 프레임워크이기 때문..
DAO 클래스에 insert 메서드 작성 개요 DAO 클래스에서 매퍼 XML의 쿼리를 실행하는 방법을 알아봅니다. insert 메서드 추가 /src/main/java/v2/mvc/spring/blog/dao/BlogDAO.java public int insert(Map map) { int result = this.sqlSessionTemplate.insert("TB_BLG_CONT.insert", map); if (result > 0 && map.containsKey("seq_blg_cont")) { return (int) map.get("seq_blg_cont"); } return -1; } BlogDAO 클래스에 insert 메서드를 입력합니다. 자동 불러오기(ctrl + shift + o) 단축키를..
DAO 클래스 생성 개요 DAO 클래스는 Data Access Object의 약자로, 이름처럼 "데이터에 접근하는 객체" 입니다. 매퍼 XML에 작성한 쿼리를 실행시키기 위해 작성하므로 매퍼 XML과 한 쌍입니다. DAO 패키지 생성 src/main/java 아래에 v2.mvc.spring.blog.dao 패키지를 생성합니다. 패키지 계층 형식으로 보기 활성화 패키지 탐색기 오른쪽에 세로로 점 세개가 나 있는 아이콘을 누릅니다. Package Presentation을 선택합니다. Flat으로 선택되어 있는 항목을 Hierarachical 로 변경합니다. 패키지 계층 형식로 보기 결과 v2.mvc.spring > blog > 아래에 controller와 dao가 위치한 것을 확인합니다. BlogDAO 클래..
블로그 컨텐츠 매퍼 XML 생성 개요 데이터베이스에 요청할 쿼리를 작성할 매퍼 XML 을 작성해 보겠습니다. 이번 챕터에서는 블로그 컨텐츠에 데이터를 입력하는 쿼리를 작성합니다. 매퍼 폴더 생성 메뉴 진입 src/main/resources 디렉토리를 우클릭합니다. new를 선택합니다. Folder를 선택합니다. 매퍼 폴더 생성 New Folder 메뉴에서 폴더 이름을 sqlmap으로 지정합니다. Finish를 선택합니다. 매퍼 폴더 위치 확인 매퍼 폴더가 src/main/resources > sqlmap 경로에 있는지 확인합니다. XML 파일 생성 메뉴 진입 src/main/resource 아래 sqlmap 패키지를 우클릭합니다. New 를 누릅니다. Other를 선택합니다. XML 파일 타입 검색 파일..
데이터베이스 관련 자바 빈 설정 개요 스프링에서 데이터베이스에 접속하기 위해서는 최소한 세개의 자바 빈이 필요합니다. 데이터소스 빈 : 스프링에서 데이터베이스에 접속하기 위한 접속 정보를 뜻합니다. sqlSessionFactory 빈 : 데이터베이스와 연결을 맺고 끊어질 때까지의 라이프 사이클을 관리하는 sqlSession 객체를 만듭니다. sqlSessionTemplate 빈 : 데이터베이스에 개별적으로 쿼리를 실행시키는 객체입니다. root-context.xml 파일 복사 패키지 탐색기에서 root-context.xml 파일을 복사합니다. 우클릭 후 Copy를 클릭하거나 ctrl + c를 누릅니다. root-context.xml 붙여넣기 src/main/webapp/WEB-INF/spring 폴더를 ..