java
-
[CI/CD] Jenkins / GitLab / Docker / EC2 연동 (1/2)프로젝트/아카이뷰 2024. 1. 30. 21:02
SSAFY 2학기 프로젝트 "Archiview"를 Jenkins, GitLab, Docker, EC2를 이용해서 CI/CD를 구축해보겠다. [CI/CD] Jenkins란?Jenkins 왜 궁금했을까 ❓SSAFY 2학기 공통 프로젝트를 진행하면서 완성한 기능들을 매번 수동 빌드하여 배포하는 과정이 너무 번거롭게 느껴졌다. EC2 서버에서 소스 코드를 pull 받고 build하고 배포pslog.co.kr [Docker] Docker란?Docker 왜 궁금했을까 ❓SSAFY 2학기 공통 프로젝트를 수행할 때, CI/CD를 구성하기 위해서는 Docker, Docker compose를 사용해야만 하는 것을 확인했다. 그래서 업무 생산성을 향상시키기 위해 CI/CD 환경 구pslog.co.kr위 포스팅들을 통해 ..
-
[Spring boot] @Builder프로젝트/Share Your Trip 2024. 1. 14. 14:02
@Builder Annotation에 대해서 왜 궁금했을까❓- SSAFY 1학기 프로젝트 Validation, Swagger 등을 추가하며 리팩토링 하는 과정에서 대부분의 사람들이 @Builder를 이용하여 코드를 짜는 것을 보았다.- 많이 사용한다는 것은 이점이 있을 것이라 생각이 되었고 이번 기회에 학습하고 좋다면 리팩토링 과정에 추가해보려 한다. @Builder우선 @Builder 패턴으로 객체를 생성하면 좋은 점 4가지를 뽑을 수 있는데 살펴보도록 하자1. 필요한 데이터만 설정할 수 있다.// 1. Dummy Data InsertUser user = new User("cks._.hong", 0, 176)// 2. 생성자, 정적 팩토리 메소드를 추가하는 방법@NoArgsConstructor @Al..
-
[Spring boot] JPA(Java Persistence API)프로젝트/아카이뷰 2024. 1. 13. 19:38
JPA(Java Persistence API) 왜 궁금했을까❓SSAFY 1학기 프로젝트인 Share Your Trip을 할 때, MyBatis를 사용해서 DB에 Query를 날리곤 했는데 타입이나 변수명 등 Java 객체와 불일치 하는 경우가 많아 오류가 많이 발생했다. 꼼꼼하게 확인하며 개발을 하면 문제가 없을 것이지만 짧은 시간안에 많은 작업들을 하다보니 놓치는 부분이 생기기 마련이였다. 이러한 부분을 보완할 수 있는 ORM 기술이 있다는 것을 확인하였고 그 중 JPA를 학습해보려고 한다. JPA란 ❓JPA는 자바 진영에서 ORM 기술 표준으로 사용되는 인터페이스 모음을 뜻한다. 실제적으로 구현된 것이 아닌 구현된 클래스와 매핑을 해주기 위해 사용되는 라이브러리이다. JPA를 구현한 오픈 소스로는 H..
-
[Java] Wrapper 클래스프로젝트/Share Your Trip 2024. 1. 7. 13:15
Wrapper 클래스 왜 궁금했을까❓- Optional 클래스에 대해서 공부하는 과정에서 Wrapper 클래스의 개념이 나왔는데 몰랐던 개념이어서 공부하고 정리 해보려고 한다. Wrapper 클래스Java의 자료형은 기본 타입(primitive type)과 참조 타입(reference type)으로 나뉘는데 기본 타입을 객체로 다루기 위해서 사용하는 클래스를 Wrapper 클래스라고 지칭한다.기본 타입만 Wapper 클래스를 적용하는 이유는 boxing, unboxing 등 과정에서 발생하는 오버헤드때문에 성능 저하가 일어날 수 있기 때문이다. Wrapper 클래스의 종류기본 타입(Primitive)Wrapper 클래스byteByteshortShortintIntegerlongLongfloatFloatd..
-
[Java] Optional 클래스프로젝트/Share Your Trip 2024. 1. 6. 20:16
Optional 클래스 왜 궁금했을까❓- SSAFY 1학기 프로젝트를 리팩토링하기 위해 다른 사람들의 블로그를 참고해가며 Error Handling에 대해 공부를 하고 있었는데 Optional 클래스가 사용되는 것을 보았다.- 대부분의 포스팅들에서도 Optional 클래스가 사용되고 있었고 중요도가 높다고 생각이 들어 정리해보려고 한다. Optional 클래스Java 8에서부터 Optional 클래스를 사용하여 NPE(NullPointerException)이 발생하지 않도록 방지할 수 있는 Wrapper 클래스이다.public final class Optional { /** * Common instance for {@code empty()}. */ private static fi..