이전에 썼던 글들을 읽어보니 나도 이해못하겠다. 그래서 다시 미래의 백지가 된 나를 위해서 다시 써 놓는다. 1. @RequestBody는 JSON -> 객체 매핑, @ResponseBody는 객체 -> JSON 변환 1-1 @RequestBody는 JSON 형식으로 데이터를 수신할 경우 반드시 변환할 클래스 앞에 명시해야 한다. 2. @RestController는 @Controller + @RespnoseBody이다. 그냥 객체를 리턴하면 Json을 보낸다.
1. 스프링 부트의 Web starter가 들어 있으면 controller에서 객체를 반환해도 json으로 변환되어 client에 보내진다. 2. 복잡해 보이는데 이걸 왜 쓰냐는 게 질문이다. 3. ResponseEntity는 HTTP 프로토콜의 response 정보를 편하게 설정하기 위해서 사용한다. 3-1 단순히 body에 들어갈 정보를 json으로 변환해서 보내는 것은 너무 기본적이다. 3-1-1 이것은 Controller에 @RestController가 지정되면 자동으로 json 파서가 세팅된다. - @ResponseBody 3-2 실 개발에서 외부시스템과 연동시 가장 문제가 되는 부분 중 하나가 인코딩인데 3-2-1 Content-Type을 설정하여 Encoding을 지정해야 하고, Accept..
1. REST 서비스를 구현하기 위해서 1-1 Spring MVC -> 고전적인 방식 Front Controller 모델이다. 1-2 Spring WebFlux -> Reactive 방식으로 동작하는 REST를 구현하는 기술이다. 1-3 Spring WebFlux fn -> Reactive 방식으로 동작하는데 functonal programming model을 사용한다. 1-3-1 Node.js의 express 서버를 자바로 구현한 거라 생각하면 된다. 2. REST 서비스를 사용하기 위한 클라이언트로 2-1 Spring RestTemplate -> 고전적인 방식 2-2 Spring WebClient -> 스프링의 reactive 클라이언트를 구현하는 기술이다. 솔직히 좋은지는 모르겠다. 위의 내용만 이..
0. 광고를 붙여 더니 진짜 볼품이 없다. 하루에 1~10원 정도 들어오는데 의미가 있나 싶다. 1. 지금까지 쓴 글들을 보니 나에게도 전혀 도움이 안되 보인다. 2. 처음봐도 알 수 있게 적어야 할 것 같다. 3. Richardson Maturity Model은 REST의 표준 같은 기능을 한다. REST의 품질 수준에 대한 것이다. 3-1 SOAP같은 기술은 표준이 있지만 REST는 없기 때문에 이것을 준용하는 것이다. 4. 간단하게 말하면 Level이 3개로 구분 되는데, 엄밀하게 말하면 Level 0을 포함하여 4개다. 4-1 Level 3은 Hypermedia Controls로 스프링이 주구창창 지원하는 HATEOS 기능을 생각하면 된다. 4-1-1 말이 자동 구현이지 진짜 짜증나고 실서비스에서..
1. Spring REST Docs는 스프링에서 지원하는 공식 documentatino라이브러리이다. 1-1 이 라이브러리의 장점은 테스트코드를 작성하면서 동시에 문서를 작성할 수 있다는 점이다. 1-2 즉 테스트를 실패하는 경우 문서도 다시 작성해야 하는 문제를 해결해 준다. 2. 절차 2-1 우선 아래 의존성을 추가한다. 이것은 webflux, restAssured를 사용할 때는 해당 의존성을 추가해야 한다. 2-2 asciidoctor-maven-plugin을 추가한다. 이것은 각 테스트 코드에서 설정한 정보를 snippet이라는 것으로 저정한다. 2-3 maven-resources-plugin은 특정 폴더의 데이터를 특정 폴더로 복사하는 단순한 기능을 한다. 2-3-1 snippet이 생성되는 t..
1. REST에서 xml를 서버스하는 것은 간단하지만 xml서비스를 위한 스키마 작성은 조금 해야 할 것이 있다. 2. 우선 xsd를 작성해야 하는데 그냥 하기에는 조금 부담스럽기 때문에 generator로 작성하면 좀 편하다 Free Online XSD/XML Schema Generator - FreeFormatter.com XSD/XML Schema Generator Generates a XSD (XML Schema) from a XML file. Simply copy-paste OR upload your XML document and let the generator figure out the rest. The generator will try to use a 'smart' approach to fi..
1. 스프링 부트에서 REST에서 xml 형식으로 서비스를 지원하고 싶은 경우 간단하게 pom에 의존성을 추가하면 된다. 1-1 스프링 부트를 사용하지 않는 경우에는 ContentNegotiatingViewResolver를 등록하고 라이브러리 지정해야 한다. com.fasterxml.jackson.dataformat jackson-dataformat-xml 1-2 jackson xml를 사용하지 않는 경우에는 JAXB를 사용할 수 있다. 1-2-1 문제는 jaxb는 java 8에 포함되어 배포되어 Java 8 버전 이상을 사용할 경우에는 jaxb를 별도로 추가해야 한다. org.glassfish.jaxb jaxb-runtime 1-3 서비스 호출 시에는 Accept: text/xml를 추가해야 json이..
1. OpenAPI 3.0은 swagger 3.0의 다른 이름이다. 2. maven에 단 하나의 라이브러리만 추가하면 된다. 아래 내용만 추가하면 swagger ui도 같이 사용할 수 있다. org.springdoc springdoc-openapi-ui 1.4.6 3. 기본적인 접근경로는 이전과 동일하다. 3-1 JSON -> http://localhost:8080/v3/api-docs/ 3-2 swagger ui -> http://localhost:8080/swagger-ui.html 4. 기본설정 4-1 OpenAPI 3.0이 되면서 기본설정이 훨씬 간단해 졌다. 4-1-1 만일 하나의 Docket이 필요한 경우는 아래처럼 application.properties에서 지정할 수 있다. 4-1-1 이것..
- Total
- Today
- Yesterday
- 도커 개발환경 참고
- AWS ARN 구조
- Immuability에 관한 설명
- 자바스크립트 멀티 비동기 함수 호출 참고
- WSDL 참고
- SOAP 컨슈머 참고
- MySql dump 사용법
- AWS Lambda with Addon
- NFC 드라이버 linux 설치
- electron IPC
- mifare classic 강의
- go module 관련 상세한 정보
- C 메모리 찍어보기
- C++ Addon 마이그레이션
- JAX WS Header 관련 stackoverflow
- SOAP Custom Header 설정 참고
- SOAP Custom Header
- SOAP BindingProvider
- dispatcher 사용하여 설정
- vagrant kvm으로 사용하기
- git fork, pull request to the …
- vagrant libvirt bridge network
- python, js의 async, await의 차이
- go JSON struct 생성
- Netflix Kinesis 활용 분석
- docker credential problem
- private subnet에서 outbound IP 확…
- 안드로이드 coroutine
- kotlin with, apply, also 등
- 안드로이드 초기로딩이 안되는 경우
- navigation 데이터 보내기
- 레이스 컨디션 navController
- raylib
- MYSQL
- RestTemplate
- spring boot
- crud
- 설정
- 스프링
- 설정하기
- form
- 로그인
- Rest
- one-to-one
- mapping
- WebMvc
- login
- XML
- hibernate
- 자바
- Angular
- 하이버네이트
- 스프링부트
- 매핑
- Spring Security
- jsp
- one-to-many
- Security
- 상속
- Validation
- Spring
- 외부파일
- Many-To-Many