분류 전체보기

· Spring
💋 빈 스코프란? 빈 스코프는 빈이 존재할 수 있는 범위를 뜻한다. 스프링에서 기본으로 제공하는 빈은 싱글톤 빈이다! 싱글톤 빈은 스프링 컨테이너 생성 시에 생성되고, 애플리케이션 종료(스프링 컨테이너 종료)까지 스프링 컨테이너를 통해 관리된다. 별도의 설정을 통해서, 빈이 존재하는 범위를 변경할 수 있다. 💋 빈 스코프의 종류 스프링에서 제공하는 빈 스코프 종류는 아래와 같다. 1. 싱글톤 스코프 기본 스코프 스프링 컨테이너 생성 시 함께 생성되고, 애플리케이션 종료까지 유지되는 가장 넓은 범위의 스코프 가장 일반적으로 사용 (거의 대부분의 경우에 사용한다고 보면 된다!) 2. 프로토타입 스코프 빈의 생성과 의존관계 주입까지만 하고, 더는 스프링 컨테이너를 통해 관리하지 않는 경우에 프로토타입 스코프를..
· TIL/2023
💋 오늘 공부한 내용 스프링 강의를 봤다. 오늘 공부한 내용은... 빈 생명주기 콜백! 데이터베이스 커넥션 풀 연결 같이 빈 생성과 초기화를 분리하거나, 커넥션 끊기와 같이 빈 소멸 시의 동작을 지정해야 할 때 사용한다. 생명주기 따라서 생성 직후, 소멸 직전에 대한 내용을 지정할 수 있는데 세 가지 방법이 있음 인터페이스(InitializingBean, DisposableBean) 사용하는 방법, 설정 파일 사용하는 방법, 어노테이션 사용하는 방법(@PostConstruct, @PreDestroy) 인터페이스는 구리고, 가능하면 어노테이션, 외부 라이브러리 코드라 불가능하면 설정 파일 통해서 구현하자 빈 스코프! 기본적으로는 싱글톤으로 관리되기 때문에 빈은 스프링 컨테이너 생성 시에 같이 만들어지고 스..
· Spring
💋 빈 생명주기 콜백 스프링에서 빈을 최초에 생성하는 작업을 크게 본다면 '생성'이라고 할 수 있겠지만, 상세히 구분한다면 생성과 초기화 작업으로 나눌 수 있다. 생성자를 통해서 내부 값들을 설정하는 가벼운 작업의 경우에 생성자에서 처리하는 것이 좋겠지만, 초기화 작업이 무거워지는 경우도 존재한다. 예를 들면.. 데이터베이스 커넥션 풀 관련해서 애플리케이션 시작 시점에 모든 연결을 하고, 종료 시점에 모든 연결을 종료하는 작업이 있다. 이런 무거운 작업의 경우에는 객체 생성과 초기화에 대한 부분을 완전히 분리하는 것이 좋을 때도 있다. 객체의 초기화와 종료를 위한 별도의 작업이 필요한 경우에 콜백 메서드를 사용할 수 있다. 스프링은 의존 관계 주입이 완료되면, 초기화 콜백 메서드를 통해서 초기화 작업을 ..
💋 소통이 잘 되고, 문서화를 잘 하는 팀원 아직 내가 어떤 개발자가 되고 싶다는 뚜렷한 목표는 없다! 늘 팀에 기여하는 기분을 느끼면서 살고싶다. 나는 우테코에서 가장 개발 공부 기간이 짧다. 따라서 인프라에 익숙하지도 않고, 아직 특출나게 코드 작성이 뛰어나지도 않다. 따라서 이번에는 "팀원 전체가 공통된 설계를 동기화할 수 있도록, 원활한 협업을 위해 소통이 잘 되고, 문서화를 잘 하는 팀원" 포지션이 되기로 다짐했다. ✔ 회의 전에 할 일을 정리한다. 첫 회의 때 다들 큰 준비를 하지 않은 것 같아서, 오늘 무엇을 해야 하는지 목표에 대해서 먼저 정리했다. 원래 내 목표는 함께 인수테스트를 작성하는 것이었지만 안드로이드가 인수테스트에 능숙한 것 같지는 않아서, 함께 API를 설계하는 것을 목표로 ..
⭐ 레벨2 인터뷰를 준비하며 약 두 달 간의 레벨2 과정을 마치고, 다시 레벨 인터뷰가 왔다. 내가 공부한 내용들을 정리해보는 글이다. 💋 레벨 도중 진행한 미션에 대한 회고 웹 자동차 경주 회고 [우테코] 웹 자동차 경주 1단계 회고: 안녕 스프링? Spring을 처음 만난 2일간의 기록 스프링을 처음 접하게 되어 굉장히 혼란스러운 이틀이었다...! 처음으로 공식문서도 열심히 읽어보고, 지식을 쓸어담기 위해서 노력했던 것 같다. 나의 코드 저장소와 PR 링크를 먼저 첨부한다! engineerinsight.tistory.com 장바구니 미션 1단계 회고 [우테코] 장바구니 미션 1단계 회고(feat. 현구막): 우당탕탕 스프링 공부하기! 자세한 내용은 목차 💋 코드 저장소 1단계 Pull Request ..
· Spring
이 포스팅은 내 생각을 담은 내용이므로 참고만 해주세요! 💋 Repository VS DAO 아래와 같은 레거시 코드를 만났다. CartItem 테이블에 접근하기 위해 만들어진 CartItemDao에서 다른 member, product 테이블을 join한 쿼리를 보내고 있었다. 1. Repository에서, 하나의 테이블에만 접근하는 DAO에, 여러 번의 쿼리를 보내고, 반환된 entity 정보를 바탕으로 도메인 객체로 조립 [CartItemDao] @Repository public class CartItemDao { private final JdbcTemplate jdbcTemplate; public CartItemDao(JdbcTemplate jdbcTemplate) { this.jdbcTemplat..
· TEST
💋 RestAssured란? RestAssured는 자바를 기반으로한 API 테스트 프레임워크 RESTful API를 테스트하기 위한 라이브러리 중 하나로, API 요청과 응답에 대한 테스트가 가능하다. RestAssured는 테스트할 API의 요청과 응답을 쉽게 파싱하고 검증할 수 있는 다양한 메서드와 기능을 제공한다. ✔ RestAssured에서 사용되는 메서드 given() : 요청을 설정하는 메서드 요청 URI, 헤더, 쿠키, 요청 바디 등을 설정 when() : 요청을 수행하는 메서드 요청 메서드(GET, POST, PUT, DELETE 등)를 설정 then() : 응답을 검증하는 메서드 응답 코드, 헤더, 바디 등을 검증 extract() : 응답에서 값을 추출하는 메서드로, JSON 응답에서..
· Spring
💋 인트로 스프링으로 프로젝트를 진행하던 중 Application을 실행했는데 아래와 같은 에러를 만났다. *************************** APPLICATION FAILED TO START *************************** Description: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that's listening on port 8080 or configure this application to listen on another port. 8080 포트가 이미 사용중이라 애플리케이션을 실행할 수 없다는 말! application.propert..
· TIL/2023
💋 오늘 공부한 내용 드디어 배포를 처음 하게 되고 혼란에 빠진 지 4일 째 되는 날! 갑자기 뭔가 깨달았다. 아무래도 어제 히히의 테코톡 명강의를 들은 덕분인 듯?!?! 덕분에 오늘 토미의 강의에서, 가상 클라우드에 대한 이야기와, 여태까지 어떤 포트는 접근이 되고, 어떤 포트는 접근이 안되는지에 대한 이야기까지 완벽하게 이해했다. 어제 주노한테 github organization이라는 것을 배웠는데, 곧바로 따라해봤다. 근데 나 정리벽이라 그런가 너무 만족도가 높음.... 그래서 관련된 내용 포스팅도 함!!! 이번 미션에서는 팀 내 주노와 같은 포지션이 되기로 결심함. 바로바로 체계적인 문서화와 소통을 잘 하는 사람! 그래서 안드로이드 팀과 협업 할 때, 서로 같은 생각을 하고 있는지 친절하게 확인하..
· Git
💋 인트로 팀 미션을 진행하던 도중, 우테코 백엔드 크루 주노로부터 Organization을 사용한다는 이야기를 들었다. 필자는 굉장한 정리벽이 있는 사람으로, 우리 팀의 결과물이 과정부터 차곡차곡 의미있는 형태로 모인다는 점이 정말 매력적이어서 곧바로 따라했다. 어제 15분 동안 배웠는데, 오늘 포스팅을 할 수 있을 정도로 어렵지 않은 내용이다! 여기가 내가 만든 Organization의 링크이다! starlight-shopping-order starlight-shopping-order has 2 repositories available. Follow their code on GitHub. github.com 이번 미션을 통해서 한 번 진행해보고, 어떤 점이 좋았는지에 대해서 회고로 포스팅할 예정! 이..
깃짱
'분류 전체보기' 카테고리의 글 목록 (27 Page)