memostack
article thumbnail
Spring Boot - REST API를 위한 snake_case 공통 설정
Backend/Spring Boot 2020. 11. 15. 00:38

REST API 규격에 따라 일반적으로 CamelCase가 아닌 snake_case를 사용한다. 각각의 멤버 변수에 @JsonProperty를 적용하여 바꿔줄 수도 있지만, 설정파일을 이용해서 전체 프로젝트에 적용 할 수 도 있다. 방법 1. @JsonProperty 멤버 변수에 @JsonProperty 어노테이션을 붙여서 snake_case로 변경할 수 있다. class User { @JsonProperty("user_id") private String userId; } 방법 2. application.properties (또는 application.yaml) 설정 '방법 1'을 이용하면 매번 변수를 생성 할때마다 어노테이션을 추가해야하는 버거로움이 있다. Spring 설정파일에 spring.jacks..

article thumbnail
JPA 오류 해결 - Unable to locate Attribute with the the given name [Column]
Backend/Spring Boot 2020. 11. 14. 23:21

UserRepository.java 아래 메소드에서 계속 문제가 발생했다. @Repository public interface UserRepository extends JpaRepository { Optional findFirstByPhoneNumberOrderByIdDesc(String phoneNumber); } 에러 내용 java.lang.IllegalArgumentException: Failed to create query for method public abstract java.util.Optional com.example.study.repository.UserRepository.findFirstByPhoneNumberOrderByIdDesc(java.lang.String)! Unable to ..

article thumbnail
Spring Boot 와 MySQL & JPA 연동하기 (Gradle 프로젝트)
Backend/Spring Boot 2020. 11. 11. 21:12

MySQL 설치 설치는 아래 글 참고 2020/10/30 - [Database/RDB] - MySQL 설치하기 (Mac OSX) MySQL 설치하기 (Mac OSX) MySQL 설치 본 글에서는 Homebrew 를 이용하여 MySQL 을 설치한다. $ brew update $ brew install mysql 만약, 특정 버전을 따로 설치하고 싶다면 아래 명령어를 수행한다. 그리고, 원하는 버전의 mysql을 설치한.. memostack.tistory.com 스키마 & 테이블 생성 유저 생성 및 권한 부여 CREATE USER test_user@localhost IDENTIFIED BY '1234'; GRANT ALL PRIVILEGES ON STUDY_DB.* TO test_user@localhost;..

article thumbnail
SpringBoot와 @PostMapping, @RequestBody 예제
Backend/Spring Boot 2020. 11. 11. 20:25

@PostMapping POST 통신을 할때는 @RequestMapping(method=RequestMethod.POST, ...) 를 이용하거나 @PostMapping을 이용한다. @RestController @RequestMapping("api") public class PostController { @RequestMapping(method = RequestMethod.POST, path = "/postMethod") public String postMethod() { return "Hello Spring"; } @PostMapping("/postMethod2") public String postMethod2() { return "Hello Spring"; } } @RequestBody 만약, 함께 ..

article thumbnail
Spring Boot와 @RequestMapping, @GetMapping, @RequestParam 예제
Backend/Spring Boot 2020. 11. 11. 19:57

예제를 위해 간단한 Spring Boot 프로젝트를 생성한다. 2020/02/18 - [Spring/Spring Boot] - Spring Boot 프로젝트 생성하기 Spring Boot 프로젝트 생성하기 스프링 부트 프로젝트 생성 스프링 부트 프로젝트를 생성 할 수 있게 도와주는 사이트가 있다. (https://start.spring.io) 위와 같이 원하는 Version , Metadata , Dependency 를 정하여 프로젝트를 구성한다. Ge.. memostack.tistory.com Controller 생성 Controller를 하나 생성한다. 생성할때는 @RestController를 이용한다. @RestController // REST API Controller 사용한다는 것을 프레임워크에..

Socket 통신과 HTTP 통신의 차이점
DevOps/Network 2020. 11. 11. 18:23

Socket 통신 접속을 계속 유지 하면서 데이터를 주고받음 서버 리소스에 따라 연결 될 수 있는 클라이언트의 수가 한정되어 있음 비교적으로 HTTP보다 속도가 빨라, 실시간 정보 교환에 사용함 HTTP 통신 클라이언트 요청이 있을때만 응답(Response)을 전달함. Socket 통신과 다르게 데이터 요청(Request)하고 응답(Response)이 오면 연결이 끊어짐. 클라이언트와 연결을 유지하지 않다보니, 다른 접속을 원활하게 하여 많은 데이터를 처리할 수 있음

article thumbnail
Javascript의 forEach, map, filter 함수
Frontend/HTML, CSS, JS 2020. 11. 9. 23:01

forEach() 배열의 원소를 하나씩 꺼내, 반복하여 작업을 할때 사용한다. const numbers = [1, 2, 3, 4, 5]; numbers.forEach((number) => { // 각 원소를 하나씩 꺼내어 console.log로 출력한다. console.log(number); }); 1 2 3 4 5 map() 배열의 각 원소 값을 변경하여 새로운 배열을 생성할 때 사용한다. const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // 각 원소를 제곱한 새로운 배열을 반환한다. const newNumbers = numbers.map((number) => number * number); console.log(newNumbers); [1, 4, 9, 16, 2..

article thumbnail
vscode 설정값 초기화하기 (settings.json)
ETC 2020. 11. 5. 00:24

settings.json 파일 삭제 아래 경로의 settings.json 파일을 삭제한다. 윈도우 %APPDATA%\Code\User\settings.json MacOS $HOME/Library/Application Support/Code/User/settings.json Linux $HOME/.config/Code/User/settings.json MacOS 예시 $ cd $HOME/Library/Application\ Support/Code/User $ rm -rf settings.json Reference stackoverflow.com/questions/36108515/how-to-reset-settings-in-visual-studio-code How to reset settings in Vis..

article thumbnail
React에 eslint-config-airbnb, prettier 설정하기
Frontend/React 2020. 11. 5. 00:05

준비 환경 VSCode prettier plugin 설치 eslint plugin 설치 eslint-config-airbnb 설치 $ yarn add eslint-config-airbnb yarn add v1.22.4 [1/4] 🔍 Resolving packages... [2/4] 🚚 Fetching packages... [3/4] 🔗 Linking dependencies... warning " > @testing-library/user-event@12.2.0" has unmet peer dependency "@testing-library/dom@>=7.21.4". ...중략... info All dependencies ├─ eslint-config-airbnb-base@14.2.0 └─ eslint-c..

article thumbnail
Spring Boot 와 MySQL 연동하기 (Maven 프로젝트)
Backend/Spring Boot 2020. 10. 31. 22:35

Gradle 내용은 아래 참고 2020/11/11 - [Spring/Spring Boot] - Spring Boot 와 MySQL & JPA 연동하기 (Gradle 프로젝트) Spring Boot 와 MySQL & JPA 연동하기 (Gradle 프로젝트) MySQL 설치 설치는 아래 글 참고 2020/10/30 - [Database/RDB] - MySQL 설치하기 (Mac OSX) MySQL 설치하기 (Mac OSX) MySQL 설치 본 글에서는 Homebrew 를 이용하여 MySQL 을 설치한다. $ brew update $ brew ins.. memostack.tistory.com 의존성 추가 아래와 같이 java와 mysql 커넥터 의존성을 pom.xml에 추가한다. mysql mysql-conne..