전체 글

코딩을 공부하는 대학생입니다. https://github.com/Hyeri1ee
구름톤 딥다이브 풀스택 11회차 1차 스터디 1회 정기모임팀원 팀빌딩 후, 각자 1주일동안 공부후 나누는 시간을 가졌다.알고리즘 풀이자바 (스프링 입문) 관련 cs 면접 알고리즘 풀이나는 알고리즘을 1182 백준을 풀었다. 그후, 이에 대해서 설명을 했는데 확실히 아직 백트래킹을 구현하는 데 있어서 능숙하지 않은 것 같다..다른 분 알고리즘 풀이한 분은 13023 ABCDE 문제를 푸셨고, 한 분은 프로그래머스 짝수합 문제를 푸셨다.두 문제 다 풀어봐야겠다.CS- 스프링 강의 이론 내용 면접1. 원시 자료형 종류 및 이에 대해 설명해 주세요 byte : 나이 short : 온도 int : 인구수 2. 원시 자료형 vs 참조 자료형 원시 자료형은 값 자체를 변수로, 참조 자료형은 주소값 3. 빈 다이아몬드..
· 스프링
문제JobFieldMap 개인 프로젝트 진행 중 크롤링 시 시간이 오래 걸리는 문제가 발생하였다. 만약 실제 서비스화된다면 페이지의 내용을 크롤링 하는데에 1분이 넘는 시간이 걸려서 불편한 상황이 이루어질 수 있다.기존 코드는 아래와 같다.(변경 이전 크롤링 코드)public List crollingAndSave() { String companyname; String recruitPosition; String reward; String source; String workDetail = ""; Path path = Paths.get(System.getProperty("user.dir"), "src/main/resources/chromedriver.exe"); Syste..
· 스프링
section531강. 대출 기능 개발하기32강. 책 반납 기능 개발하기33강. 조금 더 객체지향적으로 개발할 수 없을까?34강. JPA 연관관계에 대한 추가적인 기능들35강. 책 대출/반납 기능 리팩토링과 지연 로딩1. 대출기능 개발 - 새로운 테이블 생성현재 user, book 2개의 테이블이 존재한다. 하지만 이 2개의 테이블 만으로는 대출 기능을 만들 수 없다. 새로운 테이블 user_loan_history 이 필요하다.create table user_loan_history ( id bigint auto_increment, user_id bigint,book_name varchar(255), is_return tinyint(1), primary key (id))user_id : 어떤 유저가 빌렸는..
· 스프링
진도표 7일차와 연결됩니다우리는 JPA라는 개념을 배우고 유저 테이블에 JPA를 적용해 보았습니다. 몇 가지 문제를 통해 JPA를 연습해 봅시다! 🔥 문제1JPA(Java Persistence API) 는 자바 객체를 관계형 데이터 베이스에 영속적으로 저장하고 조회할 수 있는 ORM 기술에 대한 표준 명세를 의미한다.JPA 를 통해 SQL 쿼리를 작성하지 않고도 객체를 통해 데이터베이스를 조작할 수 있어 보수성이 향상된다.Entity 클래스를 작성한 후 Repository 인터페이스를 생성해야하는데, JpaRepository를 상속받도록 하면, 기본적인 쿼리 추가, 조회, 수정, 삭제, findAll(), findById() 등의 메서드를 사용할 수 있다.1) Entity 클래스 정의@Entitypub..
· 스프링
진도표 6일차와 연결됩니다우리는 스프링 컨테이너의 개념을 배우고, 기존에 작성했던 Controller 코드를 3단 분리해보았습니다. 앞으로 API를 개발할 때는 이 계층에 맞게 각 코드가 작성되어야 합니다! 🙂과제 #4 에서 만들었던 API를 분리해보며, Controller - Service - Repository 계층에 익숙해져 봅시다! 👍 controller, service, repository로 분리해보자.파일의 폴더 구조는 아래와 같다. controller, domain, dto, repository, service 폴더로 이루어져 있으며, 각각에 해당하는 파일들이 위치한다.FruitController.javapackage com.group.libraryapp.controller.fruit;i..
진도표 5일차와 연결됩니다우리는 라는 개념을 배웠습니다. 에 대한 감각을 익히기 위해서는 어떤 코드가 좋은 코드이고, 어떤 코드가 좋지 않은 코드인지 이론적인 배경을 학습하는 것도 중요할 뿐 아니라, 다양한 코드를 읽어 보며 어떤 부분이 읽기 쉬웠는지, 어떤 부분이 읽기 어려웠는지, 읽기 어려운 부분은 어떻게 고치면 좋을지 경험해보는 과정이 필요합니다.이번 과제는 제시된 코드를 읽어보며, 코드를 더 좋은 코드로 고쳐나가는 과정입니다. 구글에 “클린 코드” 혹은 “클린 코드 정리”를 키워드로 검색해보면, 이론적인 배경을 충분히 찾아보실 수 있습니다. 🙂 그러한 내용들을 보며 제시된 코드를 더 좋은 코드로 바꿔보세요! (코드를 바꿀 때 왜 바뀐 코드가 더 좋은 코드인지 다른 사람에게 설명하신다고 생각해보시..
· 스프링
진도표 4일차와 연결됩니다우리는 GET API와 POST API를 만드는 방법을 배웠습니다. 👍 추가적인 API 들을 만들어 보며 API 개발에 익숙해져 봅시다!문제1 : "과일 정보" 저장하는 api 생성FruitController, Fruit, FruitCreateRequest 파일을 아래와 같은 폴더 구조로 만들었다.그런데 (문제2)에서 id 값이 필요한 것을 보고, primary key로 id 를 추가 설정하였다.Fruit.javapackage com.group.libraryapp.domain;import java.time.LocalDate;public class Fruit { private String name; private LocalDate warehousingDate; p..
· 스프링
진도표 3일차와 연결됩니다우리는 JdbcTemplate을 사용하는 과정에서 익명 클래스와 람다식이라는 자바 문법을 사용했습니다. 익명 클래스는 자바의 초창기부터 있던 기능이고, 람다식은 자바 8에서 등장한 기능입니다. 다음 키워드를 사용해 몇 가지 블로그 글을 찾아보세요! 아래 질문을 생각하며 공부해보면 좋습니다! 😊 [키워드]익명 클래스 / 람다 / 함수형 프로그래밍 / @FunctionalInterface / 스트림 API / 메소드 레퍼런스 [질문]자바의 람다식은 왜 등장했을까?람다식과 익명 클래스는 어떤 관계가 있을까? - 람다식의 문법은 어떻게 될까? 자바의 람다식 등장 배경람다식이 등장하게 된 이유는 불필요한 코드를 줄이고, 가독성을 높이기 위함이다.현재 실습하고 있는 '도서관리 애플리케이션..
코딩신생아(0o0)
코딩신생아