GuestBook #4 검색 디테일부터 마무리까지 검색구현 -대소문자 문제 -좌우 공백 문제 (trim) -중간 공백이 있을 때 어떻게 검색 처리? -DB에 저장할 때 대소문자를 구분해서 넣을 건지 생각해야 함 (JPA는 대소문자 구분 안 해줌) 그래서 이 부분은 JPA은 사용하지 않고 메소드를 만듦 ⇒list.html파일을 수정해서 검색폼을 추가하고 이벤트 처리 수행 제목 내용 작성자 제목+내용 검색 초기화 ⇒list.html 상세 보기 수정 [[${dto.title}]] ⇒read.html 목록 보기 수정 목록 ⇒좌우 공백 제거 @Override public PageResponseDTO getList(PageRequestDTO requestDTO) { String keyword=requestDTO.getKeyword(); if(keyword !=nu.. 2022. 10. 29. GuestBook #3 페이징 처리가 되어있는 목록보기부터 검색까지 3)상세 보기 ⇒페이징 처리가 되어있는 경우 상세보기로 이동할 때는 기본키의 값과 현재 페이지 번호를 같이 넘겨 주는 것이 좋다. 상세보기를 하다가 목록보기를 눌렀을 때 첫번째 페이지로 이동하는 것 보다는 상세보기를 수행했던 페이지로 이동하는 것이 UI 측면에서 옳은 방향 ⇒list.html파일에 제목부분을 출력하는 곳에 상세보기 링크 추가 [[${dto.title}]] ⇒Service 인터페이스에 상세보기 처리를 위한 메서드 선언 public GuestBookDTO read(Long gno); ⇒ServiceImpl 클래스에 상세보기 처리 메서드를 구현 //상세페이지 @Override public GuestBookDTO read(Long gno) { Optional guestBook = guestBoo.. 2022. 10. 29. GuestBook #2 Querydsl 사용을 위한 설정부터 까지 처리 메서드선언까지 6.Querydsl 사용을 위한 설정 1)build.gradle 파일 수정 //QueryDSL -------맨위작성----------------------------------------- buildscript { ext { queryDslVersion = "5.0.0" } } ----------------------------------------------- id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" -------------------------------------------------------------------- implementation "com.querydsl:querydsl-jpa:${queryDslVersion}" impleme.. 2022. 10. 29. GuestBook #1 개발환경 세팅부터 CURD테스트까지 **guestbook ⇒하나의 테이블을 생성하고 테이블에 대한 CRUD 작업을 수행하는 애플리케이션으로 출력은 thymeleaf를 이용하고 데이터베이스 연동은 JPA(Hibernate로 구현)를 사용 전체 디렉토리 1.개발환경 1)Language: Java11 2)Framework: Spring Boot, Bootstrap 3)Database: MySQL 8.0 4)IDE : Intellij 5)WAS:Tomcat 2.프로젝트 생성 및 기본 설정 1)기본 의존성 Spring Boot Dev Tools Lombok Spring Web Thymeleaf Spring Data JPA MariaDB Driver @Query annotation을 사용했을 때의 단점을 보안하고자 Querydsl을 사용 독려 @Ma.. 2022. 10. 29. 이전 1 다음