반응형 Spring91 네이버 지역검색 API를 활용한 맛집 List 제작 - (2) 1. application.yml에 naver key 등록 2. 지역검색, 응답 & 이미지검색, 응답 클래스 작성 3. naver client 정보를 이요하여 검색 기능 구현 4. 검색 기능 테스트 *application.yml application.yml에 아래의 코드를 등록한다. 보통 key값이나 개인정보가 있는 경우에 따로 관리한다. naver: url: search: local: ... image: ... client: id: ... secret: ... *SearchLocalReq.java / SearchLocalRes.java 지역검색 요청과 응답에 대한 dto를 따로 만든다. @Data @NoArgsConstructor @AllArgsConstructor public class SearchL.. 2021. 8. 22. 네이버 지역검색 API를 활용한 맛집 List 제작 - (1) 요구사항 분석 - 고객은 원하는 키워드를 검색할 수 있다. 사진, 장소, 카테고리, 주소, 도로명, 홈페이지 링크를 확인할 수 있다. - 고객은 결과를 위시리스트에 추가할 수 있으며 추가할 경우, 나의 맛집 리스트에 추가된다. 나의 맛집 리스트에서는 방문여부, 마지막 방문일자, 방문횟수를 추가적으로 확인할 수 있다. 나의 맛집 리스트에서는 방문추가와 위시리스트 취소를 할 수 있다. - 고객이 위시리스트 삭제를 누르면 나의 맛집 리스트에서 삭제된다. - 고객이 방문추가를 누르면 방문 횟수는 1이 증가한다. 프로젝트 설계 vue.js + boostrap + spring boot + db(h2) Memory CRUD DB 개발하기 *MemoryDbEntity.java @NoArgsConstructor @All.. 2021. 8. 22. Swagger Swagger를 사용하여, 기존에 Spring boot 프로젝트 API를 자동화한 적이 있다. 백엔드에서 만든 API 문서가 없더라도 내가 만든 코드에다가 Swagger 설정을 입혀서 자동화하도록 만들어 프런트에 제공했었다. Swagger를 이용했던 경험을 떠올려 구체적으로 어떤 기능과 역할이 가능한지 알아본다. Open API란? Open API 명세는 REST API를 위한 API 설명 형식으로 YAML 혹은 JSON으로 작성된다. 인간과 기계에 친화적이며 구체적인 공식 명세를 다음 링크에서 확인할 수 있다. OpenAPI 3.0 Specification 다음 API를 기술 할 수 있다. - 사용 가능한 엔드포인트(/users) 및 각 엔드포인트의 작업(GET /users, POST /users) -.. 2021. 8. 21. @Valid를 위한 Blank, Empty, Null 차이 프로젝트를 진행하면서 @Valid를 통해 "입력을 했는가 안했는가"를 판단하기 위해 여러가지 설정을 살펴보았습니다. @Blank, @Empty, @Null을 통해 가능하다고 하는데 도통 처음에는 잘 이해가 되지 않았습니다. null, "", " " 3개의 차이를 이해하는 것이 관건입니다. 그래서 확실히 정리하기 위해서 글을 씁니다. 다음사전에서 해석을 참고했습니다. 1. @Null null은 쉽습니다. 아예 존재자체를 안합니다. 따라서 null의 유무만 확인하면 됩니다. 보통 사용하는 @NotNull 은 말 그대로 null만 아니면 됩니다. null 빼고 전부 통과! 2. @Empty 여기서부터 조금 헷갈리기 시작합니다. 그래서 사전을 찾아보게 되었습니다. 설명을 본다면 [] 안에 그릇, 차, 배, 승객.. 2021. 5. 13. Spring Framework란? 기본 핵심 개념 정리 스프링 프레임워크(Spring Framework)란 무엇인가? 1. IOC (Inversion Of Control) Framework code invokes application code during an operation and ask for application specific information instead of application calling the Framework code directly, hence control is inverted. An example of IOC is Template pattern via sub-classing. Spring IOC provides annotations based IOC as well. Inversion of Control is a principl.. 2020. 11. 10. 순수 java 코드를 이용한 Spring-MVC 등록 과정 개요 Spring MVC구조에 대해 공부하고 사용하다가 어떻게 순수 java 코드를 통해 Spring-MVC라는 패턴을 인식하고 작동을 시켜줄 수 있을까 궁금했습니다. Spring Boot는 상당부분 많은 설정들을 알아서 해주기 때문에 Spring Framework를 사용해서 설정해보며 공부해보도록 하겠습니다. 워밍업 Servlet 3.0 이상부터 javax.servlet.ServletContainerInitializer의 등장으로 web.xml 대신 코드 기반으로 servlet, filter, listener 컴포넌트 등록이 가능합니다. 스프링을 이용한다면 SpringServletContainerInitializer를 통해 이 전략을 사용합니다. 최종으로 개발자가 실제 구현해야 할 것은 org.spri.. 2020. 11. 5. 미니프로젝트 오늘의 공부 (@RequestParam), (@ModelAttribute) 매개변수 넘어왔을 때, request객체에 등록되는 것은 ModelAttribute뿐이다. @RequestParam의 변수를 jsp에서도 사용하고 싶으면 (Model model)을 주입받아 model.addAttribute를 사용하여 jsp에 넘긴다. form 커스텀에서 modelAttribute를 통해서 값들을 넘기지 않으면, request 객체에 담기지 않는다. ex)form 태그 안에 value에 ${}을 사용하면 파라미터에 넘어오지 않는다. form 커스텀에서 modelAttribute를 넘기기 위해서는 아무내용없는 Bean 객체를 (@RequestParam)에 보낸다. ex) 글쓰기를 한 내용을 파라미터로 넘기기 위해 f.. 2020. 5. 29. Restful API 기본 웹 애플리케이션은 응답 결과를 브라우저가 사용하는 html, css,javascript 로 생성하여 전달한다. Restful API 서버는 응답결과를 "데이터만으로 구성"하여 클라이언트로 전달하는 서버이다. Restful API 서버는 웹, 모바일 PC 등 다양한 플랫폼으로 "데이터"를 전달할 때 사용한다. @RestController @Controller는 return하는 값이 jsp를 지정하는 의미이지만 @RestController에서 return은 "그 값자체를 브라우저에 전달"하는 방식이다. 객체나 리스트를 json 데이터로 만들어 주는 것이 Jackson Databind @RestController public class RestTestController { @GetMapping("/tes.. 2020. 5. 28. MyBatis Java 언어를 사용하여 데이터베이스와 연동하는 프로그램을 만들 수 있는 기술이 JDBC JDBC 프로그래밍을 보다 쉽게 할 수 있도록 설계된 라이브러리가 MyBatis MyBatis는 Spring framework에서 이용할 수 있도록 라이브러리를 제공하고 있다. *JDBC(Java DataBase Connectivity) = 자바에서 데이터베이스에 연결하기 위한 인터페이스 *ODBC(Open Database Connectivity) = ODBC는 모든 응용 프로그램(프로그래밍 언어 무관)에서 모든 데이터베이스 시스템과 통신하는 데 사용할 수있는 개방형 인터페이스. 언어와 독립적이다. *DBCP(DataBase Connection Pool) = 데이터베이스와 커넥션을 맺고 있는 객체를 관리하는 역할. .. 2020. 5. 27. 이전 1 ··· 5 6 7 8 9 10 11 다음 반응형