⚡Spring JPA (Java Persistence API) JPA는 자바 진영에서 ORM(Object-Relational Mapping) 기술 표준으로 사용되는 인터페이스의 모음이다. ⚡ORM ORM(Object-Relational Mapping)은 객체와 관계형 DB를 매핑한다는 뜻 객체-관계 매핑의 줄임말이다 ORM을 이용하면, SQL문이 아닌 클래스의 메소드를 통해서 데이터베이스를 조작 가능하다. 개발자가 객체 모델만 이용해서 프로그래밍을 하는데 집중이 가능하다. 단점이 있다면, 신중하게 설계가 필요하다. 프로젝트의 복잡성이 커지는 경우 잘못된 구현으로 인해서 속도 저하 및 일관성이 없는 문제점이 생길수 있다. 구형 SQL문이라던지 대형 SQL문의 경우 속도측면에 따라서 별도의 튜닝이 필요하기 ..
⚡ 들어가기전 개발을 진행 하면서, 핵심 로직을 작성한 뒤에 공통적으로 따라오는 부분이 존재 하면서 AOP를 공부하게 되었다. 예를 들어서 특정 로직이 실행이 된 경우 이력을 남기는 부분, 특정 로직이 완료된 경우 서버에 프로토콜을 넘기는 경우 매번 동일한 공통 로직을 적어줘야되는 부분이 생겼다. 나처럼 특정 로직이 완성된 경우에 공통로직이 발생하는 경우도 있겟지만, 로직의 시작전, Exception이 떨어진 경우등 특정 시점에 적용시키는 것도 가능하다. ⚡ Spring Boot AOP (Aspect Oriented Programming) 측면 / 양상 지향적인 프로그래밍 관점 지향 프로그램이다. 중복된 코드를 떼어내서 분리하고 각각의 Method가 자신의 일에만 집중하게 해준다. 쉽게 설명하면 핵심 로..
⚡Jenkins 사용시 참조 사항 정리 WSL2 IP가 계속 변경이 되는 경우, 유동적으로 해당 서버의 IP를 찾아가도록 설정 하는 방법. 해당 작업을 하기전에 PowerShell의 스크립트 실행시 외부코드 수행 권한 확인 필요❗ > Get-ExecutionPolicy 위의 이미지와 같은 경우, 외부 코드가 실행되지 않도록 설정이 되어있는 것이다. 확인 하지 않고 스크립트를 실행하는 경우 정상적으로 적용된것으로 보이지만 실제 적용이 되지 않아서 이슈를 찾기가 매우 힘든 상황이 발생하니 확인이 필요하다. PowerShell 정책 변경 정책 옵션의 경우 여러가지가 있으니 한번 찾아봐야함. > Set-ExecutionPolicy Unrestricted 위의 정책의 경우 정책을 무제한으로 설정하는 옵션이다. 옵..
⚡Jenkins CI(Continuous integration), CD(Continuous Delivery) 지속적인 통합과 지속적 배포 환경을 구축하기 위한 도구이다. 빌드, 테스트, 배포 프로세스를 자동화하여 소프트웨어 품질과 개발 생산성을 높인다. ⚡설치 unbuntu 실행 및 ubuntu 업데이트 진행 > sudo -s > apt-get update > apt-get -y install apt-transport-https ca-certificates curl gnupg-agent software-properties-common > apt-get update JAVA 및 Jenkins 설치 JDK의 경우, 8이상을 설치 해야함. > sudo apt-get install openjdk-8-jdk > ..
⚡wsl2(windows Subsystem for Linux 2) 설치 윈도우 터미널(Windows Terminal) 설치하기 설치된 이후, 리눅스를 쓰기 위한 윈도우 이미지 추가 작업 진행. > dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart > dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart 설치가 완료된 이후, 리눅스를 사용하기 위해서는 Ubuntu를 설치 해야한다. ubuntu 설치가 완료되면 터미널이 실행 되며, 리눅스 계정 및 패스워드를 설정 하면 된다. 설치시 대략 5..
⚡기본 개념 정리 WSL (Windows Subsystem for Linux) Window 환경에서 리눅스 환경처럼 사용 가능 하도록 가능하게 하는 하위 시스템. (예전처럼 Window에서 VM과 같은 도구를 사용하여 리눅스를 사용했던것과 달리 훨씬 더 빠르고 효율적으로 사용 가능하다.!) WSL의 경우는 Window 10 에서 동작 하며, wsl2의 경우 Window 버전에 따라서 지원 여부가 결정되니 확인 필요. (Windows 2004(20H1) Version 이상) https://docs.microsoft.com/ko-kr/windows/wsl/ Linux용 Windows 하위 시스템 설명서 Linux용 Windows 하위 시스템 설명서의 개요입니다. docs.microsoft.com CI / C..