일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- db
- Greedy
- 인프런
- springdatajpa
- Spring Boot
- spring
- http
- 백준
- transaction
- 알고리즘
- JDBC
- SpringBoot
- Proxy
- pointcut
- 김영한
- AOP
- JPQL
- 자바
- Exception
- java
- 스프링
- Servlet
- kotlin
- 스프링 핵심 기능
- 스프링 핵심 원리
- Android
- QueryDSL
- 그리디
- Thymeleaf
- jpa
- Today
- Total
목록Project/영화리뷰 관리 (13)
개발자되기 프로젝트
앞선 글에서 Naver API사용 시 에러코드 SE99(HTTP상태코드 500)가 뜨면서, 내부 서버 에러가 발생했다. 진짜로 서버 에러인줄 알고 있었는데, 네이버에서 제공하는 오류 코드를 보고 내가 잘못했구나.. 라는 의심이 생김. HTTP 상태 코드(오류 유형) 오류 발생 원인 해결 방법 500(서버 오류) 필수 요청 변수가 없거나 요청 변수 이름이 잘못된 경우 API 레퍼런스에서 필수 요청 변수를 확인합니다. 500(서버 오류) 요청 변수의 값을 URL 인코딩으로 변환하지 않고 전송한 경우 API 레퍼런스에서 해당 요청 변수를 URL 인코딩으로 변환해야 하는지 확인합니다. 500(서버 오류) API 호출은 정상적으로 했지만, API 서버 유지 보수나 시스템 오류로 인한 오류가 발생한 경우 개발자 포..
1. Entity란? DB table에 존재하는 Columns을 field로 가지는 객체. 클래스에 @Entity annotation을 붙여 Entity라고 명시함. 2. DTO란? DTO는 Data Transfer Object의 약자로, 계층 간 data 교환 역할을 한다. 특히 Controller와 같이 client와 맡닿아 있는 계층에 entity를 직접 전달하는 대신 DTO를 사용하여 전달한다. DTO는 단순히 데이터 교환을 위한 객체이기 때문에, 특별한 로직을 갖지 않는다. 3. Entity와 DTO를 왜 분리해야함? view와 통신하는 class는 변경이 잦다! 만약 Entity를 주고받는다면, 잦은 Entity의 변화로 DB의 변경도 잦다. 또한 Entity의 변화는 영향의 범위가 매우 크다..
1. API controller 기존 APi controller의 각 method를 보면 아래와 같이 Api controller의 기능 외에 실제 service로직까지 포함되어 있다. Service에 해당하는 class를 별도로 만들어서 apicontroller는 정말로 controller의 역할만 하게 수정해보자. @GetMapping("/search") public SearchMovieRes movieSearch(@RequestParam String query){ System.out.println(query); SearchMovieReq searchMovieReq = new SearchMovieReq(); searchMovieReq.setQuery(query); var result = naverCli..
1. 오늘의 목표 Naver Api와 연동하여 Req보내고 Res받기 2. REQ Request 객체는 naver api에서 요구하는 변수를 필드로 가지고 있어야 한다. Naver API의 개발 가이드를 보면 아래 정보를 확인할 수 있다. 1) 변수명 및 타입 변수명 타입 필수 기본값 설명 query string (필수) Y - 검색을 원하는 질의. UTF-8 인코딩이다. display integer N 기본값 10, 최대 100 검색 결과 출력 건수를 지정한다. 최대 100까지 가능하다. start integer N 기본값 1, 최대 1000 검색의 시작 위치를 지정할 수 있다. 최대 1000까지 가능하다. genre string N - 검색을 원하는 장르 코드를 의미한다. 영화 코드는 다음과 같다. ..
1. 오늘의 목표 API controller를 통해 DB에 movie 객체 CRUD 2. Movie, Movie Repository 생성 필드명은 NAVER API의 reponse내용을 참고했다. @Data @NoArgsConstructor @AllArgsConstructor @Entity public class Movie { @Id @GeneratedValue private int id; private String title; private String link; private String image; private String subtitle; private LocalDate pubDate; private String director; private String actor; private String..