TIL을 매일 써야 되는데, 한번 빼먹기 시작하니깐 매일 쓰는 게 조금 힘들어졌다. 그래도 1주일에 2~3번 이상은 쓰도록 하겠습니다! 최종 프로젝트가 시작됐다. 캠프에서 직무분석과 설문을 겸해, 자신이 이 캠프를 수료하고 몇 개월 만에 취업이 될지 예상하는 질문이 있었다 1~6개월 이렇게 고르는 칸이 있었다. 나는 아직 실력이 부족하고 10월에 해외여행이 예정되어 있으며, 내년에 4학년을 다니려고 생각하고 있다. 하지만 좋은 기회가 있거나 내가 정말 가고 싶은 회사라면 하루빨리 취업하고 싶다. 내일 배움 캠프도 약 1달 정도 남았다. 이 캠프에서 아쉬운 점은, 개발자라면 코딩 테스트와 알고리즘, 자료구조가 중요하다는 것을 알고 있지만, 공개적으로는 면접 준비만 강조된다는 것이다 물론 면접 준비와 C..
TIL
최종 프로젝트 전 심화 프로젝트라고, 단기 프로젝트가 시작됐다. 심화가 끝나고 바로 다음날부터 최종 프로젝트인데굳이 이 짧은 시간에 심화 프로젝트를 넣은 게 조금 의아하긴 하다. "협업 도구를"만드는 것이다.원래 프런트를 구현하지 않고, 백엔드만 구현 후 포스트맨이나 intellij에서 직접 테스트하는 형식으로 진행했지만이번에는 프런트를 구현하라고 하셨다. 시간도 주말 빼고 약 3~4일인데, 이 시간 안에 이게 되나?라고 생각을 했다.아래는 조건이다. ❗ 공통 조건기능은 프론트엔드 UI를 통해 실제로 사용할 수 있어야 합니다.키워드 : Thymeleaf, React, Vue.js etc사용자 인증 기능 공통 조건username, password를 클라이언트에서 전달 받습니다.Spring Security와..
오늘 모의면접을 봤다.면접은 공통 질문 2개 + 선택 질문 2개 + cs 질문 1개 이렇게 공지를 해주셨다.아래는 내가 준비하고 정리한 질문들이다. 이 질문들이 정답은 아니다! 그냥 외우려고 쓴것뿐 ----------JPA에서 Lazy Loading과 Eager Loading의 = 특징 및 차이점 / 각각의 장단점에 대해 설명해 주세요. 특징 및 차이점과 각각의 장단점 지연 로딩은 필요한 시점에 데이터를 로드하고, 즉시 로딩은 엔티티가 로드될 때 즉시 데이터를 로드합니다. 지연 로딩은 초기 로딩 시 db 쿼리를 최소화하고, 메모리 효율성이 좋아지는 장점이 있고, 단점은 n+1문제가 발생할 수 있습니다. 즉시 로딩의 장점은 한 번에 모든 데이터가 로드되어 쿼리 최적화가 되며, 코드가 단순해집니다. 하지만 ..
쿼리 파일 만들기 (QueryMapper)✔️ Query Mapper를 사용하여 SQL 쿼리를 관리하는 방법을 배웁니다. 별도의 쿼리 파일을 통해 SQL을 관리함으로써 코드의 가독성과 유지보수성을 높입니다.MyBatis 란?📌 MyBatis 는 RowMapper 가 가지고있는 단점인 “반복되는 코드”를 줄이고 “함께있는 프로그램 코드와 쿼리 코드를 분리하여 관리”하고 싶은 니즈를 반영하여 탄생하였습니다SQL Mapper 두번째 주자로 MyBatis 탄생반복적인 JDBC 프로그래밍을 단순화 하고싶다.SQL 쿼리들을 XML 파일에 작성하여 코드와 SQL 을 분리 하고싶다.MyBatis 특징jdbc로 처리하는 코드의 설정(Connection) 부분을 줄이고 실제 sql문에 연결함으로서 빠른 개발이 가능하게 ..
트랜잭션데이터베이스의 상태를 변화시키기 위해서 수행하는 작업의 단위를 말합니다.요리로 치면 조리대를 의미하며 재료(데이터)들을 조회하여 생성/수정/삭제 후 최종 결과물을 만들때까지 하나의 작업을 트랜잭션으로 관리 할 수 있으며, 트랜잭션은 조리(데이터 처리) 중에 문제가 발생시 그전에 했던 변경을 아무일 도 없던것처럼 모두 되돌립니다.트랜잭션의 3가지 특징 (원자성, 일관성, 독립성)원자성 (All or Nothing)트랜잭션이 데이터베이스에 모두 반영되던가, 아니면 전혀 반영되지 않아야 한다는 것이다.트랜잭션은 사람이 설계한논리적인 작업 단위로서, 일처리는 작업단위 별로 이루어 져야 사람이 다루는데 무리가 없다.만약 트랜잭션 단위로 데이터가 처리되지 않는다면, 설계한 사람은 데이터 처리 시스템을 이해하..
팀 프로젝트가 끝났다. 다음 프로젝트 시작전까지 약 2주라는 시간이 있다. 이 시간동안 강의와 밀린 문법 + 개인과제할게 산더미다. 정말 열심히 이 시간을 잘써야 최종 프로젝트때 내가 배운 지식들을 잘 갈아 넣을 수 있을것이다. 3 Layer Architecture란?1. Controller클라이언트의 요청을 받는다요청에 대한 로직 처리는 Service에게 전담Request 데이터가 있다면 Service에 같이 전달Service에서 처리 완료된 결과를 클라이언트에게 응답함2. Service사용자의 요구사항을 처리 ('비즈니스 로직') 하는 실세 중에 실세따라서 현업에서는 서비스 코드가 계속 비대해지고 있다DB 저장 및 조회가 필요할 때는 Repository에게 요청3. RepositoryDB 관리 (연..