순서 1. 전체적 방향 2. 라이브러리 추가 3. web.xml 4. multipartResolver 등록 1. 전체적 방향 '상품 등록 페이지'에서 사용자가 이미지를 선택을 하고 다른 상품 정보를 다 작성한 뒤 '등록 버튼'을 눌렀을 때 상품 이미지를 업로드하고, 업로드 이미지 정보를 DB 저장을 하는 방식으로 구현했습니다. 해당 방식으로 했을 때 동작 방식은 다음과 같습니다. (뷰) 사용자가 이미지를 선택 => (뷰) 선택된 이미지 서버로 전송 => (서버) 전송받은 이미지 저장 후, 저장 한 이미지 정보 뷰로 재전송 => (뷰) 전송받은 데이터를 활용하여 이미지 미리 보기, 태그에 데이터 저장 => (뷰) '등록 버튼' 클릭 => (서버) 이미지 정보 DB 저장 서버에서 첨부 파일을 처리하기 위해서..
순서 1. Mapper 메서드 2. Service 메서드 3. Controller 메서드 4. View 처리 1. Mapper 메서드 상품 정보 삭제 쿼리를 수행하는 메서드를 AdminMapper.java 인터페이스에 추가합니다. /* 상품 정보 삭제 */ public int productsDelete(int product_id); AdminMapper.xml 앞서 선언한 메서드가 실행해야 할 태그와 쿼리문을 작성합니다. delete from product where product_id = #{product_id} 2. Service 메서드 AdminService.java 삭제 Mappper 메서드를 호출하는 Service 메서드를 작성했습니다. AdminService.java에 아래의 메서드 선언부를 ..
순서 1. Mapper 메서드 2. Service 메서드 3. Controller 메서드 4. View 처리 4.1 버튼 동작 4.2 유효성 검사 적용 4.3 '상품 관리(목록) 페이지' 4.4 테스트 1. Mapper 메서드 수정 쿼리를 수행하는 Mapper, Service, Controller 메서드를 만들었습니다. 먼저 Mapper 단계의 메서드부터 작업했습니다. AdminMapper.java 상품 정보 수정 쿼리를 실행하는 메서드 선언부를 작성합니다. /* 상품 수정 */ public int productsModify(SwanVO vo); AdminMapper.xml 앞서 작성한 메서드가 실행할 태그와 쿼리문을 작성합니다. update product set product_title = #{prod..
상품 정보 수정에서 상품 카테고리 상품 카테고리는 '상품 조회' 페이지에서 처럼 DB에 저장된 카테고리가 출력이 되면서, '상품 등록' 페이지와 같이 대분류 선택에 따라 중분류가 초기화 및 변경되도록 해야 합니다. 따라서 '상품 조회', '상품 등록' 페이지에서의 사용한 상품 카테고리 관련 코드를 활용하여 작성했습니다. 먼저 DB에 저장된 카테고리가 선택된 상태로 출력시킬 코드를 추가해줍니다. 아래의 코드는 $(document). ready(function(){}) 메서드 내부에 반드시 작성해 주어야 합니다. /* 카테고리 */ let cateList = JSON.parse('${cateList}'); let cate1Array = new Array(); let cate2Array = new Array(..