본문 바로가기

Backend - Java Spring/Spring Core21

[Spring 김영한] SpringBoot 공부를 위한 세팅 1. frontend / backend 디렉터리를 구분해서 세팅 - Spring Initializr 로 SpringBoot 프로젝트 생성! - CRA로 React-TS 프로젝트 생성! 2. 기술Stack을 정리한다. 3. 프론트와 백엔드 첫통신 - 첫 컨트롤러 - 첫 apiClient - 첫 fetch - CORS 허용해주기 : Spring Security 를 안쓰는 공부프로젝트니까 그냥 전역허용 - data 받아서 렌더링해보기 - 성공! 2024. 2. 11.
[Spring 김영한] 기본예제 만들어보기 (서비스) 1. 서비스 만들기 - 디렉토리를 자주 만들어야하는 특성 상 나는 shift + command + P 를 사용해서 만들어야지! - /service/MemberService 를 만들어준다 - 참고 : command + option + V 누르면 알아서 리턴으로 바꿔준다 개꿀 - 위와같이 작성해준 후 이런 경우 method로 뽑아내는 것이 좋다 - 참고 : Command + Option + M 누르면 메서드 추출이 가능하다. - MemberService 전체를 다음과 같이 정리한다. 2. 회원 서비스 테스트 - 클래스에서 커맨드 + . 누르고 테스트 생성을 통해 편하게 생성할 수 있다. - 꿀팁 : 테스트케이스는 그냥 한글로 해도 상관 없다. 이거 좋네 - given - when - then 문법 사용하기 .. 2023. 11. 21.
[Spring 김영한] 기본예제 만들어보기 (리포지토리) 1. 비즈니스 요구사항 정리 - 데이터 : 회원ID, 이름 - 기능 : 회원 등록, 조회 - 가상의 시나리오 (DB 선정되지 않음) 2. 웹앱의 계층구조 - 컨트롤러 : 웹MVC의 컨트롤러 - 서비스 : 핵심 비즈니스 로직을 구현한 계층 - 리포지토리 : DB에 접근, 도메인 객체를 DB에 저장하고 관리 - 도메인 : 비즈니스 도메인 객체 3. 클래스의 의존관계 - MemberService : 서비스 구현 - MemberRepository : 인터페이스 - MemoryMemberRepository : 메모리모드로 메모리에 저장해서 DB를 대신하는 구현체 4. 회원 도메인과 리포지토리 만들기 - /domain/Member.class 에 멤버객체를 만들어줌 - /repository/MemberReposito.. 2023. 11. 21.
[Spring 김영한] Spring 웹개발 기초 1. 정적 컨텐츠 (전통.html) - 'resources/static/' 에서 자동으로 제공한다. 2. MVC와 템플릿 엔진 (SSR) - MVC : Model View Controller - Controller : 내부적 로직처리 , @Controller 어노테이션이 들어간거. class 파일 - View : 렌더링만 하기 위함, Template 엔진 파일 (thyme 같은거) - HelloController 에 컨트롤러 추가해서 파라미터받아보기 - 이 패턴의 핵심은 html을 template 엔진으로 조작해서 조작된 html을 클라이언트에게 보내준다는 것 3. API (React/Vue) (CSR) - 쉽게 말해 데이터만 보내준다 - 실질적으로 제일 중요함 - HelloController에 추가해본.. 2023. 11. 10.
[Spring 김영한] Java Spring 시작하기 1. start.spring.io - spring 시작하게 해주는 사이트 - 꿀이니까 그냥 쓰자 - Gradle : 요새는 Gradle이 대세 - SpringBoot : 버전은 좋은걸로 - Group : 회사명 - Artifact : 프로젝트명 - Dependency : Spring Web, Thymeleaf(템플릿 엔진) - GENERATE해서 gradle파일 프로젝트로 오픈 2. 실행 - 실행 누르면 8080으로 톰캣으로 실행된다 - 8080은 젠킨스가 잡고있는데..? 그래서 바꿔보자 - application.properties 파일은 Node의 .env 파일이라고 이해하면 된다. - 이렇게 넣어주고 실행하면 9090 실행 완료! 3. View 환경설정 - `resources/static/index... 2023. 11. 10.