728x90
728x90
해당 내용은 '코드로 배우는 스프링 웹 프로젝트' 책을 공부하면서 정리한 내용입니다. 프레임 워크는 '뼈대나 근간을 이루는 코드들의 묶음' 이라고 할 수 있다. 스프링은 인기 있는 프레임워크이다. 많은 프레임워크 중에서도 스프링 프레임워크가 인기있는 이유는 아래와 같은 스프링의 차별성 때문이다. 복잡함에 반기를 들어서 만들어진 프레임워크 엔터프라이즈급 프레임워크들의 가장 큰 문제는 복잡하다는 것이었다. 많은 케이스를 처리할 수 있고 다양한 기능을 가지다보니 하나의 기능을 위해 너무 많은 구조가 필요한 상태였다. 이러한 복잡성을 해결하기 위해서 나온 경량화된 프레임워크가 스프링이다. 일반적인 Java의 클래스와 인터페이스를 이용하는 구조여서 진입 장벽이 높지 않고, 복잡한 프레임워크에 비해 가벼워 빠르게 ..
Gradle 5.x 버전에서 Lombok이 실행되지 않는 현상이 있다. 이전에도 다른 프로젝트를 진행하다가 결국 그래들을 4.X 버전으로 다운그레이드하게 만들었다... 이번에 공부하면서 해결책을 찾아서 적용해보고자 했다. 아래의 사이트에서 제시한 방법이 롬복이 제대로 실행되게하였다. 참고: https://eblo.tistory.com/70 2019031801-Spring boot에서 Gradle 5.x 빌드 시 Lombok 관련 컴파일 오류 처리 환경 - gradle-5.2.1 - spring boot 2.1.3.release - jdk 1.8 - eclipse Gradle 빌드시 Lombok으로 처리하던 getter, setter, log 쪽이 모두 컴파일 오류가 납니다. 구글 검색을 해보고 annot..
매일 사용하고 있음에도 가장 무지한 부분이 아닌가 생각한다. 어쩌면 가장 기초적인 내용임에도 불구하고 잘 모르고 썻던 것 같다. 개발 서적에 자주 언급되는 J2EE, J2SE(백엔드 공부를 하다보니 J2SE를 더 자주 접했던것 같기는 하다)가 어떤 것인지 간략히 정리해본다. J2EE : 위키백과 링크 자바 플랫폼, 엔터프라이즈 에디션 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 자바 플랫폼, 엔터프라이즈 에디션(Java Platform, Enterprise Edition; Java EE)은 자바를 이용한 서버측 개발을 위한 플랫폼이다. Java EE 플랫폼은 PC에서 동작하는 표준 플랫폼인 Java SE에 부가하여, 웹 애플리케이션 서버에서 동작하는 장애복구 및 분산 멀티티어를 ..
JPA가 제공하는 기능은 크게 엔티티와 테이블을 매핑하는 설계 부분과 매핑한 엔티티를 실제 사용하는 부분으로 나눌 수 있다. 엔티티 매니저는 엔티티를 저장, 수정, 삭제, 조회하는 등의 엔티티와 관련된 모든 일을 처리한다. 이름 그대로 엔티티를 관리하는 관리자다. 이제부터 엔티티 매니저를 자세히 알아보자. (구현에 관련된 부분은 이전에도 언급했던 것처럼 '하이버네이트'를 기준으로 진행한다) 엔티티 매니저 팩토리와 엔티티 매니저 데이터 베이스를 '하나'만 사용하는 애플리케이션은 일반적으로 EntityManager Factory를 '하나'만 생성한다(데이터베이스를 여러개 사용하는 경우도 있을 것인데 그럴경우에는 팩토리도 그 갯수만큼 늘어난다고 추측할 수 있을 것 같다). 아래는 엔티티 매니저 팩토리를 생성하..
메이븐이나 IDE (eclipse, IntelliJ ..etc)를 설치하는 방법도 소개가 되어있지만 이는 생략하는 것으로 한다. 또한 메이븐이아닌 그래들을 사용해도 무방하다. (나는 오히려 그래들을 애용하기에 그래들을 사용할 것이다) H2 데이터베이스 설치 예제는 MySQL이나 오라클 데이터베이스를 사용해도 되지만 설치하는 부담이 크다. 따라서 설치가 필요 없고 용량도 1.7M로 가벼운 H2 데이터베이스를 사용하겠다. 참고로 데이터베이스는 자바가 설치되어 있어야 동작한다. (실제로 테스트 용도로 로컬 환경 테스트까지 H2 데이터베이스를 사용하기도 한다, 로컬 상황에서는 상황에따라서 MySQL이나 Oracle 같은 상용 데이터베이스를 사용할 수도있고 H2 데이터베이스를 사용할 수도 있다, 주로 테스트 용도..
T아카데미에서 김영한님의 JPA 강의를 수강하였고, JPA에 큰 관심을 두게되었다. 그래서 모 개발자의 '자바 ORM 표준 JPA 프로그래밍' 책을 공부하면서 정리하기로 하였다. 우리는 어떤 프로젝트를 진행할 때, 어떤 데이터를 저장하고 조회해야하는 경우가 잦다. 데이터 베이스에는 관계형 데이터 베이스(RDB)와 최근에는(최근이라는 표현이 맞는지는 잘 모르겠다) No SQL이라 불리는 비관계형 데이터 베이스 또한 많이 쓰이고있다. (No SQL은 직접 공부해본적이 없어서 잘 모르겠지만) 관계형 데이터베이스는 가장 대중적이고 신뢰할 만한 안전한 데이터 저장소다. 그래서 자바로 개발하는 애플리케이션은 대부분 관계형 데이터베이스를 데이터 저장소로 사용한다. 데이터 베이스를 관리하려면 SQL을 사용해야 한다. ..