일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- AuthenticationPrincipal
- Application Runner
- rest api
- 알고리즘
- 다익스트라
- JsonSerializer
- 스프링부트
- 백준
- OAuth2
- WebApplication Type
- 리소스핸들러
- @ConfigurationProperties
- HttpMessageConverters
- EnableAutoConfiguration
- 외부설정
- Application Argument
- cors
- Application Event
- JPA
- 백트래킹
- @Profile
- 정적 리소스
- 브루트포스
- HATEOAS
- 리소스 서버
- application.properties
- Spring Security
- 스프링 부트
- 백기선
- webjar
- Today
- Total
목록Spring (66)
아카이브
spring-boot-starter-validation 의존성 추가 org.springframework.boot spring-boot-starter-validation EventDTO package me.jumen.demoinflearnrestapi.events; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import javax.validation.constraints.Min; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import j..

ModelMapper 의존성 추가 org.modelmapper modelmapper 2.3.9 EventDto 추가 package me.jumen.demoinflearnrestapi.events; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import java.time.LocalDateTime; @Builder @NoArgsConstructor @AllArgsConstructor @Data public class EventDto { private Integer id; private String name; private String description;..
package me.jumen.demoinflearnrestapi.events; import lombok.*; import java.time.LocalDateTime; @Builder @AllArgsConstructor @NoArgsConstructor @Getter @Setter @EqualsAndHashCode(of="id") public class Event { private Integer id; private String name; private String description; private LocalDateTime beginEnrollmentDateTime; private LocalDateTime closeEnrollmentDateTime; private LocalDateTime beginE..

CORS (Cross-Origin-Resource-Sharing) : 교차 출처 리소스 공유 서로 다른 Origin끼리 리소스를 공유할 수 있는 것 SOP(Single-Origin Policy: 같은 Origin끼리만) 우회하기 위한 표준 기술 스키마 / 호스트 / 포트 - 3가지의 조합이 Origin이다 ex) http / hostname / 8080 CORS 허용의 경우 http / hostname / 8080 에서 http / hostname/ 18080 으로 요청을 보내면 리소스를 받을 수 있다 구현 - @CrossOrigin(origins = "허용주소:포트") 구현 - WebMvcConfigurer

Hypermedia As The Engine Of Application state 링크에 사용 가능한 URL을 리소스로 전달하여 client가 참고하여 사용할 수 있도록 하는 것 REST API를 만들때, 서버가 리소스를 제공하며 연관된 링크 정보들까지 함께 제공하고 클라이언트는 제공된 연관 정보를 바탕으로 재접근 하기 위한 것 참조문서:https://spring.io/guides/gs/rest-hateoas/ org.springframework.boot spring-boot-starter-hateoas pom.xml 의존성 추가 slicing test를 통해 GET /hateoas를 보내면 handler에서 Reflection을 통해 SampleController.class의 hateoas() meth..

기본 error handler인 BasicErrorController가 존재하는데, 별도의 custom handler도 구성할 수 있다 @ExceptionHandler(SampleException.class) - RuntimeException을 상속한 SampleException이 발생하면 해당 method를 실행한다 Global using을 위해 @ControllerAdvice controller를 만들고, 이 안에 @ExceptionHandler를 구성하면 모든 controller에서 사용할 수 있다

webjar ? 클라이언트에서 사용하는 웹라이브러리(jquery 와 bootstrap) 를 JAR 파일 안에 패키징하는 것 org.webjars.bower jquery 3.5.1 pom.xml 의존성 추가 (artifactId에 jquery, react, vue 등이 들어간다) 만약 버전관리도 생략하고 싶다면? org.webjars webjars-locator-core 0.46 버전을 명시하지 않고 사용할 수 있다

● 기본 리소스 위치 (resources 부터 classpath) ○ classpath:/static ○ classpath:/public ○ classpath:/resources/ ○ classpath:/META-INF/resources ○ 예) “/hello.html” => /static/hello.html custom ResourceHandler 추가하는 법 /m 요청으로 들어올 경우, resource를 classpath:/m/ 에서 찾는다 캐싱전략도 따로 필요하다

ContentNegotiatingViewResolver viewResolver 중의 하나로, accept header에 따라 해당 타입에 맞는 viewResolver에게 위임해주는 viewResolver이다

HttpMessageConverters HTTP 요청 본문과 Object의 변환을 담당하는 Spring MVC의 일부분이다 JSON 요청으로 들어온 경우, JsonHttpMessageConverter에 의해 JSON -> User Object로 변환되어 들어온다 이때 controller에서는 @RequestBody를 통해 spring에게 conversion을 명시한다 return할때 User Object를 반환하는데, 이때도 JsonHttpMessageConverter를 통해 JSON으로 response에 실어 보낸다 String, int 등의 primitive type을 return할 경우에는 StringMessageConverter를 통해 실어 보낸다