[Thymeleaf] th:value와 th:field를 함께 쓰면 value는 무시된다.
·
Server/Spring&Spring Boot
게시글의 수정 파트를 제작하기 위해 아래와 같이 코드를 작성하였을 때, 제목 다음과 같이 value 명령이 진행되지 않고, 계속해서 placeholder의 값만 화면에 등장하였다. th:field의 값을 제거하고 나서야, 원하는 값이 반환되기 시작했는데 th:field는 HTML 태그의 id, name, value 속성을 자동으로 매핑시켜주는 역할을 하므로 value의 값을 무시하게 되는 것입니다. 결과 제목 참조 Tutorial: Thymeleaf + Spring Preface This tutorial explains how Thymeleaf can be integrated with the Spring Framework, especially (but not only) Spring MVC. Note th..
[Thymeleaf] @태그 안에 $태그 사용하기, Expression preprocessing(전처리) "__"(밑줄 2개)
·
Server/Spring&Spring Boot
다음과 같이 포스팅된 글을 카드로 표현하였다. 해당 카드를 누르면 포스팅된 글로 이동하려는 로직을 만들기 위해 카드 내부에서 a태그로 모두를 감쌌다. ... ... 다음과 같이 작성한 후 카드를 눌러보니 메서드를 사용하여 해당 번호를 받아오는 것이 아닌, ${list.getRecommendNo()}를 그대로 주소창에 옮기고 있었다. 이를 해결하기 위한 태그가 있으니 바로 __ (Expression preprocessing, 밑줄 2개)이다. Expression preprocessing 타임리프 공식 문서를 확인하게 되면 Expression preprocessing부분에서 __에 대해 기능을 설명하고 있다. @{/recommends/${list.getRecommendNo()}} 위와 같이 @와 $의 표현식..
[Thymeleaf Error] EC2 배포 후 500 Error 발생. Local에서는 돼요.
·
Server/Error
상황 ???: Local에서는 되는데 Server에서는 안 돼요. 저 상황이 그대로 일어났다. Local에서 해당 페이지를 구동시켰을 때, 온전히 페이지가 잘 작동되는 것을 확인하고 배포하였는데 다음과 같이 500 에러가 발생하였다. 에러코드 org.thymeleaf.exceptions.TemplateInputException: An error happened during template parsing (template: "class path resource [templates/pages/recommend/recommend-read.html]") at org.thymeleaf.templateparser.markup.AbstractMarkupTemplateParser.parse(AbstractMarkupT..
[CSS ERROR] 간단 에러, its MIME type ('application/json') is not a supported stylesheet MIME type, and strict MIME checking is enabled.
·
Server/Error
CSS 관련 에러가 발생하면서 화면이 제대로 구성되지 않고 있다. MIME ASCII가 아닌 문자 인코딩을 이용해 영어가 아닌 다른 언어로 된 전자 우편을 보낼 수 있는 방식 해당 에러는 CSS 경로가 잘 못 되어 있을 때 발생활 확률이 매우 크다. git pull을 받으면서 CSS가 담겨 있는 경로가 바뀌어버린 것을 인지하지 못하고, 이전 경로를 그대로 입력하면서 발생한 에러. CSS 경로를 정정하니 에러가 해결되었다.
[Spring Boot] Spring에서 AWS S3에 파일 삭제 요청 보내기
·
Server/Spring&Spring Boot
이전글 [Spring Boot] AWS S3에 파일 업로드 IAM 사용자 생성 사용자 이름을 입력하고 다음으로 넘어갑니다. 검토 후 사용자를 생성합니다. 생성된 사용자에 들어가서 보안 자격 증명의 액세스키를 생성합니다. 체크박스에 체크 후 다음 버 chordplaylist.tistory.com Spring에서 S3로 삭제 요청 보내기 회원 정보의 이미지, 게시글에 들어가는 썸네일을 변경할 때 변경된 이미지가 다시 S3에 업로드된다. 업로드되면서 이전에 업로드되었던 이미지들이 그대로 남아있는 상태로, 처리하지 않는다면 점점 많은 수의 이미지가 누적될 것으로 예상되었다. 스프링에서 S3로 파일 업로드 요청이 가능했다면, 스프링에서 S3로 파일 삭제 요청이 가능하지 않을까? 이전글에서 작성한 S3FileUpl..
[Spring Boot] Spring Banner 변경해보기 (Spring boot run!)
·
Server/Spring&Spring Boot
프로젝트를 진행하던 도중, 이전에 우아한 테크의 10분 테코톡에서 스프링 배너를 변경했다는 게 떠올라서 나도 한 번 변경해 보기로 했다. Spring Banner를 변경하는 것은 매우. 매우! 쉽다!!! 다행이다! @SpringBootApplication이 달려있는 main Class를 찾아보자! MainController @SpringBootApplication public class ContentILikeApplication { public static void main(String[] args) { SpringApplication.run(ContentILikeApplication.class, args); } } MainController를 아래와 같이 수정하면 된다. 수정된 MainControlle..
[Junit] MultipartFile과 DTO가 있는 컨트롤러 테스트
·
Server/Spring&Spring Boot
기획상 게시물에 이미지를 업로드를 해야 하므로, S3를 구축하고 @RequestPart를 사용해서 이미지를 받아올 수 있게 Controller를 수정했다. Controller를 수정하고 난 뒤, 테스트 코드를 돌려봤더니 400 에러가 발생하고 있었다. 기존 Test code @Test @DisplayName("추천글 작성") void success_post_recommend_test() throws Exception { RecommendPostRequest request = new RecommendPostRequest("제목", "내용", "유튜브", 100L, 1L); RecommendPostResponse response = new RecommendPostResponse(1L, "제목", 100L);..
[Junit] 테스트 코드 할 때 가상의 Token 만들어주기
·
Server/Spring&Spring Boot
테스트 코드란 결국 가상의 상황을 제시해 주는 것. 사실 없어도 되고 아무런 문자열을 넣어줘도 무방하지만 이왕 JWT를 만들었는데 토큰을 넣어주는 상황을 가정하면 더욱 몰입할 수 있지 않을까. (사실 이런저런 문제 해결하다가 토큰이라도 만들어볼까 하다가 만들게 되었다.) ... class RecommendRestControllerTest { ... String jwtToken; @BeforeEach void getToken() { Key key = Keys.secretKeyFor(SignatureAlgorithm.HS256); jwtToken = Jwts.builder() .setSubject("user") .setIssuer("issuer") .setExpiration(new Date(System.cu..
코드플리
코드 플레이 리스트