diff --git a/src/main/java/egovframework/example/sample/service/EgovSampleService.java b/src/main/java/egovframework/example/sample/service/EgovSampleService.java index 1c8ce06..474e025 100644 --- a/src/main/java/egovframework/example/sample/service/EgovSampleService.java +++ b/src/main/java/egovframework/example/sample/service/EgovSampleService.java @@ -36,44 +36,44 @@ public interface EgovSampleService { /** * 글을 등록한다. - * @param vo - 등록할 정보가 담긴 SampleVO + * @param sampleVO - 등록할 정보가 담긴 SampleVO * @return 등록 결과 */ - void insertSample(SampleVO vo); + int insertSample(SampleVO sampleVO); /** * 글을 수정한다. - * @param vo - 수정할 정보가 담긴 SampleVO + * @param sampleVO - 수정할 정보가 담긴 SampleVO * @return void형 */ - void updateSample(SampleVO vo); + int updateSample(SampleVO sampleVO); /** * 글을 삭제한다. - * @param vo - 삭제할 정보가 담긴 SampleVO + * @param sampleVO - 삭제할 정보가 담긴 SampleVO * @return void형 */ - void deleteSample(SampleVO vo); + int deleteSample(SampleVO sampleVO); /** * 글을 조회한다. - * @param vo - 조회할 정보가 담긴 SampleVO + * @param sampleVO - 조회할 정보가 담긴 SampleVO * @return 조회한 글 */ - SampleVO selectSample(SampleVO vo); + SampleVO selectSample(SampleVO sampleVO); /** * 글 목록을 조회한다. - * @param vo - 조회할 정보가 담긴 VO + * @param sampleVO - 조회할 정보가 담긴 VO * @return 글 목록 */ - List selectSampleList(SampleVO vo); + List selectSampleList(SampleVO sampleVO); /** * 글 총 개수를 조회한다. - * @param vo - 조회할 정보가 담긴 VO + * @param sampleVO - 조회할 정보가 담긴 VO * @return 글 총 개수 */ - int selectSampleListTotCnt(SampleVO vo); + int selectSampleListTotCnt(SampleVO sampleVO); } diff --git a/src/main/java/egovframework/example/sample/service/SampleDefaultVO.java b/src/main/java/egovframework/example/sample/service/SampleDefaultVO.java index 2f171f0..ceac3d6 100644 --- a/src/main/java/egovframework/example/sample/service/SampleDefaultVO.java +++ b/src/main/java/egovframework/example/sample/service/SampleDefaultVO.java @@ -58,10 +58,10 @@ public class SampleDefaultVO implements Serializable { private int pageIndex = 1; /** 페이지개수 */ - private int pageUnit = 10; + private Integer pageUnit; /** 페이지사이즈 */ - private int pageSize = 10; + private Integer pageSize; /** firstIndex */ private int firstIndex = 1; diff --git a/src/main/java/egovframework/example/sample/service/impl/EgovSampleServiceImpl.java b/src/main/java/egovframework/example/sample/service/impl/EgovSampleServiceImpl.java index 8bdf06d..9d29647 100644 --- a/src/main/java/egovframework/example/sample/service/impl/EgovSampleServiceImpl.java +++ b/src/main/java/egovframework/example/sample/service/impl/EgovSampleServiceImpl.java @@ -46,7 +46,7 @@ * @version 1.0 * @see */ -@Service("sampleService") +@Service @RequiredArgsConstructor @Slf4j public class EgovSampleServiceImpl extends EgovAbstractServiceImpl implements EgovSampleService { @@ -57,54 +57,52 @@ public class EgovSampleServiceImpl extends EgovAbstractServiceImpl implements Eg /** * 글을 등록한다. - * @param vo - 등록할 정보가 담긴 SampleVO + * @param sampleVO - 등록할 정보가 담긴 SampleVO * @return 등록 결과 */ @Override - public void insertSample(SampleVO vo) { - log.debug(vo.toString()); + public int insertSample(SampleVO sampleVO) { + log.debug("id={}", sampleVO.getId()); /** ID Generation Service */ - String id; try { - id = egovIdGnrService.getNextStringId(); + sampleVO.setId(egovIdGnrService.getNextStringId()); } catch (FdlException e) { throw new BaseRuntimeException(e); } - vo.setId(id); - log.debug(vo.toString()); + log.debug("id={}", sampleVO.getId()); - sampleMapper.insertSample(vo); + return sampleMapper.insertSample(sampleVO); } /** * 글을 수정한다. - * @param vo - 수정할 정보가 담긴 SampleVO + * @param sampleVO - 수정할 정보가 담긴 SampleVO * @return void형 */ @Override - public void updateSample(SampleVO vo) { - sampleMapper.updateSample(vo); + public int updateSample(SampleVO sampleVO) { + return sampleMapper.updateSample(sampleVO); } /** * 글을 삭제한다. - * @param vo - 삭제할 정보가 담긴 SampleVO + * @param sampleVO - 삭제할 정보가 담긴 SampleVO * @return void형 */ @Override - public void deleteSample(SampleVO vo) { - sampleMapper.deleteSample(vo); + public int deleteSample(SampleVO sampleVO) { + return sampleMapper.deleteSample(sampleVO); } /** * 글을 조회한다. - * @param vo - 조회할 정보가 담긴 SampleVO + * @param sampleVO - 조회할 정보가 담긴 SampleVO * @return 조회한 글 */ @Override - public SampleVO selectSample(SampleVO vo) { - SampleVO resultVO = sampleMapper.selectSample(vo); + public SampleVO selectSample(SampleVO sampleVO) { + SampleVO resultVO = sampleMapper.selectSample(sampleVO); if (resultVO == null) { throw new BaseRuntimeException(processException("info.nodata.msg")); } @@ -113,22 +111,22 @@ public SampleVO selectSample(SampleVO vo) { /** * 글 목록을 조회한다. - * @param vo - 조회할 정보가 담긴 VO + * @param sampleVO - 조회할 정보가 담긴 VO * @return 글 목록 */ @Override - public List selectSampleList(SampleVO vo) { - return sampleMapper.selectSampleList(vo); + public List selectSampleList(SampleVO sampleVO) { + return sampleMapper.selectSampleList(sampleVO); } /** * 글 총 개수를 조회한다. - * @param vo - 조회할 정보가 담긴 VO + * @param sampleVO - 조회할 정보가 담긴 VO * @return 글 총 개수 */ @Override - public int selectSampleListTotCnt(SampleVO vo) { - return sampleMapper.selectSampleListTotCnt(vo); + public int selectSampleListTotCnt(SampleVO sampleVO) { + return sampleMapper.selectSampleListTotCnt(sampleVO); } } diff --git a/src/main/java/egovframework/example/sample/service/impl/SampleMapper.java b/src/main/java/egovframework/example/sample/service/impl/SampleMapper.java index e55c87b..56fa849 100644 --- a/src/main/java/egovframework/example/sample/service/impl/SampleMapper.java +++ b/src/main/java/egovframework/example/sample/service/impl/SampleMapper.java @@ -43,44 +43,44 @@ public interface SampleMapper { /** * 글을 등록한다. - * @param vo - 등록할 정보가 담긴 SampleVO + * @param sampleVO - 등록할 정보가 담긴 SampleVO * @return 등록 결과 */ - void insertSample(SampleVO vo); + int insertSample(SampleVO sampleVO); /** * 글을 수정한다. - * @param vo - 수정할 정보가 담긴 SampleVO + * @param sampleVO - 수정할 정보가 담긴 SampleVO * @return void형 */ - void updateSample(SampleVO vo); + int updateSample(SampleVO sampleVO); /** * 글을 삭제한다. - * @param vo - 삭제할 정보가 담긴 SampleVO + * @param sampleVO - 삭제할 정보가 담긴 SampleVO * @return void형 */ - void deleteSample(SampleVO vo); + int deleteSample(SampleVO sampleVO); /** * 글을 조회한다. - * @param vo - 조회할 정보가 담긴 SampleVO + * @param sampleVO - 조회할 정보가 담긴 SampleVO * @return 조회한 글 */ - SampleVO selectSample(SampleVO vo); + SampleVO selectSample(SampleVO sampleVO); /** * 글 목록을 조회한다. - * @param vo - 조회할 정보가 담긴 VO + * @param sampleVO - 조회할 정보가 담긴 VO * @return 글 목록 */ - List selectSampleList(SampleVO vo); + List selectSampleList(SampleVO sampleVO); /** * 글 총 개수를 조회한다. - * @param vo - 조회할 정보가 담긴 VO + * @param sampleVO - 조회할 정보가 담긴 VO * @return 글 총 개수 */ - int selectSampleListTotCnt(SampleVO vo); + int selectSampleListTotCnt(SampleVO sampleVO); } diff --git a/src/main/java/egovframework/example/sample/web/EgovSampleController.java b/src/main/java/egovframework/example/sample/web/EgovSampleController.java index 8e438ba..2d6e071 100644 --- a/src/main/java/egovframework/example/sample/web/EgovSampleController.java +++ b/src/main/java/egovframework/example/sample/web/EgovSampleController.java @@ -21,7 +21,6 @@ import org.egovframe.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; -import org.springframework.ui.ModelMap; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.ModelAttribute; @@ -63,7 +62,7 @@ public class EgovSampleController { private final EgovPropertyService propertiesService; @GetMapping("/") - public String index(@ModelAttribute SampleVO sampleVO, ModelMap model) { + public String index(@ModelAttribute SampleVO sampleVO, Model model) { return this.selectSampleList(sampleVO, model); } @@ -74,11 +73,15 @@ public String index(@ModelAttribute SampleVO sampleVO, ModelMap model) { * @return "egovSampleList" */ @GetMapping("/egovSampleList.do") - public String selectSampleList(@ModelAttribute SampleVO sampleVO, ModelMap model) { + public String selectSampleList(@ModelAttribute SampleVO sampleVO, Model model) { /** EgovPropertyService.sample */ - sampleVO.setPageUnit(propertiesService.getInt("pageUnit")); - sampleVO.setPageSize(propertiesService.getInt("pageSize")); + if (sampleVO.getPageUnit() == null) { + sampleVO.setPageUnit(propertiesService.getInt("pageUnit")); + } + if (sampleVO.getPageSize() == null) { + sampleVO.setPageSize(propertiesService.getInt("pageSize")); + } /** pageing setting */ PaginationInfo paginationInfo = new PaginationInfo(); @@ -91,7 +94,7 @@ public String selectSampleList(@ModelAttribute SampleVO sampleVO, ModelMap model sampleVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); /** List */ - List sampleList = sampleService.selectSampleList(sampleVO); + List sampleList = sampleService.selectSampleList(sampleVO); model.addAttribute("resultList", sampleList); /** Count */ @@ -132,7 +135,8 @@ public String addSample(@Valid @ModelAttribute SampleVO sampleVO, BindingResult return "sample/egovSampleRegister"; } - sampleService.insertSample(sampleVO); + int result = sampleService.insertSample(sampleVO); + log.debug("result={}", result); status.setComplete(); return "redirect:/egovSampleList.do"; @@ -172,7 +176,8 @@ public String updateSample(@Valid @ModelAttribute SampleVO sampleVO, BindingResu return "sample/egovSampleRegister"; } - sampleService.updateSample(sampleVO); + int result = sampleService.updateSample(sampleVO); + log.debug("result={}", result); status.setComplete(); redirectAttributes.addAttribute("searchCondition", sampleVO.getSearchCondition()); @@ -191,7 +196,8 @@ public String updateSample(@Valid @ModelAttribute SampleVO sampleVO, BindingResu @PostMapping("/deleteSample.do") public String deleteSample(@ModelAttribute SampleVO sampleVO, RedirectAttributes redirectAttributes, SessionStatus status) { - sampleService.deleteSample(sampleVO); + int result = sampleService.deleteSample(sampleVO); + log.debug("result={}", result); status.setComplete(); redirectAttributes.addAttribute("searchCondition", sampleVO.getSearchCondition()); diff --git a/src/main/resources/egovframework/sqlmap/example/mappers/EgovSample_Sample_SQL.xml b/src/main/resources/egovframework/sqlmap/example/mappers/EgovSample_Sample_SQL.xml index d881b2d..d335670 100644 --- a/src/main/resources/egovframework/sqlmap/example/mappers/EgovSample_Sample_SQL.xml +++ b/src/main/resources/egovframework/sqlmap/example/mappers/EgovSample_Sample_SQL.xml @@ -1,17 +1,9 @@ - - - - - - - - - - + + - - + + - - + + - + - - + + + + + - + - - - AND ID LIKE '%' || #{searchKeyword} || '%' - - - AND NAME LIKE '%' || #{searchKeyword} || '%' - - - +]]> + + + \ No newline at end of file diff --git a/src/main/resources/egovframework/sqlmap/example/sql-mapper-config.xml b/src/main/resources/egovframework/sqlmap/example/sql-mapper-config.xml index 1b57ffd..7f8bc49 100644 --- a/src/main/resources/egovframework/sqlmap/example/sql-mapper-config.xml +++ b/src/main/resources/egovframework/sqlmap/example/sql-mapper-config.xml @@ -2,6 +2,12 @@ + + + + + + diff --git a/src/test/java/egovframework/example/sample/service/SampleDefaultVOTest.java b/src/test/java/egovframework/example/sample/service/SampleDefaultVOTest.java index ecdbc2c..93cafad 100644 --- a/src/test/java/egovframework/example/sample/service/SampleDefaultVOTest.java +++ b/src/test/java/egovframework/example/sample/service/SampleDefaultVOTest.java @@ -33,8 +33,8 @@ void defaultValues_searchFields() { @DisplayName("기본값 확인 - 페이지 관련 필드는 1 또는 10") void defaultValues_pageFields() { assertThat(vo.getPageIndex()).isEqualTo(1); - assertThat(vo.getPageUnit()).isEqualTo(10); - assertThat(vo.getPageSize()).isEqualTo(10); + assertThat(vo.getPageUnit()).isEqualTo(null); + assertThat(vo.getPageSize()).isEqualTo(null); assertThat(vo.getFirstIndex()).isEqualTo(1); assertThat(vo.getLastIndex()).isEqualTo(1); assertThat(vo.getRecordCountPerPage()).isEqualTo(10); diff --git a/src/test/java/egovframework/example/sample/service/impl/EgovSampleServiceImplTest.java b/src/test/java/egovframework/example/sample/service/impl/EgovSampleServiceImplTest.java index d6852db..e5eb978 100644 --- a/src/test/java/egovframework/example/sample/service/impl/EgovSampleServiceImplTest.java +++ b/src/test/java/egovframework/example/sample/service/impl/EgovSampleServiceImplTest.java @@ -74,7 +74,8 @@ void setUp() { @DisplayName("글 수정 - 정상적으로 updateSample을 호출한다") void updateSample_정상() { // given - doNothing().when(sampleMapper).updateSample(sampleVO); +// doNothing().when(sampleMapper).updateSample(sampleVO); + when(sampleMapper.updateSample(sampleVO)).thenReturn(1); // when sut.updateSample(sampleVO); @@ -87,7 +88,8 @@ void setUp() { @DisplayName("글 삭제 - 정상적으로 deleteSample을 호출한다") void deleteSample_정상() { // given - doNothing().when(sampleMapper).deleteSample(sampleVO); +// doNothing().when(sampleMapper).deleteSample(sampleVO); + when(sampleMapper.deleteSample(sampleVO)).thenReturn(1); // when sut.deleteSample(sampleVO); @@ -126,7 +128,6 @@ void setUp() { @Test @DisplayName("글 목록 조회 - 목록을 정상적으로 반환한다") - @SuppressWarnings("unchecked") void selectSampleList_정상() { // given SampleVO item1 = new SampleVO(); @@ -137,7 +138,7 @@ void setUp() { when((List) sampleMapper.selectSampleList(sampleVO)).thenReturn(expected); // when - List result = sut.selectSampleList(sampleVO); + List result = sut.selectSampleList(sampleVO); // then assertNotNull(result); diff --git a/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestAddTest.java b/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestAddTest.java index b26a697..bcfd952 100644 --- a/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestAddTest.java +++ b/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestAddTest.java @@ -8,7 +8,6 @@ import java.util.List; import org.egovframe.rte.fdl.cmmn.exception.BaseRuntimeException; -import org.egovframe.rte.psl.dataaccess.util.EgovMap; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; @@ -89,13 +88,13 @@ void test() throws BaseRuntimeException, Exception { sampleVO.setFirstIndex(0); sampleVO.setSearchCondition("1"); sampleVO.setSearchKeyword(insertVO.getName()); - final List resultList = egovSampleService.selectSampleList(sampleVO); - EgovMap result = (EgovMap) resultList.get(0); + final List resultList = egovSampleService.selectSampleList(sampleVO); + SampleVO result = resultList.get(0); final SampleVO resultSampleVO = new SampleVO(); - resultSampleVO.setName((String) result.get("name")); - resultSampleVO.setDescription((String) result.get("description")); - resultSampleVO.setUseYn((String) result.get("useYn")); - resultSampleVO.setRegUser((String) result.get("regUser")); + resultSampleVO.setName(result.getName()); + resultSampleVO.setDescription(result.getDescription()); + resultSampleVO.setUseYn(result.getUseYn()); + resultSampleVO.setRegUser(result.getRegUser()); if (log.isDebugEnabled()) { log.debug("sampleVO={}", sampleVO); diff --git a/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestDeleteTest.java b/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestDeleteTest.java index 3abab2f..aef6ed1 100644 --- a/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestDeleteTest.java +++ b/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestDeleteTest.java @@ -25,7 +25,6 @@ import java.util.List; import org.egovframe.rte.fdl.cmmn.exception.BaseRuntimeException; -import org.egovframe.rte.psl.dataaccess.util.EgovMap; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; @@ -70,9 +69,9 @@ void test() throws BaseRuntimeException, Exception { insertVO.setFirstIndex(0); insertVO.setSearchCondition("1"); insertVO.setSearchKeyword(insertVO.getName()); - final List insertedList = egovSampleService.selectSampleList(insertVO); - final EgovMap insertedRow = (EgovMap) insertedList.get(0); - final String insertedId = (String) insertedRow.get("id"); + final List insertedList = egovSampleService.selectSampleList(insertVO); + final SampleVO insertedRow = insertedList.get(0); + final String insertedId = insertedRow.getId(); // when mockMvc.perform( diff --git a/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestUpdateTest.java b/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestUpdateTest.java index 32d4f11..19c87ab 100644 --- a/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestUpdateTest.java +++ b/src/test/java/egovframework/example/sample/web/EgovSampleControllerTestUpdateTest.java @@ -25,7 +25,6 @@ import java.util.List; import org.egovframe.rte.fdl.cmmn.exception.BaseRuntimeException; -import org.egovframe.rte.psl.dataaccess.util.EgovMap; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; @@ -70,9 +69,9 @@ void test() throws BaseRuntimeException, Exception { insertVO.setFirstIndex(0); insertVO.setSearchCondition("1"); insertVO.setSearchKeyword(insertVO.getName()); - final List insertedList = egovSampleService.selectSampleList(insertVO); - final EgovMap insertedRow = (EgovMap) insertedList.get(0); - final String insertedId = (String) insertedRow.get("id"); + final List insertedList = egovSampleService.selectSampleList(insertVO); + final SampleVO insertedRow = insertedList.get(0); + final String insertedId = insertedRow.getId(); final String updatedName = "test 수정후 카테고리명 " + now; final String updatedDescription = "test 수정후 설명 " + now;