기술 스텍/Spring

IntelliJ 단축키 모두 알고 계신가요? 보통 사용하는 키만 사용하고 나머지는 사용하지 않고 계신건 아닌가요? Tobby님의 강연을 들으면서 IntelliJ에 대해 얼마나 자세히 알고 있는지 물어보셨을때  매일 쓰면서도 자세히 모른다는 사실을 직면했습니다. 한번 알아볼게요 우선 jet brain에서는 아래 링크를 통해 가시면 자세히 설명되어 있는 것을 알수 있습니다.https://www.jetbrains.com/help/idea/getting-started.html command + , 를 통해 설정창으로 들어간다. → 색맹, 커스텀 ui, keymap(short key)등 수정가능command + d 를 파일 2개를 클릭한 상태에서 실행하면 2 파일의 코드를 비교한다. command + g 를 bl..
JPA에서 영속성 관리는 정확하게 알아야합니다.트랜잭션 내에서 persist, commit은 정확하게 알지 못하면 제대로된 메서드를 관리하기 어렵기 때문입니다.영속성과 관련해서 공부하면서 의문을 가지게 되었습니다.스프링 프레임워크에서 EntityManager 주입받아서 사용하면, 같은 트랜잭션 범위에 있는 EntityManager는 동일 영속성 컨텍스트에 접근한다.따라서 동일한 @Transactional (같은 트랜잭션 범위 전파되는 경우에도) 이면 같은 영속성 컨텍스트에 접근한다.그럼 Id가 GenerationType.IDENTITY인 경우에는 어떻게 구성되는 걸까? 먼저 용어에 대해 알아보겠습니다.비영속 (new/transient)영속성 컨텍스트와 전혀 관계가 없는 새로운 상태입니다.주로 객체를 생성..
Spring에서 MSA를 사용하는 경우 서버는 고가용성을 가질 필요가 있고, 하나의 서버가 터졌을 때 다른 서비스까지 되지 않는 로직은 사이트의 규모가 커질수록 경제적 손해가 큽니다. Netflix에서 개발된 서비스 디스커버리 툴이 공개되고 나서 Eureka는 다음과 같은 장점을 가집니다. 1. 서비스 디스커버리 - 수십, 수백개의 서버의 url을 모두 외워서 적용시키는 것은 개발적 loss가 큽니다. 따라서 서버이름을 통해 lb:severname을 통해 맵핑을 시킨다면 해당 서버의 위치를 조회할 수 있습니다. 2. 로드 벨런싱 - eureka서버는 상태를 주기적으로 체크합니다. 응답하지 않는 서비스에 있어서 장애 서비스에 요청을 보내는 것을 방지할 수 있습니다. 3. 자동 장애 복구 - 서비스가 장애 ..
스프링 부트의 꽃은 DI라고 합니다. DI가 무엇이길래? DI는 의존성 주입입니다. 의존성을 주입을 하는 이유가 뭘까요? public class BugService { public void bountLeg() { BugRepository bug = new Fly(); bug.legCount(); } } // BugService가 Fly class에 의존된다. 위 처럼 new를 통해 직접 객체를 생성하면 의존되어 버린다는 문제점이 있습니다. 따라서 다른 객체를 사용하고 싶어도 코드를 수정하기 전까지 사용할 수 없다는 문제가 생깁니다. 따라서 객체의 밖에서 객체를 넣어주는 방법을 사용하는데 이를 의존성 주입이라고 합니다. public class BugService { private final BugRepos..
시이지
'기술 스텍/Spring' 카테고리의 글 목록
상단으로