Spring (7) 썸네일형 리스트형 [회고록] SpringBoot에 AI 서비스 도입기 나는 다양한 프로젝트에 AI 서비스를 도입했다. 졸업작품에서는 교수님의 추천과 매칭 서비스의 고도화, 해커톤에서는 애초에 주제가 AI 해커톤이였고, 후원사가 NCP라서 Clova AI를 활용해야했고, 다른 프로젝트 역시 Clova AI를 도입했다. 좀 지난 일이긴 하지만 AI를 어떤 방식으로 적용했는지 기록하고자 한다. 1. ChatGPT(OpenAI)첫째로 아주 잘 알고있는 OpenAI의 ChatGPT이다. https://platform.openai.com/docs/overview 위의 링크에 들어가보면 아주 친절하게 API문서 부터 어떤 모델이 있고 Playground에서 예시로 모델을 사용해볼 수 있다. 나는 해당 API를 졸업작품때 도입했기 때문에 그때는 없던 신기한 기능들도 있다..(TTS, .. [회고록] Docker 그리고 Docker-Compose를 이용한 배포 3학년2학기에 나는 졸업작품을 시작했다. 내 포지션은 백엔드였고 어느정도 기능을 구현하고 프론트엔드와 API를 연동을 할때 처음에는 배포 환경을 구성하지 않아서 프론트엔드 팀원들은 백엔드의 코드를 Clone받거나 .Zip 형태로 다운받아서 서버를 실행한 후 API 연동을 테스팅했었다.. 지금 생각해보면 정말 말도 안되는 일이지만 그때는 어떻게 인스턴스를 만들고 어떻게 배포하는지 몰랐을 때라 그랬다. 결국 이렇게 불편한 환경속에 작업하다가 처음으로 GCP의 VM 인스턴스를 만들고, Docker와 Docker-Compose를 이용해서 배포 환경을 구성하였다.. Docker 일단 Docker란 무엇이고 왜 사용하는걸까? 여기 한명의 서버 개발자(A씨)가 있다고 예를들어보자. 이 A씨와 프론트엔드 개발자 한명이.. (5주차)(Mac) Spring 댓글 구현 저번에 게시판 CRUD를 구현한 후 이번에는 댓글 CRUD를 구현했음. ㄱㄱ 패키지 구조 이거보세요! 댓글도 게시판과 비슷하게 request dto에는 Create, Update를 나누고 response dto에는 List로 받아올 ListResponse, 단건으로 받아올 Response로 구성 Comment Entity package com.study.study.entity; import jakarta.persistence.*; import lombok.*; import org.hibernate.annotations.OnDelete; import org.hibernate.annotations.OnDeleteAction; import org.hibernate.annotations.Where; import.. (Mac) (4주차) post CRUD 코드 수정 저번 스터디에 코드 피드백받은것을 기준으로 수정을 해봤다. 객체지향 원칙에 준수하여 클래스 하나는 하나의 책임만 갖도록 한다는 SRP원칙을 생각하며 다시 수정을 해봤다. 패키지 구조이다. 전체적으로 바뀐점은 dto패키지의 세분화, Mapper클래스, Post 엔티티 코드수정 등이 있겠다. 먼저 post 엔티티이다. package com.study.study.entity; import jakarta.persistence.*; import lombok.*; import org.hibernate.annotations.Where; import org.springframework.data.annotation.CreatedDate; import org.springframework.data.annotation.Las.. (Mac) JPA를 활용한 게시판 CRUD 구현 3주차는 만들어진 테이블을 기반으로 하여 게시판(Post)만 CRUD를 하는 공부를 했다. Repository, Controller, Dto, Service 를 설계했다. 우선은 PostRepository를 만들었다 package com.study.study.repository; import com.study.study.entity.Post; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; @Repository public interface PostRepository extends JpaRepository { } 게시판의 저장소를 Jpa레포지토리를 상속.. (mac) [GDSC] Spring 스터디 2주차 - ERD설계 및 JPA를 활용한 데이터생성 2주차 스터디는 게시판, 댓글의 ERD를 설계하고 Spring에서 구현 후 JPA를 이용해 데이터 생성 및 ERD를 띄우는 겁니다. 일단 저는 게시판, 댓글의 ERD를 draw.io 에서 설계하다 user라는 테이블이 있으면 더 좋겠다고 생각이 들어 user또한 추가적으로 만들어보았습니다. - 추후에 문제가 되면 수정하면 되니까.. 사실 ERD설계는 학교 데이터베이스 수업때 제외하고 거의 한 적이 없어 가물가물했습니다... 아마도 어딘가 틀린 내용이 있을 것 같은 느낌..? ERD설계 할 때마다 느끼는건데 머리가 아주 어질어질하다는점ㅋㅋ ERD ERD입니다. 첫번째로 user(사용자) 테이블입니다. 기본키 필드는 userId이며 타입은 Long, sql의 auto-increment를 사용할 예정입니다. .. (Mac) Spring 스터디 (1) - spring과 mysql 연동하기 spring 과 mysql을 연동해봐요! 우선 스프링 부트 프로젝트를 다운받겠습니다 https://start.spring.io/ 일단 저는 Dependencies 에 Lombok, Spring Web, JPA만 넣었습니다. 그리고 인텔리제이로 프로젝트 빌드하면 프로젝트 다운은 끗 두번째로 mysql을 설치해야겠어요 아마 installer로 설치하거나 터미널 사용해서 설치하는 방법이 있는데 저는 터미널로 설치하겠슴다 터미널 실행 Homebrew설치 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" Homebrew 경로 추가 # zshrc에 homebrew path 추가 $ echo 'e.. 이전 1 다음