본문 바로가기

Java Spring/MVC17

@RequestParam 애노테이션 @RequestParam은 핸들러 method의 parameter 종류 중의 하나로, client 쪽에서 전송하는 요청 데이터를 Query Parameter 또는 Query String form-data x-www-form-urlencoded 형식으로 전송할 수 있게 해주는 annotation 입니다. 2022. 9. 12.
@Nullable 사용 시 warning 발생 없애기 문제 프로젝트를 run 할 때 어느 순간부터 아래와 같은 warning이 발생해서 원인이 무엇인지 알아보았습니다. Warning:java: unknown enum constant javax.annotation.meta.When.MAYBE reason: class file for javax.annotation.meta.When not found 원인 @Nullable 애노테이션을 사용하면서 생기는 경고였는데, javax.annotation.meta.When 이라는 enum이 내 프로젝트 runtime에서 발견되지 않아서 나오는 경고였습니다. org.springframework.lang.Nullable이 해당 enum을 참조하는데 자동으로 그 enum이 생기지 않아서라고 하더라구요. 해결 build.grad.. 2022. 9. 9.
Model interface 안녕하세요 이번에는 Spring framework에서 제공하는 Model이라는 interface에 대해서 알아보려고 합니다.☺️ Model Interface의 역할 Spring MVC에서 MVC는 Model, View, Controller의 약자입니다. 이 중에 Model은 애플리케이션에서 사용되는 데이터를 담고 있는 역할을 합니다. Model interface는 그런 model의 역할과 맞게 data를 다룰 수 있는 interface입니다. 조금 더 정확히 이야기 하자면 model에 "attributes"를 추가하기 위해 고안된 interface입니다. Model에 담길 수 있는 데이터는 String, Object 등 여러 type의 데이터가 있습니다. 그리고 view와 controller 사이에서 데.. 2022. 8. 20.
@Controller와 @RestController의 차이점 @Controller와 @RestContoller의 차이점이 궁금함에도 유사한 기능을 하나보다 하며 넘어갔었습니다. 그런데 역시나.. 기능이 다르다는 걸 알게되었고, 이 참에 그 둘의 차이에 대해서 좀 더 알아보려고 합니다. 먼저 문제가 있던 코드는 아래 코드였습니다. 제 의도는 /login 으로 접속했을 때, template directory에 저장되어 있는 loginForm.html을 view로 보여주는 것이었습니다.그런데 의도와는 다르게 return 해주는 String 값이 화면에 나왔습니다. 보통 이런 경우는 @ResponseBody가 붙어있을 때 나타나는데, 그것도 없고 어떤게 문제일까 생각해보았습니다. 그러다가 @RestController를 @Controller로 바꾸어보았고, 원래 의도대로 .. 2022. 8. 6.
em.flush() vs tx.commit() em.flush() 와 tx.commit()의 차이는 무엇일까요? tx.commit()을 하면 내부적으로 em.flush()가 수행된다고 합니다. em.flush()는 데이터를 DB에 저장해주는 역할을 하는데, tx.commit()도 DB에 데이터를 저장하는 용도로 알고 있었기 때문에 tx.commit()은 em.flush()외에 추가적으로 어떤 기능을 하는 것인지 궁금해졌습니다. 1 2 3 4 5 em.flush() - It saves the entity immediately to the database with in a transaction to be used further and it can be rolled back. em.getTransaction().commit - It marks the en.. 2022. 7. 23.
Spring Rest Docs 만들기 Spring에서 배운 내용 중에 현재로서 제가 제일 좋아하는 부분이 바로 Spring Rest Docs를 만드는 것입니다 호호 잘 정리된 API 문서를 보면 기분이 좋더라구요. Spring Rest Docs는 자동으로 API 문서를 제작해주는 기능인데, 수기로 API 문서를 작성할 때 생길 수 있는 오류를 막아주기 때문에 굉장히 유용하다고 합니다! 한가지 Spring Rest Docs를 제작하기 위해 넘어야 할 산은 Controller의 method를 모두 pass해야만 한다는 점입니다. 이 역시 코드를 여러번 작성하다 보면 익숙해지겠죠? 이 포스팅에서는 Spring Rest Docs를 만들기 위해 준비해야하는 것들과 문서에 포함할 내용을 어떻게 코드로 알려주면 되는지 알아보도록 하겠습니다. Spring.. 2022. 7. 19.
반응형