IntelliJ 단축키, 강의 내용 정리

oyeon·2021년 4월 1일
0
post-thumbnail

IntelliJ 윈도우 단축키

단축키설명
CTRL + SHIFT + TTest 클래스 쉽게 만들기
ALT + INSERT코드 삽입(Constructor, get/setter, toString 등)
CTRL + ALT + SHIFT + Trefactoring (추출할 부분 드래그. 9. Extract Method.)
CTRL + ALT + V변수 추출
ALT + ENTER1. implement methods(인터페이스 메소드 불러오기)
2. static import (Assertions.assertThat -> assertThat)
3. 람다식으로 변경 가능
SHIFT + F6단어 한번에 rename
SHIFT + F10이전에 실행한걸 다시 실행시켜줌
CTRL + SHIFT + F10현재 커서가 있는 메서드 실행시켜줌
CTRL + E최근에 본 파일 목록
CTRL + ALT + NInline (CTRL + ALT + SHIFT + T로 검색해도 나옴)
soutSystem.out.println
soutvSystem.out.println 변수명 출력
soutmSystem.out.println 메서드명 출력
CTRL + SHIFT + ENTER1. 자동완성 된 상태에서 해당 단축키로 ; 까지 타이핑 가능
2. 라인 끝까지 안가도 개행 해줌
psvmpublic static void main(String[] args)
F2오류난 곳으로 바로 이동
CTRL + ALT + Mnew 메서드() 부분 드래그 후 Extract Method
iterfor each (향상된 for문)
CTRL + D드래그 후 (CTRL + C) + (CTRL + V) 한 번에
CTRL + NNavigate -> Go to Class
SHIFT + SHIFTNavigate -> Search Everywhere
CTRL + ALT + L자동 정렬
CTRL + ALT + 방향키(좌/우)뒤로 가기 / 앞으로 가기
CTRL + B구현체 찾기
CTRL + SHIFT + FFind in Path
CTRL + F12Navigate -> File Structure
CTRL + ALT + BNavigate -> Implementation(s) 구현체로 간다.
setsetter
getgetter

강의 설명 中

테스트는 순서에 의존관계가 없어야 한다. -> store.clear();

@ComponentScan 선언(@Service, @Repository 등) vs @Bean 등록

  1. 컴포넌트 스캔과 자동 의존관계 설정(DI) (@ComponentScan 혹은 갖고 있는 어노테이션 선언)
  • @Controller, @Service, @Repository 안에 @ComponentScan 들어있음.
  • Spring이 실행될 때 Spring 컨테이너에 @ComponentScan 들어있는 것들을 빈으로 넣어서 관리
  1. 자바 코드로 직접 스프링 빈 등록 (@Bean 등록)
  • DI의 종류 3가지
  1. 생성자 주입 : 권장하는 스타일. 조립 시점(Spring 실행되는 시점)에 생성자로 조립해 놓고, 끝을 내야 한다. (그 다음엔 변경을 막아 버린다.)

  2. 필드 주입 : 별로 안 좋다. 중간에 수정할 방법이 없다.

  3. Setter Injection : 단점 - 누군가가 MemberController로 호출했을 때, public 으로 열려있어야 한다. (public 에 노출)

※ Spring 쓰는 이유
메모리 멤버 -> JDBC 멤버로 변경시 기존의 코드는 하나도 손 대지 않고, 애플리케이션 설정부분만 만지면 실제 애플리케이션 코드를 손대지 않고 똑같이 동작하게한다.

※ 객체지향적 설계가 좋은 이유 : 인터페이스를 두고 구현체 바꿔끼기 가능(다형성 활용). 이걸 가능하게 spring container가 지원해준다. DI 덕분에 개발이 편리해진다.

h2 데이터베이스 연결
cmd에서 */h2/bin 접근후 javaw -jar h2-1.4.200.jar 를 실행

통합 테스트
@SpringBootTest : 스프링 컨테이너와 테스트를 함께 실행한다.
@Transactional : DB에 값 넣고 마지막에 ROLLBACK -> 실제 데이터가 반영 X -> 다음테스트를 반복해서 실행가능.

JdbcTemplate : 실무에서도 많이 사용.

60~70% : 테스트 코드
20~30% : 프로덕션 코드
프로덕션 코드가 커질수록 굉장히 중요. 에러 -> 몇 억이상의 손해 발생가능

AOP : 공통 핵심 사항 빼놓을 때 사용(시간 측정 예시 떠올리기), 프록시 방식 사용

reference
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

profile
Enjoy to study

0개의 댓글