어찌저찌 페이지네이션만 빼고 검색 페이지에서 어느정도 구현했다... 삼촌의 도움이 가장 컸고 그걸 토대로 이것저것 수정해 나갔다. 우선 페이지네이션 빼고 프론트와 백의 코드다. // CourseListController package ssac.LMS.controller; import jakarta.servlet.http.HttpServletResponse; import lombok.Data; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.s..
이번에 계속 검색페이지 때문에 며칠을 이러고 있는지 모르겠다... 이제 막 배우기 시작한 나로써 그리고 제대로 공부한 것이 아니라 급하게 프로젝트를 하면서 배워야하기 때문에 더 어려운 것 같다. 솔직히 배운다기 보다 해결하기 위해 챗 GPT 사용하면서 그냥 익숙해지는 정도인 것 같은데 그정도만 해도 우선은 다행인 것 같다. 나중에 웹 개발 관련 수업을 하나 더 들어야겠다. 그 때를 생각하면 지금 익숙하게 하고 어느정도 눈에 익히는 것도 좋은 것 같다. 내가 너무 부족한 것이 느껴진다... 삼촌한테 많이 물어보며 어느정도 해결을 하긴 했는데... 삼촌 말대로 "일단 하고는 있는데 자기 자신이 상요하는 도구에 대해 이해가 많이 없다. 그럼 제일 쉽게 할 수 있는게 추측하는 것이 아니라 로그 찍어서 일일이 확..
1. 검색페이지에서 데이터베이스에 해당하는 값이 없으면 값이 없다는 것을 보여줘야한다. 2. 검색페이지에서 빈 값 검색을 하면 다시 검색 페이지로 오는 것 3. 메인페이지에서 검색창 부분 수정 & 키워드 검색 페이지로 넘기는 것 4. nav bar에 검색 탭을 만드는 것 5. 정말 시간되면 페이징까지 하는 것 (페이지 나누기? 무한 스크롤?) 여기서 1, 2, 4번을 완료하여 1. 메인페이지에서 검색창 부분 수정 & 키워드 검색 페이지로 넘기는 것 2. 정말 시간되면 페이징까지 하는 것 (페이지 나누기? 무한 스크롤?) 이렇게 남았는데...코드가 너무 지저분하기도 하고 다시 새로 만들까 생각중이다... 결국!!!! 거의 다시 만들고 있다.. 최대한 원래 있던 것을 그대로 사용하고 전체 강의를 가져오는 A..
검색 쪽에서는 이제 디테일한 것만 남은 것 같다!! 그래도 내가 검색 파트는 처음부터 끝까지 해본다는 게 혹은 해보려고 한다는게 좋은 것 같다. 1. 검색페이지에서 데이터베이스에 해당하는 값이 없으면 값이 없다는 것을 보여줘야한다. 2. 검색페이지에서 빈 값 검색을 하면 다시 검색 페이지로 오는 것 3. 메인페이지에서 검색창 부분 수정 & 키워드 검색 페이지로 넘기는 것 4. nav bar에 검색 탭을 만드는 것 5. 정말 시간되면 페이징까지 하는 것 (페이지 나누기? 무한 스크롤?) 우선 4번의 nav bar에 검색 탭 이름을 강의라고 하고 클릭 시 검색 페이지로 넘어가게 했다. 또한, 리로드까지 구현했다. 생각보다 나는 시간이 좀 걸렸다... 리로드하는 걸 해보니 2번의 빈 값을 검색했을 때 리로드 ..

우선 저번에 검색 API를 뚫고 검색 페이지인 프론트와 연동을 하려다 문제가 생겨서 1. 우선 백에서 3가지 분류를 이용하여 쿼리를 작성한다. 2. 가져올 때는 CourseSearchInfo에 맞게 가져와야한다. -> 그래야 카드 리스트가 보일 것이다. 3. 프론트에서 조건문을 사용하여 검색을 했을 떄 보여지게 하면 된다. 4. 그 후 디테일한 작업을 하자!! 이 순서대로 작업을 하려고 했다. 우선 1번은 내가 사용했던 쿼리를 그대로 이용하면 될 것 같다. package ssac.LMS.repository; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Qu..
검색 API를 뚫어서 프론트에 검색창도 만들고 검색 페이지도 만들어서 프론트와 연동을 하려고 했다. 검색 페이지의 코드는 import React, { ReactNode, useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import { Box, Container, Flex, SimpleGrid, Input, Button, IconButton, useColorModeValue, background } from "@chakra-ui/react"; import { SearchIcon } from "@chakra-ui/icons" import axios from "axios"; import ClassCard fr..
검색어 기반 API 1. SearchController @GetMapping("/search") public List getSearchCourse(@RequestParam("keyword") String keyword) { List searchCourse = courseListService.getSearchCourse(keyword); // 각 강의 정보를 CourseSearchResponseDto로 변환하여 리스트에 추가 List responseDtoList = searchCourse.stream() .map(course -> new CourseSearchResponseDto(course.getTitle(), course.getTags(), course.getUser().getUserName())) ...
오늘 할 일 아키텍처 구현 프론트엔드, 백엔드 구현 특이사항 프로젝트 산출물 링크 공유할 것 오늘도 역시 회의가 주를 이뤘다. ERD 설계를 했는데 어제 공부하고 와서 어느정도 이해는 되긴 했다. 그러나 manyToOne에 관한 이슈가 있어서 하루정도 미루기로 했다. 공부 진짜 빡세게 해야할 것 같다. 잡코디분이랑 상담도 했는데,백엔드이든 SA이든 좀 막막한 느낌이 든다. 지금까지 프로젝트한 것 중에 두 개 다 포폴에 쓸만한 것이 없어서... 너무 급하게 생각하는 거인가 싶기도 하고 지금까지 열심히 한 것 같은데 아무것도 해놓은게 없어서 허무하고 내 자신에게 화도 나는 것 같고 그래도 어쩌겠는가...다시 열심히 하는 수밖에... 회의 내용 배포 관련하여 도커를 사용해서 하자 aws 미디어 서비스 S3에 ..