728x90
728x90
20. 회원가입 - 점프 투 스프링부트(게시판 만들기)
Spring2023. 1. 1. 13:1220. 회원가입 - 점프 투 스프링부트(게시판 만들기)

해당 게시글은 점프 투 스프링부트 교재를 통한 개인 학습 용도이며 기초 세팅은 생략하였습니다. 자바 8, 스프링부트 2.7.7버전 입니다. 회원 정보를 위한 엔티티 회원 가입 시 회원 정보를 위한 엔티티에는 최소한 ID, PW, email이 필요하다고 가정하겠다. SiteUser 엔티티 사용자를 관리할 SiteUser 엔티티를 작성하자 파일경로 : /practice/src/main/java/com/example/board/user/SiteUser.java package com.example.board.user; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; im..

Spring2023. 1. 1. 13:0419. 스프링 시큐리티 - 점프 투 스프링부트(게시판 만들기)

해당 게시글은 점프 투 스프링부트 교재를 통한 개인 학습 용도이며 기초 세팅은 생략하였습니다. 자바 8, 스프링부트 2.7.7버전 입니다. 스프링 시큐리티 설치 스프링 시큐리티는 스프링 기반 애플리케이션의 인증과 권한을 담당하는 스프링의 하위 프레임워크이다. 인증(Authenticate)은 로그인을 의미한다. 권한(Authorize)은 인증된 사용자가 어떤 것을 할 수 있는지를 의미한다. 스프링 시큐리티 사용을 위해 다음과 같이 build.gradle 파일을 수정하자. (... 생략 ...) dependencies { (... 생략 ...) implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.t..

18. 게시물에 답변 개수 표시 - 점프 투 스프링부트(게시판 만들기)
Spring2023. 1. 1. 11:5318. 게시물에 답변 개수 표시 - 점프 투 스프링부트(게시판 만들기)

해당 게시글은 점프 투 스프링부트 교재를 통한 개인 학습 용도이며 기초 세팅은 생략하였습니다. 자바 8, 스프링부트 2.7.7버전 입니다. 답변 개수 표시하기 question_list.html 템플릿에 코드를 추가하자. (... 생략 ...) (... 생략 ...) th:if="${#lists.size(question.answerList) > 0}"로 답변이 있는지 조사하고 th:text="${#lists.size(question.answerList)}"로 답변 개수를 표시했다. #list.size(이터러블객체)는 이터러블 객체의 사이즈를 반환하는 타임리프의 유틸리티이다.

17. 게시물에 일련번호 추가하기 - 점프 투 스프링부트(게시판 만들기)
Spring2023. 1. 1. 11:4917. 게시물에 일련번호 추가하기 - 점프 투 스프링부트(게시판 만들기)

해당 게시글은 점프 투 스프링부트 교재를 통한 개인 학습 용도이며 기초 세팅은 생략하였습니다. 자바 8, 스프링부트 2.7.7버전 입니다. 게시물 번호 공식 만들기 만약 질문 게시물이 12개라면 0페이지에는 12번째~3번째 게시물이, 1페이지에는 2번째~1번째 게시물이 역순으로 표시되어야 한다. 질문 게시물의 번호를 역순으로 정렬하려면 다음과 같은 공식을 적용해야 한다. 번호 = 전체 게시물 개수 - (현재 페이지 * 페이지당 게시물 개수) - 나열 인덱스 항목 설명 번호 최종 표시될 게시물 번호 전체 게시물 개수 데이터베이스에 저장된 게시물 전체 개수 현재 페이지 페이징에서 현재 선택한 페이지 (만약 페이지가 1부터 시작한다면 1을 빼주어야 한다. 하지만 스프링부트의 페이징은 0부터 시작하므로 1을 뺄..

16. 페이징 - 점프 투 스프링부트(게시판 만들기)
Spring2023. 1. 1. 10:3916. 페이징 - 점프 투 스프링부트(게시판 만들기)

해당 게시글은 점프 투 스프링부트 교재를 통한 개인 학습 용도이며 기초 세팅은 생략하였습니다. 자바 8, 스프링부트 2.7.7버전 입니다. 테스트 데이터 만들기 페이징을 구현하기 전에 페이징을 테스트할 수 있을 정도로 충분한 데이터를 생성하자. 대량의 테스트 데이터를 만드는 가장 간단한 방법은 스프링부트의 테스트 프레임워크를 이용하는 것이다. PracticeApplicationsTests를 수정하자. package com.example.board; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.Sp..

15. 네비게이션 바 - 점프 투 스프링부트(게시판 만들기)
Spring2023. 1. 1. 10:1615. 네비게이션 바 - 점프 투 스프링부트(게시판 만들기)

해당 게시글은 점프 투 스프링부트 교재를 통한 개인 학습 용도이며 기초 세팅은 생략하였습니다. 자바 8, 스프링부트 2.7.7버전 입니다. 내비게이션 바 메인페이지로 돌아갈 수 있는 기능을 구현한 내비게이션 바를 만들어보자. 내비게이션바는 모든 페이지에서 공통적으로 보여야 하므로 layout.html 템플릿에 추가해야 한다. 파일경로 : /practice/src/main/resources/templates/navbar.html 게시판 연습 로그인 항상 홈 페이지로 이동해 주는 로고를 가장 왼쪽에 배치했고, 오른쪽에는 '로그인' 링크를 추가했다 (추후 구현) layout.html을 수정하자. (... 생략 ...) navbar.html을 통해 내비게이션 바를 분리 한 뒤 th:replace를 사용하여 포함..

Spring2023. 1. 1. 01:0414. 공통 템플릿 - 점프 투 스프링부트(게시판 만들기)

해당 게시글은 점프 투 스프링부트 교재를 통한 개인 학습 용도이며 기초 세팅은 생략하였습니다. 자바 8, 스프링부트 2.7.7버전 입니다. 오류 메시지 공통 템플릿 오류 메시지를 표시하는 공통 템플릿을 작성하자 파일 경로 : /practice/src/main/resources/templates/form_errors.html 출력할 오류 메세지 부분에 th:fragment="formErrorsFragment" 속성을 추가했다 필요한 템플릿에 적용하기 question_form.html 질문등록 제목 내용 타임리프의 th:replace 속성을 사용하면 공통 템플릿을 템플릿 내에 삽입할수 있다. div 엘리먼트를 form_errors.html 파일의 th:fragment 속성명이 formErrorsFragmen..

13. 질문 등록과 폼 - 점프 투 스프링부트(게시판 만들기)
Spring2022. 12. 31. 22:2613. 질문 등록과 폼 - 점프 투 스프링부트(게시판 만들기)

해당 게시글은 점프 투 스프링부트 교재를 통한 개인 학습 용도이며 기초 세팅은 생략하였습니다 자바 8, 스프링부트 2.7.7버전 입니다. 질문 등록 질문 등록을 위한 질문 등록 버튼을 question_list 템플릿에 생성하자 (... 생략 ...) 질문 등록하기 링크 엘리먼트(..)에 부트스트랩의 btn btn-primary 클래스를 적용시켜 버튼화 했다 "질문 등록하기" 버튼을 누르면 /question/create URL이 호출될 것이다. URL 매핑 컨트롤러에 /question/create에 해당되는 URL 매핑을 추가하자 (... 생략 ...) public class QuestionController { (... 생략 ...) @GetMapping("/create") public String qu..

728x90
728x90
image