일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 가상화
- HTTP
- 자바
- 도커
- vm
- 컨테이너
- mysql
- JPA
- computer science
- 배포
- Java
- CI/CD
- 스프링 배치
- spring boot
- spring cloud
- 스프링
- 스프링 부트
- virtualization
- Spring
- Container
- CS
- 백엔드
- 영속성 컨텍스트
- 웹 서버
- ORM
- 데이터베이스
- spring batch
- Spring Security
- web server
- 스프링 시큐리티
- Today
- Total
목록Java (14)
개발 일기

이전 게시글에서 스프링 생태계에 대해서 알아봤는데 Spring Framework의 3대 특징인 Spring 삼각형에 대해서 공부해보고자 한다. Spring 삼각형 위 사진이 바로 유명한 Spring 삼각형이다. Spring의 핵심 특징인 3대 특징이다. POJO는 IoC/DI, AOP, PSA를 통해서 달성할 수 있다는 것을 의미한다. 이제 하나씩 알아보자 POJO(Plain Old Java Object) 기반의 구성 우선 POJO부터 알아보자. POJO는 이전 게시글 스프링의 등장 배경에서 마틴 파울러는 EJB에 오래된 방식의 "오래된 방식의 간단한 자바 오브젝트로 돌아가자"라는 말이 기원이라고 했었다. 조금 더 자세한 일화를 봤는데 마틴 파울러가 2000년에 콘퍼런스 발표를 준비하다가 만들어낸 용어인..

이전 게시글에서 어떻게 Spring이 등장하게 되었는지 알게 됐는데 Spring, Spring Framework, Spring Boot 등 이런 용어들이 각각 어떻게 다른 건지 Spring의 생태계에 대해 먼저 이해할 필요가 있다고 생각했고 그래서 도대체 그놈의 스프링이 어떻게 되어있는지 생태계에 대해 먼저 이해해보고자 한다. Spring 생태계 우선 결론부터 말하자면 Spring안에 Spring Boot, Spring Framework, Spring Data, Spring Security 등이 포함된 것였다. 스프링 공식 문서에 들어가보면 관련 프로젝트들이 쭉 나열된 것을 볼 수 있다. 즉, Spring은 여러 기술(프로젝트)들의 모음이라고 보면 된다. 여기서 핵심이자 중심은 스프링 프레임워크이고 나머..

내가 이제부터 백엔드 개발에 사용하고자 하는 Spring 프레임 워크가 어떻게 탄생하게 됐는지부터 알아봤다. Spring 공식 문서를 참고했다. Spring이 등장하기 이전에는? Spring이 등장하기 이전 2000년대 초반 등장한 EJB (Enterprise Java Beans)가 있었다. EJB는 자바 표준 기술으로 지금으로 따지면 Spring과 JPA등을 모두 합쳐 놓은 종합 선물 세트 같은 것이였다고 한다. 컨테이너, 트랜잭션, 분산 처리 지원 그리고 보안 등 고급 기술들이 편하게 지원됐으며 또한 `Entity Bean`이라는 ORM 기술도 보유하고 있었다. 덕분에 개발자는 비즈니스 로직에만 집중할 수 있게 된다. 위와같이 이론적인 부분은 굉장히 좋았는데 왜 Spring이 등장하게 됐을까? 복..

처음 특정 언어를 배울때 "Python, JavaScript는 인터프리터 언어이다.", "C, C++ 등은 컴파일 언어이다." 이런식으로 분류하는 경우를 봤었는데 그냥 그렇게 알기만 알았지 이것에 대해 깊게 생각해보진 않았다. 또한 이전 게시글에서 자바 소스 코드가 JDK의 자바 컴파일러인 javac에 의해 바이트 코드로 변환되고 그 바이트 코드는 인터프리터에 의해 해석되거나 JVM에서 JIT 컴파일러를 통해 기계어로 변환한다고 했었다. 이때 JVM은 바이트 코드를 해석하고 실행하는 인터프리터 역할을 수행하고 JVM 내부의 JIT 컴파일러를 통해서도 바이트 코드를 기계어로 변환한다고 했다. 이렇게 컴파일러와 인터프리터가 어떤 차이가 있는지 자바에서 왜 JIT 컴파일러를 도입했고 JIT 컴파일러에 대해서도..

군대가기전 대학교 2학년 처음 자바를 접할때 부터 자바하면은 JDK, JRE, JVM 이런 용어들이 무진장 나왔고 비슷 비슷한 단어에 혼란이 있었지만 그 당시에 문법 익히기에 급급했던 터라 기본적인 것을 놓치고 학습했던 것같다. 이번에 확실히 정리해두자. JDK (Java Development Kit) JDK는 자바 개발키트 Java Development Kit의 줄인 말로 개발자들이 자바로 개발하는 데 사용되는 SDK이다. 그래서 JDK안에는 자바를 개발 시 필요한 라이브러리들과 javac, javadoc 등의 개발 도구들을 포함되어 있고, 개발을 하려면 자바 프로그램을 실행도 시켜줘야 하기 때문에 뒤에서 배울 JRE(Java Runtime Environment)도 함께 포함되어 있다. Developm..

Express에서 이제는 Spring Boot 프레임워크를 사용해보기 위해서 Java 언어 자체에 대해서 기본적으로 알고 넘어가야 할 것들이 있다고 생각하여 정리해보며 나의 Spring Boot 공부가 시작됐다. 자바(Java)란? 1991년 6월 Sun Microsystems에서 근무하는 소규모 엔지니어 팀(James Gosling, Arthur van Hoff 등)의 "Oak"라는 프로젝트로 탄생 초기 목표는 C++을 확장하여 가전제품 등 소형기기에 탑재될 소프트웨어를 제작하는 거였으나 C++로는 한계를 느껴 새로운 언어를 개발하기에 이름 1995년 여러 종류의 OS에서 사용하는 컴퓨터들이 통신하는 인터넷이 등장하자 이를 고려하여 운영체제에 독립적인 Oak가 적합하다고 판단하여 이를 인터넷에 적합하도..