8000 GitHub - zjdtm/Java_Tech_Blog: 자바와 스프링 관련된 기술 내용들을 정리하는 기술 블로그
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

zjdtm/Java_Tech_Blog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

테코몽

TECOMOG(Tech Communication Blog)

자바, 스프링을 공부했던 것들을 기록하기 위해서 만든 블로그 기존의 다른 블로그들도 있지만 직접 내가 만들면서 다시 공부하자는 마음으로 프로젝트를 계획하게 되었습니다. 프로젝트는 [자바 웹 개발 워크북]에 있는 내용들을 참고하였습니다.

ERD

Board

📁TECOMOG 디렉토리 구조

.
|-- main
|   |               `-- generated
|   |               `-- java
|   |               `-- org
|   |               `-- zerock
|   |               `-- b01
|   |               |-- B01Application.java
|   |               |-- config
|   |               |   |-- CustomServletConfig.java
|   |               |   |-- RootConfig.java
|   |               |   `-- SwaggerConfig.java
|   |               |-- controller
|   |               |   |-- BoardController.java
|   |               |   |-- SampleController.java
|   |               |   `-- SampleJSONController.java
|   |               |-- domain
|   |               |   |-- BaseEntity.java
|   |               |   `-- Board.java
|   |               |-- dto
|   |               |   |-- BoardDTO.java
|   |               |   |-- PageRequestDTO.java
|   |               |   `-- PageResponseDTO.java
|   |               |-- repository
|   |               |   |-- BoardRepository.java
|   |               |   `-- search
|   |               |       |-- BoardSearch.java
|   |               |       `-- BoardSearchImpl.java
|   |               `-- service
|   |                   |-- BoardService.java
|   |                   `-- BoardServiceImpl.java
|   `-- resources
|       |-- application.properties
|       |-- static
|       |   |-- img
|       |   |   |-- home-bg.jpg
|       |   |   |-- modalcat.png
|       |   |   |-- post-bg.jpg
|       |   |   `-- teco.png
|       |   `-- js
|       |       `-- scripts.js
|       `-- templates
|           |-- board
|           |   |-- list.html
|           |   |-- modify.html
|           |   |-- read.html
|           |   `-- register.html
|           `-- layout
|               `-- basic.html
|-- test
|   |-- generated_tests
|   `-- java
|       `-- org
|           `-- zerock
|               `-- b01
|                   |-- B01ApplicationTests.java
|                   |-- DataSourceTests.java
|                   |-- repository
|                   |   `-- BoardRepositoryTests.java
|                   `-- service
|                       `-- BoardServiceTests.java

📝 Tech Stack

🔩 Tool

💣 ERRORS

** Test 에러 **

게시물을 등록한 후 전체 게시물을 화면에 출력할 때 맞는 데이터가 들어오는지 확인하기 위해서 테스트 코드를 작성해 보다가 에러가 발생하였다. image image InvalidDataAccessApiUsageException 예외가 발생하였는데 검색 한 결과를 토대로 예외를 해석하자면

Board 테이블을 등록하기 위해서 Member 테이블도 같이 등록해야 하는데 Member id 값을 알 수 가 없기 때문에 예외가 발생한거 같다.

해결 방안으로는 cascade (영속성 전이)를 사용해서 Board 엔티티를 영속화 시키기 전 Member 엔티티를 먼저 영속화 시켜준다. image image

Quill editor 에러들

  • html 태그들의 그대로 적용되던 문제점

검색해본 결과 dangerouslySetInnerHTML 이라는 속성을 이용하면 해결이 가능 하지만 Thymeleaf에 th:utext 라는 속성을 사용해도 같은 효과를 볼 수 있다고 한다.

출처 : Thymeleaf 홈페이지(https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html#what-is-thymeleaf)
  • Quill 이미지 파일 길이 수정

quill editor에 이미지 한 개를 넣으면 이런식으로 긴 문자열인 상태로 변환되기 때문에 데이터베이스에 길이가 초과되어 에러가 발생한다.

image image

content에 타입을 text로 바꾸어도 여러 개의 이미지를 넣으면 에러가 발생한다.

🔍 https://myeongdev.tistory.com/49 블로그를 참고하였다.

quill-editor에 작성한 이미지는 ajax를 사용해 서버에 미리 저장 하고 저장된 이미지를 불러오는 것이다. image image image

게시물을 등록하는것은 해결 했지만 수정시에는 서버에 저장된 이미지도 같이 삭제 해야 하는데 이건 좀 더 공부 해보고 해결해보겠습니다.


  1. 프로젝트 설치 및 실행 방법

  2. 프로젝트 사용 방법

About

자바와 스프링 관련된 기술 내용들을 정리하는 기술 블로그

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0