본문 바로가기
공부일지 _ 데일리

2023.01.01 - 스프링 - 김영한

by secret9 2023. 1. 1.

1. JPA를 쓰면 mybatis 같은 기술을 안 쓸 수 있다

 

hibertnate (JPA의 벤더사 중 1개, JPA 인터페이스의 구현체)를 보통적으로 많이 쓴다. 

 

java 쪽에 @Entity, @Id, @GeneratedValue 같은 어노테이션으로 JPA을 쓸 수 있게 연결시킨다.

@Transactional (테스트코드에 들어있을 때는 자동으로 롤백된다. 테스트 코드가 아니면 커밋되고)

 

스프링에서 JPA 인터페이스를 쓰면 초기값으로 하이버네이트를 구현체로 사용한다.

 

김영한님이 실제 다양한 시스템에서 JPA가 사용되고 있다고 하니. JPA를 선택하는게 필수라고 하신다.

 

============

 

-스프링 데이터 JPA를 쓰면 개발생산성이 많이 증가한다고 한다.

 

2023년 기준으로도 스프링 부트 + JPA 기술은 기본 세팅이라고 한다.

 

- JPA를 먼저 학습하고 "스프링 데이터 JPA"학습을 권하신다.

 

===============

 

2022년 기준 

 

백엔드는 스프링부트, JPA가 있으면 꽤 최신 기술스택을 쓰고 있다고 볼 수 있다.

 

여전히 프리랜서 포지션 찾아보면 대부분 시스템들이 스프링 + 네이티브 쿼리(mybatis, ibatis) 조합을 쓴다.

 

프론트엔드는 react, vue js를 쓰면 최신 기술 셋이라고 볼 수 있다.

 

프로젝트 고를 때 이왕이면 최신 기술을 쓰는 곳을 가는게 좋다.

 

=============

 

가끔씩 정말 오래되고 개판인 시스템은 스프링마저도 안 쓰는 곳도 있다....

 

=============

 

JPA도 네이티브 쿼리를 사용할 수 있게 열어두었다.

 

//그래서 너무 복잡한 쿼리는 네이티브로 쓰면된다.(queryDsl)

 

고도화할 때 너무 걱정하지 않아도 안된다.

 

====

 

스프링부트는 편리해진 스프링이라고 보면 된다. //큰 차이는 없다. 

 

편리성의 차이 정도

 

=============

 

 

'공부일지 _ 데일리' 카테고리의 다른 글

2023.01.17 http with 김영한  (0) 2023.01.17

댓글