#dto

질문 2
해시태그 없이 키워드만 일치하는 질문은 개수에 포함되지 않아요.

일 년 전 · 익명 님의 질문

React Spring 배포과정 중 의문의 404

react + spring boot로 진행하는 프로젝트가 현재 cloudtype이라는 플랫폼으로 배포중에 있습니다. 문제는 정확한 서버주소를 호출하는 것 같음에 불구하고 404 에러가 발생하여 해결하지 못하고 있습니다. 현재, 아래 사진과 같은 로그가 클라이언트, 서버에 각각 발생합니다. 서버에서는 다음과 같이 구성되어있고 @RestController @RequestMapping("/v1/login") @RequiredArgsConstructor @CrossOrigin(origins = "https://web-secondchance-front-bug-1cupyg2klvnmgdft.sel5.cloudtype.app") public class KakaoController { private final KakaoService kakaoService; private final Logger LOGGER = LoggerFactory.getLogger(KakaoController.class); @PostMapping("/kakao-login") public ResponseEntity<UserDto> kakaoLogin(@RequestBody KakaoLoginDto kakaoLoginDto) { String code = kakaoLoginDto.getCode(); LOGGER.info("Get Code from FrontEnd : {}", code); LOGGER.info("Request getAccessToken()"); kakaoLoginDto = kakaoService.getAccessToken(code); String accessToken = kakaoLoginDto.getAccess_token(); LOGGER.info("access_token : {}", accessToken); if(accessToken != null){ UserDto userDto = kakaoService.getUserInfo(accessToken); return ResponseEntity.ok(userDto); } else { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body(null); } // accessToken이 null임에도 getUserInfo를 부름. // 안부르게 끔 위의 방법을 포함하여 // 1. map에서 true, false를 사용하여 해봄 // 2. getAccessToken을 map객체로 반환하게끔 하여 accessToken이 있으면 true, 없으면 false로 하여 isEmpty 함수로 체크하여 부름 // 위의 두 방법 전부 소용없음. 그냥 getUserInfo를 부름. } @PostMapping("/kakao-logout") public String kakaoLogout(){ return "ok"; } } 현재 리액트에서는 다음과 같이 axios.post로 접근하여 code를 전달합니다. 무엇이 문제일까요?

개발자

#react

#spring-boot

#배포

#404

답변 0

댓글 0

추천해요 1

조회 162

일 년 전 · cozy 님의 새로운 답변

memberId 매핑에 관한 질문

게시물이나, 댓글, 좋아요 등 여러 테이블에 memberId가 매핑이 될텐데 제가 일하기 시작한지 초반에, "memberId는 최대한 많이 매핑을 안해두는게 좋다" 라고 배웠습니다. 심지아 많은 테이블에 memberId가 들어가는데, 하나도 연관성 매핑을 안두고 설계를 한적도 있어요. 지금 새로운 프로젝트에서 게시물이나 댓글, 그리고 좋아요를 구현하고 있는데, 게시물을 목록으로 조회할때 각 게시물 작성자의 프로필 이미지와 닉네임, 댓글을 조회할때, 작성자의 프로필 이미지와 닉네임, 그리고 누가 좋아요를 눌렀는지 보려고 목록으로 좋아요 누른이의 프로필 이미지와 닉네임을 보여주고 싶은데, JPA 매핑 없이 구현하려니 너무 많은 query가 나가면서 수동으로 매핑 시켜줘야할것같은데.. 1. 이 경우 각 테이블과 멤버 테이블의 연관성을 설정해주는게 좋나요? 아니면 2. 많은 query가 나가도 어쩔 수 없고, paging으로 가져와 가져오는 댓글/좋아요/게시물 수를 줄이고, response dto에 수동으로 멤버 정보를 넣어주는게 좋을까요?? 아니면 3. 더 효율적인 방법이 있을까요? 미리 감사합니다!

개발자

#jpa

#spring-boot

#database

답변 1

댓글 0

조회 65

일 년 전 · 익명 님의 새로운 댓글

1년 SI후기 및 현직에 계신 선배님들의 생각을 듣고싶습니다

국비 6개월을 다녔고 2개월 R스튜디오 2개월 파이썬 2개월 자바 및 html의 커리큘럼으로 수업을 받았습니다 당연하게도 자바 프로젝트 완료조차 못했구요 그 당시 MVC패턴이 무엇인지 컨트롤러가 무엇인지 서비스는 뭔지 Dao Dto 아무것도 모르는 상태에서 여러군데 이력서를 넣었지만 떨어지기를 반복하다가 흔히 말하는 SI보도방에 취업하게 되었습니다 정말 아무것도 모르고 그저 뽑아주신것에 감사해서 열심히 해야겠다라고 생각했는데 그땐 알지 못했습니다 첫프로젝트를 5년차 대리로 가게 될 줄은.. 첫프는 금융권이였는데 인터뷰를 어떻게 봤는지 기억은 안나지만 어느새 쿼리짜는것에 능통한 개발자가 되어있었습니다. 그땐 책임감때문에 매일 야근과 주말에 출근을 하며 코드들을 익혔고 무사히 끝마쳤습니다 두번째 프로젝트는 보험쪽이였는데 이미 다 완성된 상황에서 또다시 5년차 대리로 들어가게되었는데 공통쪽 업무를 배정받고 첫프때보단 편안하게 끝냈습니다 세번째 프로젝트에서 포텐이 터졌는데 저도 모르는 사이에 8년차로 둔갑되어있었습니다 심지어 기존에 있던 인원도 도망을 가서 인수인계도 제대로 받지 못한 상황에 운영으로 왔지만 실제로 맡은 업무는 서버이전이었습니다 기존에 있던 문서파일들도 다 가라로 만들어서 참고조차 못하고 처음 접해본 크론탭도 다루면서 혼자서 배치 프로젝트 70여개를 도맡아 하다보니 주 80시간을 일했습니다 당연하게도 번아웃이 오더라구요 코드 꼴보기도 싫고 그래서 대표한테 따졌습니다 저 신입이라고 힘들다고 돌아오는 말은 똑같았습니다 다 살이되고 뼈가된다 버텨라 지금 회사가 너무 힘들다 같이 힘 좀 내자 스트레스 때문인지 한쪽눈이 안보여서 급하게 병원도 가고 일하는 중 쓰러져 응급실도 실려간적이있습니다 어떻게든 노력하는 모습을 보이니 담당 사업부장이 저에게 임금 인상과 회사가 마음에 안들면 다른회사를 알아봐주겠다는 제안이 왔습니다 그렇지만 도저히 말을 못하겠더군요 사실 8년차가 아니라 1년도 안된 신입이라고.. 그 와중에 고객사에서 서버오픈 기간을 못지켰다고 지체보상금 얘기가 나왔습니다 당연하죠 1년도 안된 제가 선임개발자였고 새로온 개발자 두명이서 서버오픈을 준비하는데 밤새 매달려도 안되더라구요 그래서 결국 철수당했습니다 회의감이 들더라구요 왜 열심히 했지 몸이 이렇게 아픈데 라며.. 요 근래 프로젝트가 없어서 2달가까이 쉬었습니다 그런데도 언제 잡힐지 모르는 인터뷰와 제 자신에 대한 괴리감때문에 편히 쉬지도 못하고 점점 더 피폐해졌습니다 그래서 결국 대표와 통화하며 개발자 못하겠다고 퇴사의사를 밝혔는데 이런저런 얘기를 하다가 저에게 조건을 거는겁니다 연봉 인상과 야근 안하게 해주겠다와 서울에 무조건 일 잡아주겠다.. 꼬임에 또다시 넘어간거죠 연봉은 거의 30퍼가까이 인상이였으니 혹할수밖에 없었습니다.. 그렇게 얘기가 끝나고 몇주 뒤 인터뷰 없이 바로 파견가면 된다고 일 잡아왔다고 얘기를 하는데 2시간 거리인겁니다.. 제가 서울 외곽쪽에 사는데 진짜 끝에서 끝으로 보내더군요.. 그리고 이력서를 확인해보니 7년차 중급 과장이였습니다.. 이젠 도저히 못버티겠네요.. 혹시 저같은 경험이 있으시거나 이런상황에 조언을 구할수 없을까해서 두서없이 글을 써봤습니다.. 그냥 다 그만두고 고향 내려가는게 맞을까요.. 아니면 다른회사로 이직하고 개발자로 계속 하는게 맞을까요.. 참고로 다른 회사에서 이직제의는 몇번 받았습니다 조건도 좋았고 그러나 실경력을 깐다는게 쉽지않더라구요.. 만약 개발자를 계속한다면 실경력에 맞게 일하고 싶습니다..

개발자

#이직고민

#슬럼프

#si

#실경력

#개발자

답변 2

댓글 3

추천해요 1

조회 379

일 년 전 · lepffm 님의 새로운 답변

프로젝트 리팩토링 어디까지 진행하는 것이 좋을까요?

백엔드 개발자를 꿈꾸는 취업준비생입니다. 지금까지 팀 프로젝트, 개인 프로젝트 등 여러가지 사이드 프로젝트들을 진행해왔습니다. 이 과정에서 새로 배운 기술들, 제대로 활용하지 못했던 문법 등 다양한 것들을 공부하면서 이전에 작성했던 코드들을 바라볼 때 어떤 시야로 바라보시는지 궁금합니다. 예를 들어 먼저 진행했던 a 프로젝트에서 api 응답 방식을 단순히 ResponseEntity를 활용해왔다고 가정하고, 이후 진행한 b 프로젝트에서 응답 형식을 커스텀한 DTO 클래스를 활용했다고 가정했을 때 b프로젝트에 활용한 방식이 더 낫다고 느껴진다면 a프로젝트에 해당 부분을 리팩토링 하는 것이 좋은 공부 방법인가요? 새로운 것을 계속 공부하고 프로젝트마다 다른 방식을 적용하게 되면서 이전 코드를 바라보면 “왜 이렇게 짰지?”라는 생각도 들고 뭔가 이걸 개선했던 이유들을 되돌아보며 얻는 것들이 있다고 생각해서 개인 공부 목적의 프로젝트 외에 진행했던 사이드 프로젝트에 관한 리팩토링은 크게 진행하지 않고있습니다. 다른 개발자분들은 어떤 기준으로 리팩토링을 진행하고 어떤 공부방법을 선호하시는지 궁금하여 질문 남깁니다!

개발자

#백엔드

#리팩토링

#취업

#백엔드개발

답변 3

댓글 0

추천해요 2

조회 1,533

일 년 전 · 포크코딩 님의 새로운 답변

Nodejs 백엔드 구조짜는법

안녕하세요 취직은 못했구 풀스택으로 Reactjs Nodejs사용해서사이드 프로젝트를 하고있는 뉴비개발자입니당 Nodejs를 백엔드로 사용하고 있는데 폴더구조를 어떻게 잡아야할지 항상 고민이 해결되지 않아 개발자분들의 의견을 구합니다 ㅠㅠ 제 나름대로 Web.js를 루트로 두고 Routes폴더에 api 경로에 따라 나뉠수 있게 폴더를 두고 Db를 사용하거나 함수들은 각각 Service라는 폴더를, 자주사용되는 데이터는 model이라는 폴더에 dto를 사용해서 두고있는뎅 이 구조가 좋은 방식일지 항상 생각하는데 조언을 구할 수가 없어서 어떤 방식으로 구조를 잡으면 좋을지 개발자님들의 조언을 부탁합니다...

개발자

#node.js

#구조

답변 1

댓글 0

조회 147

일 년 전 · Angela 님의 새로운 댓글

디비에는 저장이되는데 리스트조회하면 null로 나오는 이유

숙소등록하고 조회했는데 null값이나옵니다.. List<AccommodatuonsVo>로 임폴트 util로 했습니다 마이바티스로 작업한 쿼리를 디비에 조회했을때 제대로 나옵니다.. 매핑도 dto로 저장하고 vo로 리스트로 조회했는데 필드와 칼럼명도 확인했습니다 서비스랑 컨트롤러도 로직도 공지사항이나 문의글 처럼 동일하게했거든여.. 다른점은 외래키설정때문일까요... db에 저장될때 null값 없이 저장됐는데 리스트로 조회하니 null이 나오는게 이해가 안돼요...........

개발자

#null

#리스트조회오류

#스프링부트

#마이바티스

답변 1

댓글 1

보충이 필요해요 1

조회 146

일 년 전 · 익명 님의 질문

백엔드 개발자 선배님들의 조언을 듣고싶습니다!

안녕하세요 선배님들 현재 신입 개발자로 수습기간 3개월, 곧 4개월이 되가는 사회생활을 하고있는 중 입니다. 다름이 아니라 저는 백엔드 개발자를 목표로 Spring Fremework 나 Spring Boot 를 좀더 집중적으로 활용하면서 실력을 늘리고 싶은데 현재 회사에서는 솔루션 회사이다 보니 백엔드 부분은 건드릴 일이 없고 화면단(jsp , javascript)과 쿼리 부분만 하게될 거 같습니다... 제대로 된 자바스크립트를 이용한다면 좋겟지만 자체 프레임워크를 사용하고 있어서 이게 이도저도 아닌 느낌이라 물경력만 쌓을거 같다는 느낌이 듭니다. 또한 서비스단 코드를 조금씩 봤더니 vo나 dto 객체도 없고 map으로만 모든 걸 해결하는 느낌입니다. 졸업 한지 얼마 안된 신입이라 경험이 없어서 여러가지 알아보고는 있지만 먼저 경험을 해보신 선배님들의 의견을 여쭈어보고 싶습니다. 저는 신입이라면 많은 걸 경험하면서 실력을 쌓아야 할 때라고 보는 입장입니다. 회사에 다니면서 다시 백엔드 개발 쪽으로 구직 활동을 하는 게 맞는 판단일까요?

개발자

#개발자

#백엔드-개발자

#back-end

#spring-framework

#spring-boot

답변 0

댓글 0

조회 112

일 년 전 · 다형 님의 답변 업데이트

데이터 join후 어디에 담으시나요?

안녕하세요 join한 결과를 repository를 통해 받아올때 다들 어떻게 하시나요?? 어떤 방법을 써야 하는지 모르겠어서 선배님들의 의견과 다른 회사에서는 어떻게 하는지 알고 싶어서 질문 드립니다~ 제가 알기로는 domain은 db테이블과 1대1관계를 가져야 한다?, dto는 request와 response시에만 사용하는것? 으로 알고 있습니다 Mybatis를 통해 두 테이블을 join할때 (예를 들어 게시판 상세페이지에 접속할때 게시판테이블의 정보와 업로드된 파일을 관리하는 테이블의 데이터를 함께 조회함) 그 데이터를 어디에 담아서 repository를 통해 리턴하면 될까요..? 게시판 domain에 파일 정보를 추가해서 조인한 데이터를 담자니 domain이 db와 1대 1관계를 깨는것 같고 dto에 바로 담자니 dto와 domain의 변환 시점이 있는데 규약(?)을 무시하는것 같고 브릿지 테이블을 만드는것도 아닌것 같고.. 회사에서도 여쭤볼 분이 마땅치 않아서 궁금증을 여쭤봅니다ㅜㅜㅜㅜ

개발자

#join

#dto

#domain

#mybatis

답변 2

댓글 0

조회 259

일 년 전 · 익명 님의 새로운 댓글

하나의 API당 하나의 DTO를 만들어야 하나요?

백엔드를 공부중인 학생입니다. 최근 NEST와 SPRING으로 공부중입니다. DB에서 데이터를 받아올때 프런트엔드에 전송하는데 테이블에 있는 모든 데이터를 보내는 것이 아닌 특정 속성만 뽑아서 보내주기 위해 DTO를 사용하고 있습니다. 이때 하나의 API당 하나의 DTO를 만드는게 일반적인가요? 연관관계가 성립된 Entity는 어떻게 Entity에 변환하는지도 궁금합니다. dto.dto_id = entity.entity_id 이런식으로 변환을 하나요? 아니면 다른 방법이 있나요? 현업에서는 어떻게 하는지 궁금합니다. 감사합니다!

개발자

#nest.js

#springboot

답변 1

댓글 1

추천해요 1

조회 418

일 년 전 · 초코칩 님의 새로운 답변

for문을 이용한 중복체크 방법

public MemberDTO doRegist() { sc.nextLine(); System.out.println("*****************************************************"); System.out.print("아이디를 입력하세요 : "); String id = sc.nextLine(); System.out.print("비밀번호를 입력하세요 : "); String pwd = sc.nextLine(); System.out.print("이름을 입력하세요 : "); String name = sc.nextLine(); System.out.print("나이를 입력하세요 : "); int age = sc.nextInt(); System.out.print("성별을 입력하세요 : "); char gender = sc.next().charAt(0); sc.nextLine(); System.out.print("핸드폰 번호를 입력하세요 : "); String phone = sc.nextLine(); System.out.print("이메일을 입력하세요 : "); String email = sc.nextLine(); System.out.println("*****************************************************"); MemberDTO user = null; if(answer == 'Y') { user = new MemberDTO(id, pwd, name, age, gender, phone, email); }else { System.out.println("로그인 페이지로 돌아갑니다."); mainLogin(); } return user; } 여기에 for 문으로 아이디 중복체크를 넣고 싶은데 어떻게 넣어야 할까요...ㅠㅠ...

개발자

#intellij-java

답변 1

댓글 0

보충이 필요해요 1

조회 164

2년 전 · 장준영 님의 답변 업데이트

Spring에서 레이어드 아키텍처 관련 코드 패턴 질문

안녕하세요 개발을 진행하는 도중 코드 디자인 관련해서 궁금한 점이 생겨, 여러 선배님들께 질문을 드려봅니다 검색 목록 조회 시, 많은 parameter 처리 방법 특정 검색화면을 표시하기 위해 필요한 값들인 등록일 검색 날짜, 검색어와 같은 부문을 Controller 에서 modelattribue 로 받았는데 필드 수가 10개 이상 됩니다. 문제는 해당 field 들을 서비스 > 레포지토리 까지 옮겨야 하는데 modelattribute 객체를 사용하자니 view 에 종속 된 객체를 옮기는 게 맞을까 라는 의문이 들고, 각 field 를 모두 꺼내자니 메서드 마다 10개씩 파라미터 받는게 또 아닌 것 같다는 생각이 들었습니다. 이러한 상황들은 어떤식으로 처리하시는 지 궁금합니다. JPA 를 사용 중인데, open in view 속성을 막아놔서 service 레이어에서 entity를 dto로 변환하는 작업을 진행합니다. 이때 궁금한 점은 해당 method 에서 반환 시 다른 entity의 field값 하나가 필요한 경우가 간혹 있다는 것 입니다. 해당 dto 에 field 를 추가하자니 해당 값이 필요없는 경우에도 다른 entity를 조회하여 db select 나가는게 싫고 객체를 하나 더 만들자니, 다른 상황에서도 비슷한 경우가 많아 객체가 너무 많아질 것 같아 고민입니다. 계속 해서 좋은 방법을 고민하고 찾아봤지만, 결론이 나질 않아 선배님들께 질문 드려 봅니다.

개발자

#java

#spring

#jpa

답변 1

댓글 0

추천해요 1

조회 720

2년 전 · 삭제된 사용자 님의 답변 업데이트

JSON 데이터 DB 저장

안녕하세요. Java Spring으로 백엔드 서버 마이그레이션, 알람 기능 개발 중에 고민이 있어 질문드립니다. [상황] 기존 알람 서비스는 하나의 서비스 Class로 통합해서 두고, 문자, 푸쉬알람, 이메일 3가지 경우로 기능을 swith하여 각 기능별로 서비스를 호출하는 방식으로 구현되어 있습니다. 알람과 관련된 데이터는 JSON 파일에서 불러와 jsonObejct와 Map 자료구조를 통해 가공하여 기능 구현이 되어있습니다. 알람 데이터 JSON 파일은 상황별 코드에 따라 문자, 푸쉬알람, 이메일로 데이터가 구분되어 있습니다. JSON 파일은 대략적으로 아래와 같은 형태입니다. (mail 알람의 경우엔 HTML 파일을 전송하는 방식입니다. thyemleaf를 통해 전달받은 파라미터 값만 HTML에 주입하는 형태로 구현되어 있어서 msg 안에 String 대신 JSON 형태의 데이터가 들어가고 있습니다.) [알람 JSON 데이터 구조 예시] { "code1" : { "Sms" : { "title" : "sms 제목", "msg" : "sms 메세지", }, "Push" : { "title" : "push alarm 제목", "msg" : "push alarm 메세지", }, "Mail": { "title" : "mail 제목", "msg": { "name" : "#{name}", "use" : "#{use}", ... }, "code2" : {... }, ... } [문제 인지 & 개선 방향 고민] 알람 데이터가 JSON으로 정의되어 있다보니, 기능 개발을 위해 Json 파일을 읽고, JsonObject와 Map 자료구조로 데이터 가공을 할 수 밖에 없는 상황인데요. 제가 알기로는 자바에서 Map 자료구조를 사용하게되면 타입 자체가 불명확해서 지양해야 하며, JSON 파일로 관리 시 하드코딩에 해당되어 기능 자체에 제약이 많다고 판단하여 해당 상황을 DTO로 관리함과 동시에 Database에서 관리하도록 바꿔볼까 생각중입니다. [궁금증 & QnA] 이 상황에서 고민 & 궁금증이 몇 가지 있습니다. 1. 해당 알람 데이터를 DB 관리로 바꾸는게 더 나은 선택인지? -> 만약 바꾼다고 하면 Alarm Table을 따로 두고, User Table과 N:M 매핑하는식으로 구현할 생각입니다. 2. , mail HTML Template이 다양하다보니, Template 마다 넘겨줘야하는 JSON 데이터가 다양한 상황입니다. 그러다보니 mail msg 컬럼에는 다양한 형태의 JSON 데이터가 들어가게 되어 이걸 DB로 구현한다고 하니 막막한 상황입니다. -> 결국 해당 부분만 JSON 데이터로 넣는것 말고는 떠오르는 방법이 없네요.(해당 부분만 JSON 데이터로 넣으면 오히려 관리가 더 어려워지지 않을까 고민입니다.) 3. 다른 분들은 알람 기능을 어떻게 구현하는지 궁금합니다.

개발자

#spring

#database

#json

#fcm

답변 1

댓글 0

조회 302

2년 전 · 윪 님의 새로운 댓글

백엔드 협업 프로젝트 초반 진행

안녕하세요 지금 부트캠프에서 협업 프로젝트 진행 예정 중에 있습니다 첫 프로젝트라 규모가 작지만 시작을 어떻게 해야할지 고민이 되어서 질문합니다 회원 1. 이메일 비밀번호 입력하여 회원가입 API 2. 이메일 비밀번호 입력하여 접속하는 API 3. 접속된 유저 로그아웃 조회 1. 게시물 전체 조회하는 API 2. 작성자 이메일을 통해 특정 게시물들을 검색하는 API 3. 댓글을 조회하는 API 생성 1. 댓글을 새롭게 만들 수 있는 API 2. 게시물을 새롭게 만들 수 있는 API 수정 1. 기존 댓글의 글을 수정하는 API 2. 게시물을 새롭게 수정할 수 있는 API 삭제 1. 게시물을 삭제하는 API 2. 댓글을 삭제하는 API 심화 1. 이메일과 같이 댓글 좋아요를 할 수 있는 기능 해당 기능을 구현하는 것이고 팀원들과 분담도 마쳤습니다. 우선 DTO, Controller, Repository, ERD 등을 설계하려고 하는데 그 중에서 DTO가 우선이라고 생각하고 진행했습니다. 과정 중에 DTO와 ERD은 서로 같을 필요가 없다고 판단했고 처음부터 데이터베이스랑 연결하면 혼란이 올 것 같다고 생각했습니다. 그래서 DTO로 설계하고 테스트 코드로 확인 후 잘 동작한 다음 데이터 베이스와 연결을 하는게 좋을지 아니면 처음부터 데이터 베이스랑 연결하는 것이 좋을지 궁금합니다. 또한, 해당 설계를 먼저 하는 것보다 더 좋은 방법이 있는지도 궁금합니다. 대체로 어떤 순서로 진행되는지 조언을 받고 싶습니다!

개발자

#백엔드

#프로젝트

#spring

답변 3

댓글 3

추천해요 1

조회 540

2년 전 · 이현수 님의 새로운 답변

MSA 백오피스 백엔드 API? 데이터 베이스?

MSA 아키텍처에서 백오피스의 백엔드는 데이터베이스에 직접 쿼리를 날리는게 좋을지 아니면 각각의 서비스의 API를 콜하는 방식이 좋을지 고민중입니다. 제가 고민 중인 것은 " 데이터베이스에 직접 쿼리를 날리면 개발 기간동안 테이블의 변화가 있을 때 마다 엔티티를 직접 고쳐야한다" "API 를 콜하면 DTO 를 변경해야 할 것 같다" 인데, 경험있는 분들이 생각 하셨을 때 어떤 방식을 선택하실지, 혹은 각각의 방법에서 보이는 장단점은 무엇이 있을지 궁금합니다!

개발자

#msa

답변 2

댓글 0

조회 230

2년 전 · 이승로 님의 답변 업데이트

프로덕션에서의 typescript

이번에 처음으로 프로덕션 에서 ts 를 사용하게 되었습니다. 개인프로젝트에선 모두 ts 만 사용할만큼 ts에 빠지게 되었습니다. 걱정인 부분은 ts 를 사용할때 type 에 대한 정의를 어디에 어떻게 하시나요? 예를들어 /types 라는 dir 을 만들어 그 공간안에서만 관리한다 라던가.. 혹은 실제 프로덕션에서는 굉장히 많은 DTO 타입들이 필요할 거라 생각합니다. 모든 서버에서 내려오는 DTO 들을 전부 type 으로 정의하게되나요? 실제 프로덕션에서의 type 정의에 대한 요령이나 경험들을 듣고싶어요

개발자

#react

#typescript

#ts

답변 1

댓글 0

조회 67

2년 전 · 라파엘 바란 님의 새로운 댓글

스프링에서 데이터 받을때 검증

클라이언트에서 벨리데이션으로 검증다 한상태에서 데이터를 전달 받았을때도 컨트롤러에서 null체크 같은부분 해야하나요?? 그리고 실무에서도 dto -> entity로 넘길때 entity.setName(dto.getName) 요런식으로 담아서 보내나요??? 컬럼이 많아질수록 코드가 길어져서 혹시 다른방법이 있나 여쭤봅니다

개발자

#spring-boot

#spring

#java

#jpa

답변 1

댓글 1

조회 139

2년 전 · 김형준 님의 새로운 답변

Null을 리턴하던 코드를 리팩토링 하려고 하는데 리턴 값을 무엇으로 할지 고민입니다.

코드 리팩토링 중인데요, dto를 리턴값으로 가지고 조회값이 없을 경우 null을 리턴하는 메소드 관련해서, 빈 객체를 생성해서 반환하도록 하면 메모리 낭비일지 고민이네요.. 204 코드 반환하는 것도 방법일 것 같고 응답 코드를 만드는 것도 될 것 같은데.. 어떻게 생각하시나요?

개발자

#리팩토링

#dto

#null

답변 1

댓글 0

추천해요 1

조회 101

2년 전 · 커리어리 AI 봇 님의 새로운 답변

JPA 다이나믹 쿼리 파라미터 DTO 사용?

항상 선배님들의 답변으로 큰 도움을 얻고 있습니다! JPA queryDsl을 사용한 다이나믹 쿼리 생성시 코딩 패턴에 대한 질문 드리고 싶습니다. 제가 작업할 땐 보통의 자바사용법(?) 처럼 DTO를 사용해서 처리하고 있습니다. 근데 서칭을 하다보니 저와 같은 패턴은 잘 없고 파라미터에 필요한 만큼 변수를 받아 사용하시더라구요? where 문도 저처럼 한꺼번에 메소드로 만들어서 사용하시지 않고 컬럼 조건 하나당 하나씩 만드셔서 그걸 전부 명시 하는 것 같은데 혹시 문서 작성에 정형화 된 코딩 패턴이 있다면 공유 부탁드립니다. 아래 참고 링크 입니다. https://velog.io/@hyunho058/QueryDSL-Where%EC%A0%88-%ED%8C%8C%EB%9D%BC%EB%AF%B8%ED%84%B0

개발자

#java

#jpa

#querydsl

답변 1

댓글 0

조회 121

2년 전 · 이양일 님의 답변 업데이트

GraphQL의 장점이 무엇인가요

현재 프로젝트에 GraphQL을 도입해볼까 고민하고 있습니다. 기존 REST 방식의 Over Fetching & Under Fetching 에 비해 필요한 정보만 스키마로 정의해서 가져올 수 있다고 확인했습니다. 그런데 결국 Restful한지 GraphQL을 썼는지는 서버와 Client 간의 통신 레벨에서만 작용하는 것은 아닌가라는 생각이 듭니다. GraphQL처럼 원하는 정보만을 뽑어오는 것은 SQL projection과 Dto 사용으로 충분하다고 느껴집니다. 또한 GraphQL 을 사용한다고 저 작업을 안하는 것도 아니라고 생각이 듭니다. 제가 자료조사가 부족하거나 적절하지 못한 이해를 했을 수도 있습니다. 혹여나 다른 분들께서 설명이나 참고자료를 공유해 주실 수 있으신가요?

개발자

#rest

#restapi

답변 1

댓글 1

추천해요 1

조회 281

2년 전 · 윤석현 님의 답변 업데이트

안드로이드 fragment 관련해서 질문이 있습니다

사진과 같이 frameLayout 을 배치했습니다. 두 fragment 모두 addToBackStack으로 쌓을 예정입니다. SearchResult fragment 에서 channel fragment 를 호출하면 화면에 띄워지지만, Channel fragment에서 searchResult fragment를 호출하면 화면에 보이지 않습니다. 레이아웃 배치 때문에 가려지는 것이라 생각하고 있습니다. 이럴 경우 어떻게 해결해야 하나요?

개발자

#kotlin

#android

#java

답변 1

댓글 0

조회 130

3년 전 · 익명 님의 새로운 댓글

DTO VO Entity 분리이유

DTO VO Entity를 나누어서 개발해본적이없어서 굳이 분리를 해야하나? 라는 생각중입니다! 객체를 분리하면 좀더 깔끔하고 안전한코드가 될거같긴한데 필수는 아니라고 생각합니다 혹시 다른의견있을까요?? 분리해야하는 확실한 이유를 알고싶습니다 도와주세요!!

개발자

답변 1

댓글 3

추천해요 1

조회 612

3년 전 · 두루두 님의 새로운 답변

Swagger 사용 관련하여 질문이 있습니다 고수님들

현재 swagger3 사용 중이며 controller에서 @requestbody String xxx 식으로 데이터를 하나만 받으려고 하는데 꼭 dto를 만들어서 @Schema(descriptipn ="블라블라")를 작성해야하나요? dto를 안만들고 description을 넣는 방법은 없을까요? 저렇게 필요한 파라미터가 하나밖에 없을 시에도 꼭 Dto를 만들어서 작성해야하는지 다른 방법은 없는지 궁금합니다.!!

개발자

#백엔드

#swagger

#springboot

답변 1

댓글 0

추천해요 2

조회 226

3년 전 · hm 님의 댓글 업데이트

Spring DTO DAO VO?!

각 3개의 역할은 알고있는데 왜분리하는지 왜 분리해서 사용하는지 모르겠습니다 ㅠㅠ 제일 성능이 좋은 모델구조는 어떤 구조인가요?

개발자

답변 1

댓글 1

추천해요 1

조회 402