전체 글

Dev/Spring

[Lombok ] 클래스 단위로 @Builder 사용시 주의점

클래스 단위로 @Builder 사용시 필드를 전부 초기화 하지 않으면 예상하지 못한 일이 생길수도 있다. @Entity @Builder public class Book { @Id @GeneratedValue @Column(name = "book_id") private Long id; @Column(name = "book_name") private String name; @Column(name = "book_isbn") private String isbn; @Enumerated(EnumType.STRING) @Column(name = "book_category") private BookCategory category; @OneToMany(mappedBy = "book") private List posts ..

Dev/git(hub)

gitignore 반영안됨 문제 해결

분명히 application.properties 무시하라 했는데 깃헙에는 반영이 안됐다. 캐시가 문제된거라 한다. git rm -r --cached . git add . git commit -m "fixed untracked files" 이렇게 쳐서 다 지우고 다시 git add -A 한뒤 커밋하고 푸시하면 된다. 근데 위에 저거 치기전에 필요한거 커밋안해놓으면 다 날아간다. 조심조심

프로젝트/북클럽

북클럽 서비스 프로젝트 시작

2주전 정도인가에 학교 에브리타임에서 프로젝트 팀 구인글을 봤다. 망해도 포트폴리오 라는 이름을 ㅋㅋㅋㅋㅋㅋㅋㅋ 가진 팀에서 북클럽 서비스를 기획하고 있는데 디자이너, 기획자, 안드로이드 앱 개발자가 모인 팀에서 서버를 개발해줄 백엔드 개발자가 필요하다는 글이였다. 이런식으로 글이 올라왔는데 딱봐도 뭔가 준비된듯하고 열심히 할 것같은 팀이였다. 마침 나도 프로젝트에 관심이 있었던 참이였는데 좋은 기회라고 생각했다. 그래서 문의를 보내고 팀에 합류했다. 나말고도 Swift 개발자 한분이 더 합류했다. 현재는 회의를 2번 마친 상태이다. 처음에는 그냥 통성명과 간단한 이야기 정도만 했다. 두번째에는 설문조사, 필수기능 정리, 기획 수정 등의 일을 했다. 회의를 좀 깊은 밤에 길게 하긴 했지만 그래도 재미있었..

Dev/Spring

Servlet 서블릿에 대하여

Servlet- 서블릿은 예전에 스프링같은 편리한 프레임워크를 사용하기전 사용했다고한다. 서블릿의 역할 서블릿은 프로그래머가 핵심적인 코드만 작성하도록 도와준다. 의미있는 비즈니스 로직 외에도 저런 수많은 작업을 처리해줘야 한다. 연결하고 파싱하고 연결끊고... 이런걸 전부 한땀한땀 하기에는 너무나도 힘들다. 난 대학에서 네트워크 시간에 http connection을 만들고 파싱하고 이런걸 해봐서 이 고통을 이해한다. 그게 싫었던 사람들은 서블릿을 만들어냈다. 스프링부트는 기본 내장 was로 톰켓을 사용한다. was로 http 요청이 들어오면 was는 response와 request 를 생성하여 서블릿컨테이너에서 싱글톤으로 관리되는 서블릿 객체에 넘겨준다. + 동시요청에 대비해 멀티쓰레딩을 이용해 서블릿..

Dev/개발일지

스프링 데이터 JPA, Query DSL 완강

했다 3월 초에 시작해서 꽤 많이 왔다... 힘들었다... 뿌-듯

Dev/JPA

API 설계시 DTO를 주고받아야 한다. 엔티티 말고

@GetMapping("/api/v1/members") public List membersV1() { return memberService.findMembers(); } 이런 식으로 api를 만들면 Member 엔티티가 그대로 외부에 노출된다. 이로인한 문제점이 많다. 1. 엔티티에 화면과 관련된 로직이 추가된다. 엔티티는 엔티티 역할만 하게 두어야 한다. 2. 쓸데없는 정보가 들어간다. 그렇다고 @JsonIgnore해서 안보이게 하면 위에 1번 문제가 생긴다. 3. 엔티티를 수정하면 API 스펙이 바뀐다. API 쓰는 모두가 혼란에 빠질것이다. 4. 좀 별개로 리스트를 반환하면 API 스펙 변경이 힘드니 result 클래스를 생성해야한다. 그러니까 이렇게 작성해야 한다. @GetMapping("/api..

Dev/개발일지

실전! 스프링 부트와 JPA 활용 1,2 완강

재미있고 생각보다 할만했는데 진짜 길고 힘들었다... 복습하고 블로그에 올려야지

일상

한달 전인가? 심리 검사를 했었다

MBTI 검사를 예전에 했던게 넘 재밌어서 가천대학교 심리센터? 이런데서 공짜로 해주는 심리검사 같은걸 했었다 TCI 랑 MMPI-2를 했었는데 검사 소요 시간이 엄청 길었다. 근데 결과적으론 좀 시간낭비였다. 왜냐하면 검사 결과로 나온것도 완전 전형적인 이미 알고있던 INTJ-A 특징이랑 똑같아서... ㅋㅋㅋㅋ 또 기질 검사결과도 뭔가 내가 이미 나에대해 알고있던 특징과 똑같았다. 그래도 나름 재미있었고 한번쯤 할만한듯 하다.

ChoiBulldog
최불독의 머릿속