본문 바로가기

분류 전체보기237

[카카오테크캠퍼스] 스프링이란, 의존성, http로 정보 주고받기 라이브러리와 프레임워크라이브러리를 사용하는 애플리케이션 코드는 애플리케이션 흐름을 직접 제어한다. 작동 중에 기능이 필요할 때만 능동적으로 사용한다.프레임워크는 개발자가 만든 클래스에 대한 제어 권한을 넘겨받아서 주도적으로 애플리케이션의 흐름을 제어한다. 개발자가 만든 클래스의 오브젝트를 생성하고 실행하는 일은 프레임워크에 의해 진행된다 스프링은 객체지향적인 코드를 짜게 해준다. 의존성일반적으로 애플리케이션에서 요구하는 다양한 기능들은 여러개의 의존성을 필요로한다.의존성을 주입하는 방법은 build.gradle에서   testImplementation platform('org.junit:junit-bom:5.9.1')Junit BOM (Bill of Materials): JUnit 테스트 라이브러리의 다.. 2024. 6. 25.
[멋쟁이 사자처럼] level10 구현 이번엔 level 10만 구현하면 되지만 양이 엄청 많다.. Member package backend.likelion.todos.member;import java.util.Optional;import org.springframework.stereotype.Repository;@Repositorypublic interface MemberRepository { // TODO [10단계] JpaRepository를 상속받습니다. // TODO [10단계] 아래는 기존 코드입니다. 컴파일 오류가 발생하고 있는데, 이를 해결하세요. Optional findByUsername(String username);} JpaRepository를 상속받는다. 이 때 제네릭타입을 명시해주어야한다.또한 인터페이스.. 2024. 5. 20.
[멋쟁이 사자처럼] level7~9 구현 오랜만에 클론코딩 과제가 나왔다... level7 은 모두 구현이 되어있었다! level8 GoalService public Long save(String name, String color, Long memberId) { // TODO [8단계] memberId로 회원을 조회하고, 조회에 실패하면 "회원 정보가 없습니다." 예외를 발생시키세요. Member member = memberRepository.findById(memberId) .orElseThrow(() ->new NoFoundException("회원정보가 없습니다.")); // TODO [8단계] 조회된 회원 정보를 사용하여 새 Goal 객체를 생성하세요. Goal .. 2024. 4. 30.
[카카오테크캠퍼스] 카카오테크캠퍼스 백엔드 2기 합격! 이번에 학교에서 카카오테크캠퍼스를 한다고 해서 현재 접하고 있는 분야인 백엔드로 지원하였다.두 단계의 선발과정을 거치고, 거의 잊고 살았지만 발표날인 4월 1일이 되니까 좀 긴장됐었다.... 결과는 합격!! 나를 포함한 거의 모든 전공자들이 백엔드로 지원하기도 했고, 취업준비하시는 분들도 많아서 안될수도 있겠다고 생각했는데 돼서 놀랐다. 사실 이렇게 기업에서 주최하는 활동들에 많이 지원해봤는데 합격한 건 이번이 처음인 것 같다. 그동안의 노력을 인정받은 것 같아서 뿌듯했다 : ) 합격하신 분들 보니까 예상대로 다들 대단하신 분들이라 앞으로 뒤쳐지지 않도록 열심히 해야겠다고 다짐했다! 카테캠 다음 기수에 지원하고자 하시는 분들을 위해서 선발과정을 간단하게 설명하자면 크게 자소서랑 코딩테스트가 있다.  1... 2024. 4. 4.
[나머지공부] 어노테이션이란? 멋쟁이사자처럼 정기세션을 하면서 점점 이해하기 힘든 내용이 많아졌다. 그 이유를 알아보고자 앞에서부터 배운 내용을 점검했을 때 어노테이션을 정확히 몰라서 많은 것을 놓치고 있다는 것을 깨달았다. 어노테이션이란? 어노테이션은 사전적 의미로는 주석이라는 뜻이다. 자바에서 사용될 때의 어노테이션은 코드 사이에 주석처럼 쓰여서 특별한 의미, 기능을 수행하도록 하는 기술이다. 즉, 프로그램에게 추가적인 정보를 제공해주는 메타데이터(meta data: 데이터를 위한 데이터)라고 볼 수 있다. 우리가 흔히 사용하는 주석은 코드에 대한 내용을 개발자에게 설명하지만, 어노테이션은 컴파일러에게 설명한다. 어노테이션의 기능은 다음과 같다. 컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공 소프트웨어 개발툴이 빌드나.. 2024. 4. 3.
[멋쟁이사자처럼] level6 구현 벌써 4주차라니!!! 이번 과제는 이전에 해왔던 클론코딩을 하는 것이다. AuthArgumentResolver @Overridepublic boolean supportsParameter(MethodParameter parameter) { // TODO [6단계] parameter가 @Auth 어노테이션을 갖고 있고, 파라미터 타입이 Long.class인 경우 true를 반환하는 조건을 구현하세요. if (parameter.hasParameterAnnotation(Auth.class)){ if(parameter.getParameterType().equals(Long.class)){ return true; } } return false;} 파.. 2024. 4. 2.