본문 바로가기

분류 전체보기

(172)
24.01.15 뉴스피드를 마치며... 주말에 살짝 작업을 추가로 했는데, 먼저 @ApiResponse를 집어넣어서 오류코드의 예시들을 보여주려고 했는데, 넣어야 하는 오류코드도 많은데다가 직접 모든 오류코드를 하나씩 넣으려 하다보니 너무 많은 시간이 지났다. 거기다 404 코드가 떠야 하는 상황에 403 코드가 뜬다던가 하는 일이 겹치자 이걸 넣으면 오히려 발표할때에 방해가 될수도 있겠다는 생각이 들어서 결국 피눈물을 흘리며 원상복구를 해야만 했다. 그래서 그 다음엔 @parameter를 추가했다. 이걸 추가하면 fun updateSong(@PathVariable albumId: Long, @PathVariable songId: Long, @RequestBody songUpdateDTO: SongUpdateDTO): ResponseEntit..
24.01.12 뉴스피드 5 오늘은 발표를 대비한 회의를 했는데, 발표자료를 어떻게 할지 논의하다가 기존에 올린 s.a랑 비교해서 새로운 s.a를 만들기로 했다. 거기서 나는 api를 수정하고 와일드 프레임을 새로 만들기로 했다. 초기 기획이랑은 다르게 이것저것이 많이 추가되었기 때문이다. erd는 다른 분이 수정하기로 했다. 이것이 최종 erd이고 이것이 최종 와이어프레임이다. 작업을 끝마친 뒤엔 팀장님이 https://blog.jiniworld.me/156#a02-1 이사이트를 이용해 api화면을 다듬으라고 하셔서 그 작업에 착수했다. 1.@Tag @Tag(name = "Album", description = "앨범 API") 이걸 컨트롤러에 넣으면 스웨거에서 album-controller이라고 나왔던 녀석이 이렇게 깔끔하게 변..
24.01.11 뉴스피드4 package com.example.codingsonyeondan.domain.songs import com.example.codingsonyeondan.domain.album.model.Album import com.example.codingsonyeondan.domain.songs.dto.SongDTO import jakarta.persistence.* @Entity @Table(name = "song", schema = "public") data class Song( @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") val id: Long = 0, @Column(name = "title") var title: S..
24.01.10 뉴스피드 3 이상하게 dto는 DTO로해야 인식을 잘하는것 같다. Dto가 아니라 DTO다. 새 브런치 만들고 풀 리퀘스트 하는법 git checkout -b 새브랜치 이름 git add . git commit -m"메시지" git push origin 새브랜치이름 하고 깃허브에 가서 생성된 브랜치를 누르고 풀 리퀘스트를 누르고 main이 아니라 dev로 바꾸면 된다. 그리고 그뒤론 평범하게 add .이랑 commit를 하면 된다. 그리고 다른사람의 브랜치를 받아올때엔 git pull origin 브랜치이름 하면 된다. @Id @GeneratedValue(strategy = GenerationType.IDENTITY) 아이디는 이렇게 해야한다. id를 데이터베이스에 맡기겠다는 뜻이다. override fun upda..
24.01.09 뉴스피드2 우선 대강 song를 완성해서 그걸 팀장님이 완성한 album에 병합시켜 보기로 했다. 먼저 git에 올라온 파일을 받으려면 git merge를 한 다음 git pull origin dev를 해야 하는데, error: Your local changes to the following files would be overwritten by merge: src/main/resources/application.yml 라는 에러가 뜨게 되었다. 알아보니 내가 dev를 수정했기 때문에 그걸 업로드 한 뒤에 받아야 한다고 한다. 그래서 git add .과 git commit -m "메시지" 이걸 먼저 하고, 그 뒤에 git pull origin dev를 하니 됬다. 참고로 어데 올렸던 S.A에 대한 피드백이 왔는데, ..
24.01.08 뉴스피드 만들기 오늘은 뉴스피드를 제작하는 팀프로젝트를 시작했다. 가수들의 앨범과 그 안의 곡들을 소개하는 뉴스피드를 만들어 보기로 했는데, 와이어프레임 제작과 곡에대한 것들을 만들기로 했다. 이걸 더 상세하게 말하자면, 팀장님의 주도(거의 혼자서 다 하셨다)로 api, erd를 만들었는데, 나 혼자할때랑은 내용도 정확도도 차원이 달랐다. 마치 모범으로 삼아도 될정도였다. 그리고 남은 팀원들은 각자 와이어프레임을 제작했는데, 메인화면, 앨범생성, 곡 상세페이지, 회원가입을 만들고 앨범상세페이지, 로그인 페이지, 그리고 그것들을 하나로 합쳐주는 작업은 다른 팀원분들이 해주셨다. 그리고 역할이 앨범제작, 곡제작, 댓글제작, 유저제작으로 나눴는데, 그중 앨범과 연계되는 곡 제작을 맡게 되었다. 그리고 본격적인 팀프로젝트 제작..
24.01.05 과제 해설 오늘은 과제의 완벽한 견본이 올라와서, 그걸 알아보기로 했다. package com.teamsparta.todo.todocards import com.teamsparta.todo.replies.Reply import jakarta.persistence.* import org.hibernate.annotations.CreationTimestamp import java.time.ZonedDateTime @Entity class TodoCard( @Id @GeneratedValue(strategy = GenerationType.IDENTITY) var id: Long? = null, @Column val title: String, @Column val content: String, @Column val aut..
24.01.04 과제 계속 먼저 Task랑 Comment를 연결하려면, @Entity class Task( // 기타 필드 @OneToMany(mappedBy = "task") val comments: List = listOf() ) @Entity class Comment( // 기타 필드 @ManyToOne @JoinColumn(name = "task_id") val task: Task ) 할일 하나에 댓글들을 연결해야하니 할일은 OneToMany, 댓글은 ManyToOne으로 연결해야 한다. @Entity data class Task( @Id @GeneratedValue(strategy = GenerationType.IDENTITY) var id: Long? = null, var title: String = "", var co..