[StringBoot] 게시판 검색 (27)
·
Follow Work/SpringbootBoard
참고 링크 : https://wikidocs.net/book/7601 오라클DB와 intelliJ로 작업하였습니다 검색 기능 SBB는 질문과 답변에 대한 데이터가 계속 쌓여가는 게시판이므로 검색기능은 필수라고 할 수 있다. 검색의 대상은 질문의 제목, 질문의 내용, 질문 작성자, 답변의 내용, 답변 작성자 정도로 하면 적당할 것이다. 즉, "스프링"이라고 검색을 하면 "스프링" 이라는 문자열이 제목, 내용, 질문 작성자, 답변, 답변 작성자에 존재하는지 찾아보고 그 결과를 화면에 보여주어야 한다. 이런 조건으로 검색하려면 다음과 같은 SQL 쿼리가 실행되어야 한다. SELECT DISTINCT Q.ID, Q.AUTHOR_ID, Q.CONTENT, Q.CREATE_DATE, Q.MODIFY_DATE, Q...
[StringBoot] 마크다운 (26)
·
Follow Work/SpringbootBoard
참고 링크 : https://wikidocs.net/book/7601 오라클DB와 intelliJ로 작업하였습니다 질문이나 답변을 작성할 때 일반적인 텍스트 외에 글자를 진하게 표시하거나 링크를 추가하고 싶을 수도 있다. "마크다운"이라는 글쓰기 도구를 이용하면 이런 것들을 쉽고 간단하게 표현할 수 있다. 마크다운 문법 리스트 목록을 표시하기 위해 다음처럼 작성한다. * 자바 * 스프링부트 * 알고리즘 위 문자열을 마크다운 해석기가 HTML로 변환하면 실제 화면에서는 다음과 같이 보인다. 변환결과 자바 스프링부트 알고리즘 마크다운 해석기는 조금 후에 설치하고 실습할 것이니 우선은 마크다운 문법을 익혀보자. 순서가 있는 목록을 표시하려면 다음처럼 작성한다. 1. 하나 1. 둘 1. 셋 변환결과 하나 둘 셋..
[StringBoot] 앵커 (25)
·
Follow Work/SpringbootBoard
참고 링크 : https://wikidocs.net/book/7601 오라클DB와 intelliJ로 작업하였습니다 이번에는 더 많은 기능을 추가하기 전에 발견된 몇 가지 문제점을 해결하려고 한다. 발견된 문제점은 답글을 작성하거나 수정한 후에 항상 페이지 상단으로 스크롤이 이동되기 때문에 본인이 작성한 답변을 확인하려면 다시 스크롤을 내려서 확인해야 한다는 점이다. 이 문제는 답변을 추천한 경우에도 동일하게 발생한다. Ajax와 같은 비동기 통신 기술을 사용하여 이 문제를 해결할 수도 있지만 여기서는 보다 쉬운 방법으로 이 문제를 해결해 보자. HTML에는 URL 호출시 원하는 위치로 이동시켜 주는 앵커(anchor) 태그가 있다. 예를 들어 HTML 중간에 라는 앵커 태그가 있다면 이 HTML을 호출하..
[StringBoot] 추천 (24)
·
Follow Work/SpringbootBoard
참고 링크 : https://wikidocs.net/book/7601 오라클DB와 intelliJ로 작업하였습니다 이번에는 질문과 답변에 "추천(좋아요)" 기능을 구현해 보자. 엔티티 변경 질문, 답변의 추천은 추천한 사람(SiteUser 객체)을 질문, 답변 엔티티에 추가해야 한다. Question Question과 Answer 엔티티에 추천인(voter) 속성을 추가해 보자. 하나의 질문에 여러사람이 추천할 수 있고 한 사람이 여러 개의 질문을 추천할 수 있다. 이렇듯 질문과 추천인은 부모와 자식의 관계가 아니고 대등한 관계이기 때문에 @ManyToMany를 사용해야 한다. package com.gosari.repick_project.question; import com.gosari.repick_pr..
[StringBoot] 수정과 삭제 (23)
·
Follow Work/SpringbootBoard
참고 링크 : https://wikidocs.net/book/7601 오라클DB와 intelliJ로 작업하였습니다 이번장에서는 작성한 질문과 답변을 수정하고 삭제할 수 있는 기능을 추가해 보자. 1.수정일시 2.질문수정 3.질문삭제 4.답변수정 5.답변삭제 6.수정일시표시하기 수정 일시 먼저 질문이나 답변이 언제 수정되었는지 확인할 수 있도록 Question과 Answer 엔티티에 수정 일시를 의미하는 modifyDate 속성을 추가하자. package com.gosari.repick_project.question; import com.gosari.repick_project.answer.Answer; import com.gosari.repick_project.user.SiteUser; import lom..
[SpringBoot] 스프링 빈(Spring Bean) 개념정리 ✔
·
STUDY/SpringBoot
원본링크 : https://melonicedlatte.com/2021/07/11/232800.html 스프링 빈(Spring Bean)이란? 개념 정리 - Easy is Perfect melonicedlatte.com 스프링 빈(Spring Bean)이란? Spring IoC 컨테이너가 관리하는 자바 객체를 빈(Bean)이라고 부릅니다. 이전 포스팅에서 제어의 역전 (IOC, Inversion Of Control)에 대하여 간략하게 알아보았는데요. IOC의 특징은 아래와 같습니다. 일반적으로 처음에 배우는 자바 프로그램에서는 각 객체들이 프로그램의 흐름을 결정하고 각 객체를 직접 생성하고 조작하는 작업(객체를 직접 생성하여 메소드 호출)을 했습니다. 즉, 모든 작업을 사용자가 제어하는 구조였습니다. 예를..
[SpringBoot] 스프링(Spring), 스프링부트(SpringBoot) 차이점 정리✔
·
STUDY/SpringBoot
원본링크 : 스프링(Spring), 스프링 부트(Spring Boot)란? 개념 정리 - Easy is Perfect (melonicedlatte.com) 스프링(Spring), 스프링 부트(Spring Boot)란? 개념 정리 - Easy is Perfect melonicedlatte.com 스프링의 개념 Spring은 무엇일까요? 스프링은 자바 기반의 웹 어플리케이션을 만들 수 있는 프레임워크입니다. spring.io 사이트에서 확인하면 스프링 프레임워크는 현대 자바 기반의 엔터프라이즈 어플리케이션을 위한 프로그래밍 및 Configuration Model 제공한다라고 언급하고 있습니다. Python을 이용한 Django, Ruby를 이용한 Ruby on Rails, Javascript를 이용한 Nod..
[StringBoot] 글쓴이 표시 (22)
·
Follow Work/SpringbootBoard
참고 링크 : https://wikidocs.net/book/7601 오라클DB와 intelliJ로 작업하였습니다 앞서 Question 엔티티와 Answer 엔티티에 auther 속성을 추가했다. 게시판의 게시물에는 "글쓴이"를 표시하는 것이 일반적이다. 질문 목록, 질문 상세 화면에 auther 속성을 이용하여 글쓴이를 표시해 보자. 질문 목록 먼저 질문 목록 템플릿에 글쓴이를 표시해 보자. 다음과 같이 테이블 헤더에 글쓴이 항목을 추가하자. question_list.html 번호 제목 글쓴이 작성일시 이전 다음 질문 등록하기 번호 제목 글쓴이 작성일시 글쓴이 항목을 추가했다. 그리고 th 엘리먼트를 가운데 정렬하도록 tr 태그에 text-center 클래스를 추가하고 제목의 너비가 전체에서 50%를 ..