Java 17

[Spring] 팀프로젝트 - trello (스파르타코딩클럽)

프로젝트 이름 : trello 프로젝트 인원 : 4명 프로젝트 기간 : 5일 프로젝트 내용 : Trello에서 제공하는 기능들을 직접 구현해 보는 프로젝트다. 가입한 회원을 대상으로 프로젝트를 관리할 수 있는 보드, 칼럼, 카드를 만들 수 있으며, 다른 회원을 초대하여 협업을 할 수 있다. 프로젝트 구현 기능 사용자 인증 기능 프로필 관리 기능 비밀번호 변경 기능 보드 CRUD 기능, 유저초대 기능 컬럼 CRUD 기능 카드 CRUD 기능 소셜 로그인 (카카오톡, 지메일) 프론트엔드 개발 와이어프레임 ERD 역할 분담 시연영상 1조 시연영상 / - YouTube 소스코드 https://github.com/SonMyungJi/trello GitHub - SonMyungJi/trello Contribute t..

프로젝트 2023.08.17

[Spring] 팀프로젝트 - 밖에서 오늘 뭐하지? (스파르타코딩클럽)

프로젝트 이름 : 밖에서 오늘 뭐 하지? 프로젝트 인원 : 4명 프로젝트 기간 : 5일 프로젝트 내용 : 소문자 'e'인 사람들을 위한 프로젝트. 오늘 할 활동을 찾는데 도움을 준다. 프로젝트 구현 기능 사용자 인증 기능 프로필 관리 기능 비밀번호 변경 기능(이전 비밀번호 매칭) 게시물 CRUD 기능 댓글 CRUD 기능 좋아요(게시글, 댓글) 기능 소셜 로그인 팔로우 기능 프론트엔드 개발 프로필/게시글에 이미지 첨부 기능 백오피스 개발 : 조회수, 공감, 댓글수, 좋아요 가 나오는 페이지 생성 와이어프레임 ERD 역할 분담 시연영상 file.notion.so/f/s/e9502c09-80ac-407e-805e-c033fc295d75/발표_시연_영상.mp4?id=4d4bca0c-3230-4c90-8e43-b..

프로젝트 2023.07.24

[Spring] 개인프로젝트 - 게시판, 댓글, 좋아요 (스파르타코딩클럽)

프로젝트 이름 : gunwooklv4 프로젝트 인원 : 1명 프로젝트 기간 : 3일 프로젝트 내용 : 게시글 CRUD, 댓글 CRUD, 좋아요 기능이 있는 백앤드 API 프로젝트 구현 기능 회원가입 기능 로그인 기능 전체 게시글 조회 기능(댓글도 함께 조회) 게시글 작성, 수정, 삭제 댓글 작성, 수정, 삭제 Spring Security 적용 게시글 삭제 시 연관 댓글, 좋아요 삭제 게시글 좋아요 기능 댓글 좋아요 기능 API 소스코드 https://github.com/gunwooknam2023/gunwooklv4 GitHub - gunwooknam2023/gunwooklv4: Spring Lv4 Spring Lv4. Contribute to gunwooknam2023/gunwooklv4 developm..

프로젝트 2023.07.13

[Spring] 팀프로젝트 - Pettalk (스파르타코딩클럽)

프로젝트 이름 : Pettalk 프로젝트 인원 : 4명 프로젝트 기간 : 5일 프로젝트 내용 : 반려 동물에 대한 일상, 정보 공유 사이트 (프론트앤드 미구현) 프로젝트 구현 기능 회원가입 기능 로그인 및 로그아웃 기능 프로필 수정 기능 게시글 작성, 조회, 수정, 삭제 기능 뉴스피드 페이지 기능 댓글 작성, 조회, 수정, 삭제 기능 좋아요 기능 와이어프레임 API 역할 분담 소스코드 https://github.com/gunwooknam2023/petTalk GitHub - gunwooknam2023/petTalk Contribute to gunwooknam2023/petTalk development by creating an account on GitHub. github.com 느낀점 팀프로젝트를 하면..

프로젝트 2023.07.13

[Spring] 스파르타코딩클럽 Spring공부(6) - OAuth, 단위테스트, 통합테스트, 예외처리관리

카카오 로그인 탄생배경 - 모든 웹 사이트에서 회원가입을 거치는 것은 사용자에게 부담이 된다. 매번 번거로운 회원가입 과정을 수행해야 할 뿐 아니라, 웹사이트마다 다른 아이디와 비밀번호를 기억해야 한다. 또한 웹사이트를 운영하는 측에서도 역할이 부담이 된다. 이런 문제를 해결하기 위해 OAuth를 사용한 소셜 로그인이 등장하게 됐다. OAuth OAuth는 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로써 사용되는, 접근 위임을 위한 개방형 표준입니다. 사용자가 애플리케이션에게 모든 권한을 넘기지 않고 사용자 대신 서비스를 이용할 수 있게 해주는 HTTP 기반의 보안 프로토콜이다. 카카오 로그인 사..

[Spring] 스파르타코딩클럽 Spring공부(5) - Validation, Entity 관계

Validation Spring에서는 null 확인 뿐 아니라 문자의 길이 측정과 같은 다른 검증 과정도 쉽게 처리할 수 있도록 Bean Validation을 제공하고 있다. - 간편하게 사용할 수 있는 여러 애너테이션을 제공해 준다. @NotNull - null 불가 @NotEmpty - null, "" 불가 @NotBlank - null, "", " " 불가 @Size - 문자 길이 측정 @Max - 최댓값 @Min - 최솟값 @Positive - 양수 @Negative - 음수 @Email - E-mail 형식 @Pattern - 정규 표현식 implementation 'org.springframework.boot:spring-boot-starter-validation' 위 코드를 build.gra..

[Spring] 스파르타코딩클럽 Spring공부(4) - 인증/인가, 쿠키/세션, 필터

Bean 수동등록 Bean 수동 등록은 어제 사용될까? 기술적인 문제나 공통적인 관심사를 처리할 때 사용되는 객체들을 수동으로 등록하는 것이 좋다. - @Component를 사용하면 @ComponentScan에 의해 자동으로 스캔되어 해당 클래스를 Bean으로 등록해 준다. - 일반적으로 @Component를 사용하여 Bean을 자동등록으로 하는 것이 좋다. Bean 수동등록이 사용되는 경우 - 공통 로그처리와 같은 비즈니스 로직을 지원하기 위한 부가적이고 공통적인 기능들을 기술 지원 Bean이라 부르고 수동등록 한다. - 비즈니스 로직 Bean보다는 그 수가 적기 때문에 수동으로 등록하기 부담스럽지 않다. - 수동등록된 Bean에서 문제가 발생했을 때 해당 위치를 파악하기 쉽다는 장점이 있다. @Con..

[Spring] 스파르타코딩클럽 Spring공부(3) - 3 Layer Architecture, JPA

3 Layer Architecture - 한 개의 클래스에 너무 많은 양의 코드가 존재할때 이해하기가 어려울때 - 코드의 추가 혹은 변경 요청이 곗고 들어올때 - 문제가 발생했는데 해당 클래스를 구현한 개발자가 퇴사하여 유지보수가 어려울때 위와 같은 상황에서 문제를 해결하기 위해 서버 개발자들은 서버에서 처리과정이 대부분 비슷하다는 것을 깨닫고, 처리과정을 크게 Controller, Service, Repository 총 3개로 분리하였다. Controller - 클라이언트의 요청을 받는다. - 요청에 대한 로직 처리는 Service에게 전담한다. (Request 데이터가 있다면 함께 전달) - Service에서 처리 완료된 결과를 클라이언트에게 응답한다. Service - 사용자의 요구사항을 처리(비즈..

[Spring] 스파르타코딩클럽 Spring공부(2) - 데이터의 전달방식과 SQL

Jackson Jackson은 JSON 데이터 구조를 처리해주는 라이브러리 - Spring은 3.0 버전 이후 Jackson과 관련된 API를 제공한다. - Object를 JSON타입의 String으로 변환이 가능하다. - JSON 타입의 String을 Object로 변환이 가능하다. Path Vairable Client 즉, 브라우저에서 서버로 HTTP 요청을 보낼 때 데이터를 함께 보낼 수 있다. - 서버는 데이터를 받아 사용해야 하는데 데이터를 보내는 방식이 한 가지가 아니라 여러 가지가 있기 때문에 모든 방식에 대한 처리 방법을 학습해야 한다. - 데이터를 받기 위해서는 /star/{name}/age/{age} 이처럼 URL 경로에서 데이터를 받고자 하는 위치의 경로에 {data} 중괄호를 사용한..

[JAVA] 개인프로젝트 - 키오스크 프로그램 (스파르타코딩클럽)

프로젝트 이름 : 키오스크 프로그램 프로젝트 인원 : 1명(본인) 프로젝트 기간 : 2일 제공된 목록으로는 필수요구사항, 선택요구사항, 출력화면의 예시가 제공되었다. 요구사항에 나와있는 틀에 맞춰 클래스는 총 4개로 제작하였다. Main.java는 자유적으로 제작하였다. MainMenu.java는 상품명, 상품가격, 상품설명과 다양한 메서드를 제작하였다. FoodMenu.java는 상품의 정보를 저장하고 이름, 가격, 설명등을 리턴해줄 수 있도록 제작하였다. Order.java는 장바구니 역할을 하고, 주문대기번호, 사용자에게 총가격을 알려줄 수 있도록 제작하였다. Main.java Main.java이다. 간단하게 MainMenu 클래스에 대한 인스턴스변수만 선언해준후 MainMenu클래스 안의 show..

프로젝트 2023.06.05
프로필사진

남건욱's 공부기록

반응형