본문 바로가기

백엔드/스프링+boot26

Service 모든 서비스 개발의 핵심. serivce. 여러방식이 있지만 가장 간단명료한 인터페이스 상속 방식을 활용하는 것을 최우선으로 해보겠다. private fianl로, 생성했던 todo repository를 받아서 사용한다. 이전 프로젝트에서는 service 어노테이션 대신 직접 의존성을 주입하였는데, 이번에는 어노테이션을 활용하여 service가 사용할 레퍼지토리가 무엇인지를 명확히 제시 하였다. 해당 메소드가 , service의 주된 사용을 알려주는 예시라고 생각하여 이를 블로그에 올려본다. 가장 먼저 db에 들어갈 entity를 생성한다. id는 자동생성으로 pk로 사용하였기 때문에 따로 set하지 않고, 나머지 칼럼들을 set한다. 그 후 return이 핵심 내용이 되는데, toDoEntity는 ad.. 2023. 12. 21.
Repository dbms와 data를 주고 받기 위한 인터페이스를 정의한 부분. 저장소라는 직독 직해, 하지만 실제 데이터 저장 케이스가 아닌, 데이터를 주고받는 인터페이스 이다. entity를 생성하였따면, 이값을 넣거나, 조회하거나 등의 활동을 진행하는 것이 서비스이다. 이를 어떻게 할것인지 정의하는 계층이다. java의 extends(하나은행 코딩테스트 시험에 나왔던걸 기억하자) 를 활용하여 JpaRepository를 상속받아 실행한다. 이전 프로젝트 로그인에서 간단하게 jparepository를 상속받아 사용한 경험을 바탕으로 , 해당 코드를 사용했다. 이와 같이 레퍼지토리 구현자체는 굉장히 쉽고, 이를 왜 사용하는지 학습이 중요한 것 같다. *인터페이스 학습중 질문이 생겼다. 이와 같은 코드에서 , todore.. 2023. 12. 21.
구현 레이어로 분할하는 이유? 레이어에서 EX) 서비스는 서비스만을 한다. 코드를 찾거나, 코드가 꼬이는 위험을 방지한다. 다른 레이어에 영향을 주지 않기 때문에, 수정관리가 용이하다. 1. 모델 개발 도메인의 각각의 오브젝트이다. @data -> lombok에서 제공한다. getter ,setter, 접근자, 생성자등이 자동으로 생성된다. @entity -> entity로 사용함을 의미 . entity, table 다 약간의 차이가 있지만 크게는 table로 인식하자. @NoArgsConstructor 명시 선언된 생성자 없이 생성된다. public class Person { private String name; private int age; public Person(){} } @AllArgsConstruc.. 2023. 12. 20.
java version 안맞을때 수많은 자바 버전을 쓰다보면 버전이 안맞아서 JNI ERROR가 뜨는 경우가 존재한다. 1. 설정 - GRADLE 버전과 + 프로젝트 structure+ 2. 프로젝트의 SDK 의 버전이 모두 맞아야 프로젝트가 정상 작동한다. 3. SPRING.IO로 받은 경우에는, 해당 버전과도 일치해야 한다. 2023. 12. 20.
인텔리제이 사용 spring.io에서 이미 외부 라이브러리가 다 완료된 형태로 다운받아 사용할 수 있다. 그러나 사용중에 의존성을 추가해야할 경우도 분명히 생길것인데, 이때는 maven repository에서 gradle 혹은 사용하는 툴에 따라 의존성 코드를 확인하고, gradle을 다시연결하여 reload(자동으로 되는 것 같다) 하여 외부 라이브러리를 사용할 수 있다! 시간이 소요되는 작업이다. 급하게 하지 말고 의존성 주입하고 나서 기다리자. lombok같은 경우, 플러그인을 설치하고, 이를 설정에서 다시 사용까지 1. plugin - > lombok 설치 2. 실행, 배포 에서 어노테이션프로세서에서 이를 실행하는 방식으로 진행 후 사용한다. 2023. 12. 20.
인텔리제이 배우기 / 단축키 it학과생으로써 , 여러가지 기술을 사용하는 것이 남이 보이게 멋있어 보이고 아는 척을 하기도 쉽다는 것을 많이 접했다. 인텔리제이가 아닌 메모장으로 사용해도 되며, 매 회사 마다 다를 것이다. 허나, 인텔리 제이가 손에 완벽히 익은 개발도구가 되기 위해 해당 페이지를 작성하였다. 왼쪽에 제공되는 프로젝트 창 : 로그인 구현시 왔다갔다하기 굉장히 번거로웠는데 alt+1으로 순식간에 이동할수 있다. (esc시 프로젝트 창으로 돌아옴) 직접 안들어가도 , 프로젝트에서 스페이스를 누르면 미리볼수있다. ctrl+tab으로 파일 이동 가능. 파일 생성도 단축키가 존재하나, 무분별한 생성을 방지하기 위해 이는 사용하지않을 것이다. ctrl+방향키. 한글자씩 이동하지 않고 단위별 이동을 진행한다. 주석처리! 굉장히 .. 2023. 12. 20.