Spring15 2022-09-30 스프링(부트스트랩) 스태틱 디렉터리 스타일시트 파일은 스프링부트의 스태틱 디렉터리에 저장해야 한다. 그리고 부트스트랩은 디자이너의 도움 없이 개발자 혼자서 웹 페이지를 만들 수 있게 도와주는 프레임워크이다. 부트스트랩은 트위터를 개발하면서 만들어졌다고 하며 현재도 지속적으로 관리되는 오픈소스 프로젝트라고 한다. https://getbootstrap.com/docs/5.1/getting-started/download/ Download Download Bootstrap to get the compiled CSS and JavaScript, source code, or include it with your favorite package managers like npm, RubyGems, and more. getbootstrap... 2022. 9. 30. 2022-09-29 스프링 (답변 등록,저장,표시) 우선 위의 코드를 통해서 질문 상세 페이지에 답변을 등록할 수 있는 인풋창을 만든다. 이렇게 해서 디테일 창에 들어가게 되면 위의 사진과 같은 내용을 확인할 수 있다, 원래 이전에 없던 답변 등록할 수 있는 칸을 따로 만들었다고 생각하자. 그리고 이렇게 했다면 이제 answer 즉 답변에 대한 것들을 만들어야하는 상황이다. package com.mysite.sbb.answer.controller; import com.mysite.sbb.answer.Service.AnswerService; import com.mysite.sbb.question.Service.QuestionService; import com.mysite.sbb.question.domain.Question; import lombok.Requ.. 2022. 9. 29. 2022-09-28 스프링 (질문 상세) 글 번호 제목 내용 작성일시 위의 코드는 질문 목록의 제목을 클릭했을 때 상세화면이 호출되도록 제목에 링크를 추가하는 것이다. a태그를 사용한게 보이는데 위와 같이 하게 되면 상세페이지 처럼 누를 수 있게 작동을 한다. 타임리프에서 th:href처럼 URL 주소를 나타낼때에는 반드시 @{문자와} 문자 사이에 입력해야한다고 한다. 그리고 URL주소는 문자열 /question/detail/과 ${question.id} 값이 조합되어서 /question/detail/${question/id}로 만들어졌고 이때 좌우에 | 문자 없이 사용하면 오류 발생한다고 한다. 타임리프는 문자열을 연결 할 때 | 문자를 사용한다고 한다. 어쨋든 위와 같이 코드를 한 후에 들어가게 로컬서버에 들어가게 되면 제목이 위와 같이 a.. 2022. 9. 28. 2022-09-28 스프링 (서비스) 서비스를 사용하는 이유는 여러개의 리포지터리를 사용해서 데이터를 조회하고 가공하고 리턴한다고 했을 때 여러개를 만들고 만약 이름을 변경한다고 했을 때에는 하나하나 다 변경을 해야한다, 여러개를 만든다는 것은 애초에 기능을 중복으로 구현한다는 것이다. 그렇기 때문에 오히려 더 비효율적으로 일을 해야하게 될 수 있기 때문이다. 그리고 보안상의 문제인데 컨트롤러는 리포지터리 없이 서비스를 통해서만 데이터베이스에 접근하도록 구현하는 것이 보안상 안전하다는 이유인데 이렇게 하면 해커가 해킹을 통해서 컨트롤러를 제어할 수 있게 되어도 리포지터리에는 직접 접근할 수 없어져서이다. 그리고 마지막으로는 엔티티 객체와 DTO 객체의 변환되는 부분 때문인데 예를 들어 지금 수업 때 하는 Question 과 Answer 클래.. 2022. 9. 28. 2022-09-27 스프링(질문 목록 및 템플릿 / Root URL) Hello Template!!! 위 처럼 resources 에 templates 에 다가 html 파일을 하나 만들었다. 리액트를 사용하지 않고 스프링부트로 간단하게 html을 진행하려고 한다. 그리고 build.gradle에 위의 내용을 추가 해서 타임리프 라는 것을 설치를 한다. 그리고 위의 HTML 내용 처럼 h2 태그 안에 Hello Template 라는 것을 작성하고 로컬 서버를 실행하고 해당 로컬 서버에 들어가면 된다. 근데 그 전에 이런 해당 컨트롤러를 만들어야하며 로컬서버는 당연히 localhost:포트번호/question/list 로 들어가면 된다. package com.mysite.sbb.question; import org.springframework.stereotype.Control.. 2022. 9. 27. 2022-09-26 스프링 (리포지터리) 데이터 조회,수정,삭제 및 답변 생성 및 저장, 조회 @Test void getQuestionsBySubjectsAndContent() { List question = this.questionRepository.findBySubjectAndContent( "sbb가 무엇인가요?", "sbb에 대해서 알고 싶습니다."); assertEquals(4,question.size()); } @Test void getQuestionsBySubjectLike() { List question = this.questionRepository.findBySubjectLike("%sbb%"); assertEquals(4,question.size()); } @Test void updateQuestion() { Optional oq = questionRepository.findBy.. 2022. 9. 26. 이전 1 2 3 다음