Spring
-
[Spring Boot] 지역별 카페 추천 프로젝트 (3)Spring/Spring Boot Project 2022. 9. 6. 00:55
여행할 때 방문하면 좋을 카페를 추천하는 웹 프로젝트 📌 지역명을 클릭하면 해당 지역의 추천 카페 리스트가 뜨도록 처리하기 📍 필요한 정보 및 계획 카페 이름, 카페 추천 키워드, 카페 위치, 카페 사이트 📍 카페 추천 키워드 우선 카페 키워드를 만들 것인데 이는 enum을 사용할 것이다. Keyword 클래스 package yeonjy.cafe.information; public enum Keyword { Wide("넓어요"), View("풍경이_좋아요"), SeaView("바다가_보여요"), Traffic("교통이_좋아요"), Bread("빵이_맛있어요"), Coffee("커피가_맛있어요"), ; private String krKeyword; Keyword(String krKeyword) { this..
-
코드로 배우는 스프링부트 웹 프로젝트 Day 11Spring/코드로 배우는 스프링부트 웹 프로젝트 2022. 8. 26. 17:57
/* Annotation들은 스프링부트 프로젝트의 Annotation 정리 페이지에 따로 정리해두었습니다. */ GuestbookServiceImpl에서 목록을 조회할 때 사용하는 getList()는 기존의 코드를 조금 수정해서 작성 GuestbookServiceImpl 클래스 수정 @Override public PageResultDTO getList(PageRequestDTO requestDTO) { Pageable pageable = requestDTO.getPageable(Sort.by("gno").descending()); BooleanBuilder booleanBuilder = getSearch(requestDTO); // 검색 조건 처리 Page result = repository.findAl..
-
[Querydsl] BooleanBuilder과 BooleanExpressionSpring 2022. 8. 26. 05:17
BooleanBuilder 쿼리를 조건별로 쌓아서 동적 쿼리로 쓸 수 있음 where문에 들어가는 조건들을 넣어주는 컨테이너 and나 or 사용 가능 BooleanExpression 메서드가 늘어나지만 메서드 명을 통해 어떤 기능인지 확인이 가능다는 것 등 가독성이 증가하며, 메서드를 이용하므로 재사용성이 증가 Predicate의 구현체 null일 때 무시될 수 있고, and 또는 or절을 통해 조합 가능 BooleanExpression ⇨ qGuestbook.title.contains(keyword) 같이 표현식의 결과로 반환되는 값 BooleanBuilder ⇨ 이러한 표현식을 모아서 사용할 수 있도록 도와주는 도구 => BoolenaBuilder는 and() 혹은 or()의 파라미터로 Boolean..
-
코드로 배우는 스프링부트 웹 프로젝트 Day 10Spring/코드로 배우는 스프링부트 웹 프로젝트 2022. 8. 25. 21:28
/* Annotation들은 스프링부트 프로젝트의 Annotation 정리 페이지에 따로 정리해두었습니다. */ [방명록의 수정/삭제 처리] 계획 Guestbook의 수정은 Post 방식으로 처리하고 다시 수정된 결과를 확인할 수 있는 조회 화면으로 이동 삭제는 Post방식으로 처리하고 목록 화면으로 이동 목록을 이동하는 작업은 Get 방식으로 처리. 기존에 사용하던 페이지 번호 등을 유지해서 이동! 수정과 삭제는 모두 '수정 및 삭제가 가능한 페이지'로 이동한 상태에서 수정과 삭제 중 선택을 해서 작업이 이루어짐 이를 구현하기 위해 GuestbookController에서는 조회와 비슷하게 Get방식으로 진입하는 'gusetbook/modify'를 기존의 read()에 어노테이션의 값을 변경해서 처리 @..
-
코드로 배우는 스프링부트 웹 프로젝트 Day 9Spring/코드로 배우는 스프링부트 웹 프로젝트 2022. 8. 24. 16:39
/* Annotation들은 스프링부트 프로젝트의 Annotation 정리 페이지에 따로 정리해두었습니다. */ [등록 페이지의 링크와 조회 페이지 링크 처리] 지금까지는 글을 등록하기 위해 직접 /guestbook/register 링크에 들어가서 등록해야했다. 이제 새로운 글을 등록할 수 있는 버튼을 만들 것이다. 그리고 목록의 각 글의 번호나 제목을 클릭하면 조회 페이지로 이동하도록 처리할 것이다. list.html GuestBook List Page REGISTER 이제 조회 페이지로 이동하고 다시 목록 페이지로 이동하도록 만들 것이다. list.html [[${dto.gno}]] [[${dto.title}]] [[${dto.writer}]] [[${#temporals.format(dto.regDa..
-
코드로 배우는 스프링부트 웹 프로젝트 Day 8Spring/코드로 배우는 스프링부트 웹 프로젝트 2022. 8. 21. 17:53
/* Annotation들은 스프링부트 프로젝트의 Annotation 정리 페이지에 따로 정리해두었습니다. */ [페이지 번호 링크 처리] 앞서 작성한 코드에서는 페이지 번호의 링크를 href="#"로 처리해두었다. 이를 실제 링크로 수정해야 한다. list.html 수정 Previous [[${page}]] Next [등록 페이지와 등록 처리] GuestbookController 클래스에 추가 @GetMapping("/register") public void register() { log.info("register get..."); } @PostMapping("/register") public String registerPost(GuestbookDTO dto, RedirectAttributes redi..
-
코드로 배우는 스프링부트 웹 프로젝트 Day 7Spring/코드로 배우는 스프링부트 웹 프로젝트 2022. 8. 20. 12:41
/* Annotation들은 스프링부트 프로젝트의 Annotation 정리 페이지에 따로 정리해두었습니다. */ GuestbookServiceTests @Test public void testList() { PageRequestDTO pageRequestDTO = PageRequestDTO.builder().page(1).size(10).build(); PageResultDTO resultDTO = service.getList(pageRequestDTO); System.out.println("PREV: " + resultDTO.isPrev()); System.out.println("NEXT: " + resultDTO.isNext()); System.out.println("TOTAL: " + resultD..
-
코드로 배우는 스프링부트 웹 프로젝트 Day 6Spring/코드로 배우는 스프링부트 웹 프로젝트 2022. 8. 18. 16:44
/* Annotation들은 스프링부트 프로젝트의 Annotation 정리 페이지에 따로 정리해두었습니다. */ [서비스계층의 테스트] Day 5에서 만든 서비스계층을 테스트 작업을 통해 검사하고 이후에 컨트롤러와 연동시키는 것이 바람직함 service/GuestbookServiceTests package org.zerock.guestbook.service; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.zerock.guestbook.dto.Guest..