본문 바로가기 메뉴 바로가기

CodeAngie

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

CodeAngie

검색하기 폼
  • 전체보기 (162)
    • Study (148)
      • Algorithm (8)
      • Coding Test (50)
      • Java (5)
      • FastAPI (2)
      • Docker (8)
      • FastCampus (42)
      • Codetree (9)
      • Ect (23)
    • ML (9)
      • Transformer (5)
      • RecSys (0)
      • Ect (4)

Study (148)
[Java Project] Part 2. 게시판 서비스 만들기 - 해시태그 검색 구현

1. 게시판 해시태그 검색 구현 (이어서) (1) 컨트롤러 구현 searchHashtag 메서드는 articles 메서드와 똑같지만 뷰만 다른 것이기 때문에 복사해서 붙여 넣어주고, searchArticles 메서드를 searchArticlesViaHashtag로 수정해 주면 된다. 그 외 해시태그를 추가해 주면 된다. (2) 뷰 구현 기본 index.html에서 필요한 부분만 수정하여 사용한다. 제목을 Hashtags로 넣어주고, 해시태그들을 모아 한번에 보여주는 화면을 구성한다. Search-hashtag.th.xml 파일도 마찬가지로 기존 articles를 보여주는 것과 유사하다. 다만 해시태그들을 한번에 보여주는 것만 추가해 준다. 이 부분은 thymeleaf 문법을 따른다. 시간이 난다면 thy..

Study/FastCampus 2023. 9. 11.
[Java Project] Part 2. 게시판 서비스 만들기 - 해시태그 검색 구현

1. 게시판 해시태그 검색 구현 (1) 테스트 검색어 없이 해시태그 검색을 하면 빈페이지를 반환하는 테스트를 짠다. searchType은 이제 해시태그로 고정되어 있기 때문에 생략가능하다. 해시태그를 통한 게시글 검색을 할 때, null값이 들어가도록 구성한다. 검색어를 넣었을 때는 검색된 게시판 페이지를 반환하는 테스트를 짠다. 임의의 hashtag를 작성하고, 이전에 만들어 두었던 findByHashtag 메서드를 사용해 articleRepository를 검색한다. 해시태그가 여러 개인 경우, null 값인 경우, 중복된 경우도 있을 것이기에 unique 한 값들만 뽑아서 리스트로 보여주는 화면을 구성한다. Unique한 해시태그를 가져오는 메서드를 통해 기대한 해시태그가 나오는지 테스트를 짠다. (..

Study/FastCampus 2023. 9. 10.
[Java Project] Part 2. 게시판 서비스 만들기 - 게시판 정렬

1. 게시판 정렬 구현 게시판 페이지에서 각 칼럼(제목, 해시태그, 작성자, 작성일)을 눌렀을 때 오름차순과 내림차순으로 정렬되는 기능이다. 정렬은 Spring data에서 제공하는 Paging 인터페이스를 사용하면 적용할 수 있다. 즉 뷰에서 표현만 해주면 된다. 현재 index.html의 table 칼럼명에는 class가 각각 정의되어 있다. 그렇기에 이 class를 사용하여 xml 파일에서 selection을 할 수 있다. thymeleaf 문법을 사용해 각각 컬럼명을 클릭하였을 때, 정렬이 되도록 구현한다. th:href="@{/articles(page=${articles.number}, sort = ‘컬럼명’ + (*{sort.getOrderFor(‘컬럼명’)} != null ? (*{sort...

Study/FastCampus 2023. 9. 9.
[Java Project] Part 2. 게시판 서비스 만들기 - 게시판 페이징 구현

1. 게시판 페이징 구현 (1) 페이징 기능 구현 게시판 페이지에는 이전, 페이지 번호, 이후를 넣고, 게시글 페이지에는 이전, 이후 의 페이징 기능을 넣을 것이다. Service > PagenationService 클래스를 생성한다. 숫자 리스트를 받아 뷰에서 그려주는 방식으로 구성한다. 현재 페이지, 전체 페이지 번호(즉 마지막 번호)를 리스트로 받는다. 페이지네이션 bar 크기를 상수로 정하고 현재 bar의 길이를 return 하도록 한다. (2) 테스트 현재 페이지 번호와 총 페이지 수가 주어졌을 때, 페이징 바 리스트를 생성하도록 한다. @ParameterizedTest : 동일한 메소드를 여러 번 테스트하는 방식 유닛 테스트의 각각의 제목을 포맷에 맞춰 보여줄 수 있다. Index는 현재 번호..

Study/FastCampus 2023. 9. 8.
[Java Project] Part 2. 게시판 서비스 만들기 - 게시글 및 로그인 페이지 기능 구현

1. 게시글 및 로그인 페이지 기능 구현 (1) 게시글 페이지 뷰 구현 게시판 뷰와 같이 Header와 Footer에 mockup 데이터를 임의로 입력한다. 페이지 마다 다르게 보여져야 하는 중요 위치는 id를 명시해준다. 게시판 페이지 구현에서 했던 방법과 유사하게 xml을 활용하여 mockup 데이터를 실제 데이터로 치환할 수 있도록 한다. 게시판과 달리 게시글은 한 글에 대해서만 작성됨으로 th:each를 사용하지 않고, th:object를 사용한다. Id와 매칭하여 th:text를 통해 세부 내용을 입력해준다. Thymeleaf 문법으로 id를 찾는 방법은 sel=”#id” 와 같이 작성하면 된다. 시간 format으로 시분초를 넣어 줄 때는 HH:mm:ss를 사용하면 된다. 댓글은 게시판에서 여..

Study/FastCampus 2023. 9. 7.
[Java Project] Part 2. 게시판 서비스 만들기 - 게시판 페이지 기능 구현

1. 게시판 페이지 기능 구현 (1) 게시판 페이지 구현 (이어서) @MockBean : articleService를 테스트에서 배제하기 위해 즉 입출력만 보기 위해 연결을 끊어주는데 사용된다. Spring test에서 제공해주는 기능이다. @MockBean private ArticleService articleService; // 필드에 사용 가능하다. 관련해서 null을 입력받았을 때에 대한 테스트를 업데이트 해준다. ArticleController 게시판 페이지 @RequestParam을 이용해서 파라미터들을 불러오고, 반드시 필요한 것은 아니기에 required = false로 설정한다. @PageableDefault를 사용해서 size(게시글 10개 보여줄 것), sort(최신버전으로 정렬) 등..

Study/FastCampus 2023. 9. 6.
[코드트리 챌린지] 시즌3 첫번째 학습진단

오늘 새로운 학습진단을 시도했다. 매우 쉬운 문제부터 풀어 나갔는데 쉬운 문제를 빠르게 풀 수 있다는 것에서도 나름 성취감을 느낄 수 있었다. 9번째 문제였나 Parametric Search 문제에서 막힌 것을 확인할 수 있었다. 예전에도 이분탐색을 활용한 문제에서 많이 막혔어서 이분탐색을 좀 연습했었는데, 오늘에서야 그런 문제 유형이 Parametric Search에 해당되는 것을 알게 되었다. 이번 기회에 Parametric Search 개념에 대해 확실히 잡고 가야겠다. 최대 최소 값을 찾는 문제는 아닌지 먼저 판단하고, 주어진 조건에 맞는 값인지 아닌지 판단하는 함수를 짠다. 이후는 이분탐색과 마찬가지로 함수에 통과하는지의 여부에 따라 중간값 이후 값들을 조사할 것인지 이전 값들을 조사할 것인지 ..

Study/Codetree 2023. 9. 6.
이전 1 ··· 6 7 8 9 10 11 12 ··· 22 다음
이전 다음
«   2025/11   »
일 월 화 수 목 금 토
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
TAG
  • docker
  • 알고리즘
  • dfs
  • kruskal
  • BFS
  • java
  • 파이썬
  • 백준
  • 오블완
  • MySQL
  • 코딩테스트
  • 코드트리
  • 분리집합
  • 최소신장트리
  • 그리디
  • DP
  • boj
  • Django
  • 누적합
  • pytorch
  • lis
  • python
  • 프로그래머스
  • COLAB
  • Transformer
  • 구현
  • 트랜스포머
  • greedy
  • 티스토리챌린지
  • disjoint set
more
링크

Blog is powered by Tistory / Designed by Tistory

티스토리툴바