본문 바로가기

개발 관련 공부139

git-flow 전략, Jira 활용하기 git flow master: 제품으로 출시될 수 있는 브랜치 develop: 다음 출시 버전을 개발하는 브랜치 feature: 기능을 개발하는 브랜치 release: 이번 출시 버전을 준비하는 브랜치 hotfix: 출시 버전에서 발생한 버그를 수정하는 브랜치 커밋, 푸시 전에 풀 하는 습관을 들이자. 충돌을 방지할 방법들 - 다른 사람이 작성한 코드 건들지 않기 - 풀을 통한 동기화 자주하기 - 커밋, 푸시 생활화 - master,develop 브랜치에 직접 push 자제(대신 mr 달리기) Jira 활용 jira: 이슈 추적 소프트웨어 1. 백로그에서 스프린트 생성 2. 스프린트에 이슈 등록 3. 생성된 이슈에 스토리 포인트 설정 4. 스프린트 시작 5. 이슈 관리 6. 스프린트 종료 백로그: 프로젝.. 2023. 1. 12.
JPA 개요 ORM jpa를 알기 위해선 먼저 orm을 알아야 한다. ORM = Object Relational Mapping 의 줄임말. 말 그대로 자바와 테이블을 자동으로 매핑해주는 기술이 ORM이다. ORM을 이용하면 쿼리문 작성이 아닌 코드(메서드)로 데이터를 조작할 수 있다. ORM의 장점 쿼리문 작성이 줄어 개발비용 줄어듦 객체지향적으로 db에 접근할 수 있어 가독성 좋아짐 ORM을 통해 매핑된 객체는 모두 독립적으로 작성되어 있어 재사용이 용이함 데이터베이스에 대한 종속성이 줄어들어 비교적 적은 리스크를 부담 ORM의 단점 복잡한 서비스를 쿼리 없이 구현하기 어려움 복잡한 쿼리를 정확한 설계 없이 ORM만으로 구성하게 되면 속도 저하 등 성능 문제가 발생할 수 있다. JPA JPA= Java Persis.. 2022. 11. 2.
[스프링 기본] 9. 빈 스코프 빈 스코프란? 말 그대로 빈이 존재할 수 있는 범위 스프링은 아래 스코프들을 지원한다. 싱글톤: 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다. 프로토타입: 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않는 매우 짧은 범위의 스코프이다. 웹 관련 스코프 request: 웹 요청이 들어오고 나갈때 까지 유지되는 스코프이다. session: 웹 세션이 생성되고 종료될 때 까지 유지되는 스코프이다. application: 웹의 서블릿 컨텍스트와 같은 범위로 유지되는 스코프이다 싱글톤 프로토타입 리퀘스트 정도 알면 된다. 스프링 빈은 기본적으로 싱글톤 스코프로 생성된다. @Scope("prototype") @Component publ.. 2022. 10. 17.
[스프링 기본] 8. 빈 생명주기 콜백 빈 생명주기 콜백 시작 초기화 작업은 의존관계 주입 후에 일어나야 한다.(주입되기 전이라면 null일테니까..) 종료 작업 또한 할 일을 다 마친 후에 안전하게 진행되어야 한다. 스프링은 생명주기 콜백을 지원해 개발자가 적절한 시점에 초기화, 종료 작업을 할 수 있도록 한다. 스프링 Bean의 이벤트 라이프사이클 스프링 컨테이너 생성 → 스프링 빈 생성 → 의존관계 주입 → 초기화 콜백 → 사용 → 소멸전 콜백 → 스프링 종료 스프링은 크게 3가지 방법으로 빈 생명주기 콜백을 지워한다. 인터페이스(InitalizingBean, DisposableBean) 설정 정보에 초기화 메서드, 종료 메서드 지정 @PostConstruct, @PreDestory 어노테이션 지원 (권장되는 방법) 인터페이스 Inita.. 2022. 10. 14.
[스프링 기본] 7. 의존관계 자동 주입 다양한 의존관계 주입 방법 생성자 주입 수정자 주입 필드 주입 일반 메서드 주입 생성자 주입 @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) { this.memberRepository = memberRepository; this.discountPolicy = discountPolicy; } 지금까지 해왔던 방식 스프링 빈의 경우, 생성자가 딱 1개만 있으면 @Autowired를 생략해도 자동 주입 된다. 생성자 호출시점에 딱 1번만 호출되는 것이 보장된다. 불변, 필수 의존관계에 사용. (=현재 memberRepository,discountPolicy를 set해주는 함수는 .. 2022. 10. 14.
[스프링 기본] 6. 컴포넌트 스캔 컴포넌트 스캔과 의존관계 자동 주입 시작하기 지금까지는 @Bean을 사용해서 스프링 빈을 일일히 등록했다. 하지만 등록해야할 스프링 빈이 많아지면 귀찮고 누락 문제도 많이 발생한다. 그래서 스프링은 설정 정보가 없어도 자동으로 스프링 빈을 등록하는 컴포넌트 스캔이라는 기능을 제공한다. 또 의존관계를 자동 주입하는 @Autowired도 제공한다. AutoAppConfig라는 클래스를 만들자. @Configuration @ComponentScan( excludeFilters = @Filter(type = FilterType.ANNOTATION, classes = Configuration.class)) public class AutoAppConfig { } @Configuration에 더해 @Component.. 2022. 10. 12.
반응형