롬복은 편하게 getter와 setter toString등 vo형태로 사용할 때에 필수로 사용하던 것들을 자동으로 만들어주는 어노테이션 라이브러리이다. 먼저 dto작성 package com.jojoldu.book.srpingboot.web.dto; import lombok.Getter; import lombok.RequiredArgsConstructor; @Getter // 선언된 모든 필드의 get 메소드를 생성해 줍니다. @RequiredArgsConstructor // 선언된 모든 final 필드가 포함된 생성자를 생성해 줍니다. final이 없는 필드를 생성자에 포함되지 않습니다. public class HelloResponseDto { private final String name; privat..

롬복은 자바 개발할 때 자주 사용하는 코드 Getter, Setter, 기본생성자, toString등을 어노테이션으로 자동 생성해준다. dependencies에 compile('org.projectlombok:lombok')를 써준다 그 뒤에 gradle을 한번 더 돌려주고 후에 Ctrl+Shift+A를 눌러 Plugins에 들어가 준다 lombok 검색 후 install해준다. 후에 settings > build >Compiler > Annotation Processors 로 들어간다 그 뒤에 Enable annotation processing을 체크해준다. 설치는 한번이면 되지만 매 프로젝트마다 이 작업을 해줘야한다고 한다.

TDD와 단위 테스트는 다른 이야기이다. TDD는 테스트가 주도하는 개발을 이야기하고 테스트 코드를 먼저 작성 하는 것부터 시작한다. - 항상 실패하는 테스트를 먼저 작성하고 - 테스트가 통과하는 프로덕션 코드를 작성하고 - 테스트가 통과하면 프로덕션 코드를 리팩토링합니다 반면 단위테스트는 TDD의 첫 번쨰 단계인 기능 단위의 테스트 코드를 작성하는 것을 이야기합니다. ( 단위 테스트랑 TDD안의 기능 하나하나를 작성하고 테스트 하는 것을 의미하는 듯 하다.) - 단위 테스트는 개발자가 나중에 코드를 리팩토링하거나 라이브러리 업그레이드 등에서 기존 기능이 올바르게 작동하는지 확인할 수 있다. - 단위 테스트는 기능에 대한 불확실성을 감소 시킬 수 있다. - 단위 테스트는 시스템에 대한 실제 문서를 제공한..

일단 컨트롤러에 @RestController 어노테이션을 작성한다. () 안에 apiNoticeController는 적지 않아도 되지만 만약 같은 네임의 클래스가 있을경우 ioc가 헷갈려 오류를 내버린다. 그럴 경우를 대비해서 네이밍을 해주는 느낌으로 작성해주면 된다. @RestController는 메소드에만 작성했었던 @ResponseBody와 비슷한 기능을 한다. return으로 사용되는 부분에 들어가는 것을 문자열로 반환해주게 된다. 만약 /api/notice/list 를 요청하게 되면 "공지 list" 가 출력되는 것을 확인 할 수 있다 하지만 위처럼 mvc:annotation-driven안에 설정을 해주지 않으면 한글의 경우 깨지게 되니 설정에 주의하자
열심히 원본문서 + 구글검색을 통해 겨우 채널의 동영상 목록을 불러왔다 pom.xml v3-rev8-1.12.0-beta 1.12.0-beta 1.12.0-beta UTF-8 google-api-services http://google-api-client-libraries.appspot.com/mavenrepo com.google.apis google-api-services-youtube ${project.youtube.version} com.google.http-client google-http-client-jackson2 ${project.http.version} com.google.oauth-client google-oauth-client-jetty ${project.oauth.version} or..

인텔리제이 설치 후 처음 프로젝트를 만들 때에는 빌드툴을 gradle로 잡아준다 이후에 build.gradle 폴더에서 gradle의 설정을 할 수 있다 /*ext는 gradle 파일 안에 전역변수 설정이라 할 수 있다.*/ buildscript{ ext{ springBootVersion = '2.1.7.RELEASE' } repositories{ mavenCentral() jcenter() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } /*management 플러그인은 스프링부트의 의존성들을 관리해 주는 플러그인이다.*/ apply plugin: 'java' a..

Service도 xml로 설정된 곳이 아닌 어노테이션을 이용해서 이어줄 수 있다. 먼저 기존에 id noticeService 자체를 주석해준다. 지금까진 class에 포함해 bean객체로 컨테이너 속에 넣고 사용해왔지만 이번에는 컴포넌트로 변경해야 하기 때문이다. 또 context:component-scan을 이용해 꼭 찾아봐야할 경로를 적어준다. 적지않고 사용해도 되지만 그럼 시간이 많이 소요되니 service를 찾을 때에는 꼭 적어준다. service로 두려는 클래스에 컴포넌트 @Component를 사용한다. 이렇게 Component라는 이름으로 사용해도 좋지만 상황에 따라 분류할 수 있도록 별도의 다른 이름의 컴포넌트들이 존재한다 @Service , @Controller, @Repository가 그..
- Total
- Today
- Yesterday
- Intercepter
- BindingResult
- exception
- 향해플러스백엔드
- HTTP
- filter
- rejectValue
- hypertexttransferprotocol
- 인터셉터
- 예외처리
- 스프링공부
- ArgumentResolver
- 백엔드 개발자 역량
- 향해플러스
- react실행
- React
- 항해99
- 향해99
- Java
- JPA
- 백엔드 개발자 공부
- reject
- 스프링부트
- 로그인
- SpringBoot
- 컨트
- thymleaf
- jpa api
- 리터럴
- 항해플러스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |