#rest

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

7일 전 · 준용 님의 질문

머신러닝,딥러닝을 사용한 석사경험으로 취업준비를 어떻게 할까요?

안녕하세요. 저는 지금 대학원에서 의료영상을 보고 질병을 진단하는 모델링 연구를 진행중인 석사과정생입니다. 위 연구실은 의료영상 자체에 관심이 많은 랩이고, 딥러닝과 머신러닝 알고리즘을 연구하는 순수 AI랩은 아닙니다. 저는 머신러닝(SVM.XG-Boost,Random forest)와 같은 기법들부터 시작해서 Transformer,GNN,GAN,ResNet과 같은 딥러닝 모델을 제 데이터에 적용하는 연구를 진행중입니다. 요지는, 과연 위 모델들을 사용해본 경험으로 취업이 가능할까요? 제가 아직 이 분야에 대해서 자세히 알지는 못하기 때문에 드리는 질문이지만, 알고리즘 자체를 개발하는 엔지니어가 되어야 취업이 되는것은 아닌지 불안해서 여쭤봅니다. 아마 이 문장으로 제 질문이 요약될수도 있을것 같습니다. 딥러닝,머신러닝 모델에 대해서 이해도가 높고 잘 쓰는 사람 VS 딥러닝,머신러닝 알고리즘을 만들어본 사람 회사 입장에서는 어떤 사람을 선호할까요???

개발자

#딥러닝

#머신러닝

#석사

#취업

답변 0

댓글 0

조회 14

한 달 전 · jun 님의 질문 업데이트

RESTful 어디까지 지켜야 할까

특정 article을 전체 재정렬할 때 어떤 URL 형태를 선호하시나요? 1. PUT /articles RESTful을 엄격하게 따른다. URL에 동사는 넣지 않는다. HTTP Method를 PUT 또는 PATCH로 두고 바디를 통해 재정렬을 로직을 표현한다. 2. PUT /articles/reorder RESTful 규칙에 조금 어긋나더라도 직관적인게 최고다.

개발자

#restfulapi

#rest

답변 0

댓글 0

조회 42

2달 전 · 이상래 님의 새로운 답변

FE 화면 디렉토리 어떤 구조로 생성하나요?

BE 개발자입니다. 어쩌다보니 테스트용 화면을 만들게됬는데 백엔드에서 RESTFull 하게 호출할 수 있게 하고 싶다보니 각 path별 디렉토리에 html을 넣어주다보니 구조가 많이 복잡해지는 감이 있네요. 다른 분들은 어떤 방식으로 구조를 만드시는지 궁금해서 질문드립니다. 1. 방법 각 path에 맞는 디렉토리 생성 - test - page - user - edit.html - item.html - equip.html - status.html - home - account - money.html 2. 기능에 맞는 디렉토리 - page - user.html - home.html - component - user-edit.html - user-item.html - user-equip.html - user-status.html - home-account-money.html

투표

개발자

#frontend

#html

답변 2

댓글 1

보충이 필요해요 1

조회 588

5달 전 · 형준 님의 질문 업데이트

프로젝트 경험이 부족한 4학년 전공자 부트캠프를 해야 할까요?

안녕하세요 경기도권 대학 컴퓨터공학과에 재학중인 4학년 학생입니다. 우선 현재 제 상황을 설명해보겠습니다. 프로젝트는 총 두 번 진행했습니다. 첫 번째 프로젝트는 Django와 chatGPT를 이용한 프로젝트이고 전 이 프로젝트에서 기본적인 API 구현, chatGPT 연동 그리고 rabbitMQ와 celery를 이용하여 chatGPT의 답변을 비동기로 가져오는 기능을 구현했습니다. 두 번째 프로젝트는 Springboot와 Flask와 RVC(음성 변환 AI 오픈소스)를 이용한 프로젝트를 진행했습니다. SpringBoot는 REST API를 작성하는 서버이고 Flask는 RVC AI 모델 서빙만을 위한 서버입니다. 이 프로젝트에서 SpringBoot REST API 구현, CRUD 구현과 Flask 서버 구현을 맡아서 진행했고 AWS EC2 배포, S3, RDS, DOCKER(Compose), Nginx, Github Action(CI/CD)도 구현했습니다. 올해 여름 방학에 알고리즘 스터디를 통해서 주요 자료구조와 알고리즘에 대해 공부하고 공부한 내용을 블로그에 정리했습니다. 코테 문제는 대략 100문제 조금 안되게 풀었습니다. 대충 실력은 실버 4~2까지는 어찌저찌 풀 수 있는데 실버 1 골드 5는 쉬운 건 풀고 어려운 건 못 푸는 수준입니다. 현재는 CS 스터디 진행중이고 이제 시작하는 단계입니다. 자격증은 정처기 있고 올해 11월 SQLD 응시 예정입니다. 첫 번째 프로젝트는 포폴로 쓰기 애매하고.. 두 번째 프로젝트는 Devops 경험은 충분한 것 같은데 Spring으로 구현한 기능은 아주 기본적인 REST API밖에 없고 Flask(AI)가 메인이다 보니 제대로 된 Spring 프로젝트가 없습니다.그래서 제대로 된 Spring 프로젝트를 만드는 게 우선이라 생각합니다. 그럼 혼자서 사이드 프로젝트를 하거나 부트캠프에 들어가서 기초부터 차근차근 배운 후 팀 프로젝트를 진행하는 방법이 있는데 어떻게 해야 할지 고민입니다. 부트캠프는 거의 대부분이 기초부터 하는 커리큘럼이다 보니 최소 6개월은 해야 한다는 단점이 있고 혼자 하는 건 주변에 물어볼 곳도 없고 좀 막막합니다. 대신 결과물이 조그 부족하더라도 6개월보단 덜 걸릴 것 같습니다. 조언 부탁드립니다..

개발자

#부트캠프

#국비

#전공자

#취준

#취업

#전공

답변 0

댓글 0

추천해요 1

조회 159

6달 전 · 익명 님의 질문

[사이드 프로젝트] 패션 이커머스 플랫폼 '푸츠(PUTS)' 앱 개발팀 모집

프로젝트 소개: ‘푸츠(PUTS)_Pick Up The Style!’서비스는 패션 디자이너 브랜드를 중심으로 BM특허까지 보유한 혁신적인 패션 커머스 플랫폼서비스 입니다. 데모버전까지 외주개발을 통해 개발이 완료되었지만 현시점에서 리뉴얼하여 새롭게 런칭버전을 개발하고자 역량있는 팀원을 모집합니다. <참고> 본 서비스의 시장성은 2024년 약 19조 5천억원(캐주얼) 정도의 시장성을 예상하고 있으며 연간 약 3.5%씩 지속적으로 성장 중에 있습니다. 3-5년이내 시장의 10%이상 점유를 목표하고 있으며 시장을 장악 가능한 비즈니스 모델과 마케팅 능력을 보유하고 있습니다. (참조: https://global.fashionseoul.com/2023-11-10/Korean-Fashion-Market-Size-Anticipated-Highest-Growth-Ever) 우리는 패션과 기술을 접목해 사용자와 소비자에게 최상의 쇼핑 경험과 정보 공유, 소득을 제공하는 서비스로 패션산업의 큰 파도를 함께 일으킬 분들을 모집합니다. 사이드 프로젝트 형태로 진행되며, 유연한 근무 환경에서 협업을 지향합니다. 3-5년이내 엑싯을 목표로 진행됨으로 임금지급 방식이 아닌 지분분배 방식으로 진행됩니다. 프로젝트 완료시 파트별 기여도에 따라 지분설정이 되며 관련 내용은 프로젝트 진행 전 협의를 통해 산정하여 계약진행 예정.(급여를 제공 받고자 하시는 분은 정중히 사양합니다.) 모집 직군: 1. 프론트엔드 개발자 (1~2명) o 주요 업무: 모바일 앱 UI/UX 구현, 웹 랜딩페이지, 사용자 인터페이스, 어드민 프론트엔드 개발 o 기술 스택: React Native 또는 Flutter, JavaScript/TypeScript, HTML/CSS o 우대 사항: 모바일 퍼포먼스 최적화 경험, 패션 커머스 개발 경험 2. 백엔드 개발자 (1~2명) o 주요 업무: 서버 및 데이터베이스 설계, API 개발, 어드민 백엔드 개발 o 기술 스택: Node.js, Django, AWS, PostgreSQL, RESTful API o 우대 사항: 대용량 트래픽 처리 경험, 보안 및 결제 시스템 개발, 이커머스 어드민개발 경험, 포인트관리 및 쿠폰설정 관리 등 3. UI/UX 디자이너 (1명) / 대표자와 함께 진행 또는 대표자가 진행 o 주요 업무: 모바일 앱 디자인, 사용자 경험 설계 o 필수 스킬: Figma 또는 Photoshop, Illustrator o 우대 사항: 패션 브랜드 디자인 경험, 사용성 테스트 및 피드백 반영 경험 근무 형태: • 프로젝트 기반 협업 (파트타임 가능) • 원격 근무 가능 (주 1회 온라인 미팅) • 유연한 일정과 주도적인 업무 환경 우대 사항: • 사이드 프로젝트 경험 • 패션, 커머스에 대한 관심과 열정 • 스타트업 문화에 익숙한 분 • 책임감 강하신 분 지원 방법: • 이력서와 포트폴리오를 [dcode00@naver.com]로 제출 • 지원 시 사이드 프로젝트 경험 및 참여 가능 시간을 명시해 주세요. 문의: • 이메일: [dcode00@naver.com] • 카카오톡/오픈채팅방: [https://open.kakao.com/o/gi5ixgVe] • 회사주소: 경기도 안산시 상록구 한양대학로55 제2과학기술관 지하2층 B210호 (한양대학교 에리카캠퍼스 소재) 지원 마감일: [채용 완료시까지] 로켓펀치 참여링크 https://www.rocketpunch.com/jobs/139647 문의: • 이메일: [dcode00@naver.com] • 카카오톡/오픈채팅방: [https://open.kakao.com/o/gi5ixgVe]

개발자

#사이드플젝

#사이드프로젝트

#팀빌딩

답변 0

댓글 0

추천해요 1

보충이 필요해요 1

조회 153

6달 전 · 익명 님의 질문

스프링부트 타임리프 결과 처리 방법

스프링부트 서버개발하는데요 리엑트와 통신할때는 그냥 데이터만 보내주면 되니깐 상관이 없는데 스프링부트 자체 프로젝트로 타임리프로 처리할때 결과 처리를 어떻게 하시는지요? 지금 카카오 간편로그인으로 버튼 클릭시 간편로그인 창으로 이동되고 가편로그인 완료후 콜백처리 한다음에 나중을 생각해서 RestAPI처리 하려고 했는데 타임리프로는 처리가 안되서 페이지로 로드를 시켜야 하는것 같은데요 ㅠ 이럴경우 통신 성공, 실패 페이지를 만들어서 처리하고 다시 페이지 호출 하는지 궁금합니다.

개발자

#spring-boot

#thymeleaf

#rest-api

답변 0

댓글 0

조회 55

7달 전 · 이상래 님의 새로운 답변

RESTful API에서 POST 메서드만 사용하는 것의 문제점과 대량 데이터 처리 시 GET/DELETE와 POST의 차이점에 대해

일반적으로 GET, POST, DELETE, PUT 등의 HTTP 메서드를 구별하여 사용하는 것이 권장됩니다. 하지만 모든 요청을 POST로만 처리하는 방식으로 개발할 경우 발생할 수 있는 이슈가 무엇이 있을까요.. 백단에서 성능에는 큰 차이가 없지 않은가요? post만을 사용해 개발해도 될까요?

개발자

#restfulapi

#post

답변 1

댓글 0

조회 71

7달 전 · ming 님의 새로운 댓글

백엔드 신입 프로젝트

안녕하세요! 게시판 기능을 만들기 위해 spring,springboot,jpa,mariadb, aws, 헥사고날 아키텍처, Rest Api로 (화면x) 만들었었습니다. 그런데 이것으로는 당연히 포토폴리오로 부족할 것 같아서 , 멘토-멘티 매칭 시스템을 하나 제대로 개발해서 포토폴리오로 사용하려고 계획중 입니다. 그런데 처음 만든 게시판 프로젝트에 회원관리 쪽에서 jwt와 시큐리티를 못써봤고, 화면을 못만들었던게 신경이 쓰입니다… 이 상황에서 그냥 저 게시판프로젝트에 못했던걸 해결 하고 나서 새프로젝트로 넘어가는게 좋을까요?……

개발자

#프로젝트

#포트폴리오

답변 1

댓글 1

조회 96

8달 전 · 개발자A 님의 새로운 답변

다국어 변역 api사용 저장시 느린 속도 문제

DB에 정보 저장하는데요 ranslationResponse response = restTemplate.postForObject(TRANSLATION_ENDPOINT, request, TranslationResponse.class); api를 통해 영어 중국어 일본어로 변역해서 변역 내용 같이 DB에 저장 하려고 합니다. 그런데 저장할 때 문장이 길어지면 변역 시간이 느려저서 사용자쪽에서 많이 기다려야 하는 상황입니다. 기본 내용만 저장하고 파이널리문에서 번역해서 다시 저장하는 방법을 생각 해서 적용 해보았는데 브라우저에서 결과 받는 속도는 같았습니다.ㅠ 그렇다고 브라우저에서 ok 결과를 받은 후 번역을 비동기로 호출하는 것도 불필요한 비용 발생일 것 같고요 창을 먼저 꺼버리자니 오류 처리 못할 것 같구요 저장중 이라는 알림으로 처리 해야하는건지 사용자 입장에서 개선 하고 싶은데 방법을 잘 모르겠습니다. 혹시 해결방안 알고 계신분이 계시다면 조언 부탁드립니다.

개발자

#다국어-변역-api

#spring-boot

답변 1

댓글 0

조회 41

8달 전 · 이양일 님의 새로운 답변

api gateway에서 rbac 처리 관련 질문

jwt내에 user role(guest,user,admin 등)관련 정보가 존재하는 상태에서 api gateway에서 jwt decode후 api를 rbac처리 하고자 합니다. 질문은 아래와 같습니다. rest api에 명시적으로 어떤 권한의 사용자가 사용할수 있는지 작성해서 필터링하는지 아니면 api gateway에서 api각각이 어느 role까지 접근할수 있는지 매핑해두고 필터링하는지 여쭤보고싶습니다.

개발자

#infra

#rbac

답변 1

댓글 0

조회 206

10달 전 · cozy 님의 답변 업데이트

ERP 개발 스타트업에서 현장실습(직무체험)이 도움이될까요?

저는 4학년 막학기를 준비하는 서비스기업을 목표로하는 학생입니다 작년부터 스프링을 공부해서 최근에는 react 개념공부도 끝내서 프론트는 gpt도움으로 스프링부트와 jpa를 쓰면서 백엔드 위주의 토이프로젝트를 준비중에 있습니다. 사실은 2학기때도 막학기 다니면서 혼자 이렇게 포폴용 프로젝트를 하거나 스터디를 찾고 들어갈 계획을하고있었는데 사실 혼자준비하면서 방향이 이게 맞나 의구심이 들던차에 학교 현장실습으로 막학기때 학기대체로 erp개발 스타트업을 현장실습 하면서 퇴근후에 공부를 하는건 어떤가해서요. 설명은 다음처럼 돼 있었습니다 ‐-‐------------------------------------------------------- 교육목표 : 본 교육과정은 Java 프로그래밍 언어와 Spring Boot 프레임워크를 활용하여 안정적이고 확장 가능한 웹 애플리케이션 백엔드를 개발할 수 있는 전문 개발자를 양성하는 것을 목표로 합니다. 교육생들은 Java 프로그래밍의 기초부터 고급 문법까지 습득하고, Spring Boot를 통한 RESTful API 설계와 구현, 데이터베이스 연동, 웹 서버 보안 등 백엔드 개발에 필요한 실무 기술을 배우게 될 것입니다. ‐-‐------------------------------------------------------- si회사에 다니면서 체험하는것이 서비스기업을 목표로할때 도움이될까요? 괜히 개인공부시간만 방해받을거 같기도하고..제가알기로 erp쪽은 도메인이 너무 특수해서 사실 제가 목표하는쪽이랑은 다를거같기도하고요 직무체험이라 괜찮을까싶기도하고..

개발자

#현장실습

#백엔드

#인턴

답변 1

댓글 0

조회 139

10달 전 · 지민성 님의 질문

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

조회 147

10달 전 · 삭제된 사용자 님의 새로운 댓글

웹 프로젝트에 머신러닝 또는 데이터 분석을 적용하려면..

안녕하세요 현재 백엔드 개발자를 우선 목표로 공부하고 있는 비전공자 입니다. 저는 데이터 분석이나, 머신러닝을 활용한 웹 서비스(경기 분석, 예측 등)를 개발하고 싶은 생각이 있는데 이로 인해 프레임워크를 선택하는데 혼란이 오고 있습니다. 우선적으로 백엔드 공부를 하고 추후에 나머지를 공부할 생각인데 데이터 분석이나, 머신러닝은 주로 Python을 사용한다고 해서 Python 프레임워크를 공부해야할 지, 취업 수요가 높은 스프링부트를 공부해야할 지 고민입니다.. Python 프레임 워크는 웹 + 머신러닝/데이터 분석 을 하나의 언어로 개발할 수 있어서 좋은 것 같고 스프링부트는 스프링부트(웹) + 머신러닝/데이터 분석(파이썬 Restfull API)로 개발해야해서 양이 많아서 공부 기간이 길어질까 걱정입니다. 긴 글 읽어주셔서 감사합니다. 따끔한 조언 부탁드립니다!!

개발자

#고민

#개발

#백엔드

#머신러닝

#데이터분석

답변 2

댓글 2

조회 256

일 년 전 · 장성호 님의 새로운 답변

잘하는 백엔드 개발자의 기준

이제 막 스프링 공부를 하기 시작한 학부생입니다. 공부를 하다가 잘하는 백엔드 개발자의 기준이 무엇인지 궁금해서 이렇게 질문남깁니다. 물론 취준생 기준으로 보면 다양한 기술을 사용할 줄 아는것 조차 어렵긴 하지만 나중에 실무적으로 나가서는 어떤 것이 잘하는 개발자와 못하는 개발자의 기준이 되는 것 인지 궁금합니다. 학교 선배의 말로는 restful하게 잘 짜는 것이 잘하는 기준이라고 생각한다는데 뭔가 이게 끝이 아니고 더 많이 있을 것 같다는 생각이 들어서 질문남깁니다.

개발자

#잘하는개발자의기준

답변 2

댓글 0

조회 186

일 년 전 · 손대호 님의 댓글 업데이트

API 호출 시, 응답의 반환하는 방법에 대해 질문이 있습니다.

제가 했던 방식과 다른 새로운 방식을 알게 됐는데 다른 개발자분들은 일할 때 어떤 식으로 통신하는지 궁금증이 생겼습니다. 그리고 이번 기회에 다른 개발자들과 이야기해 보면서 또 어떤 방식이 있는지 알기 위해 커리어리에 첫 글(질문)을 쓰게 됐습니다. —— ***들어가기 전에*** - 신입 백엔드 개발자로 취업 준비 중입니다. - 다양한 방식으로 해보는 걸 좋아하기 때문에 장단점만 있을 뿐 정답은 없다고 생각합니다. - API 요청 시, `Reponse status code`는 클라이언트-서버와의 약속이라고 생각하고 있고, 약속을 했으면 따라야 한다고 생각합니다. - 기간이 짧은 프로젝트이기 때문에 어떤 답변이 오더라도 프로젝트에서 정한 약속을 바꿀 생각은 없습니다. 프로젝트가 끝나고 백엔드 개발자분과 리팩토링을 하면서 의견을 공유해보고 싶긴 합니다. (원하지 않는다면 어쩔 수 없고요..) ***중요*** - 글을 잘 쓰는 편이 아니라 이해가 안되거나 제 말투가 공격적이라고 느껴지는 부분이 있으면 언제든지 말씀해 주세요! - 만약 방식이 잘못됐다고 생각하시면, 그렇게 생각하는 이유와 가능하다면 경험을 공유해주세요! —— # 본문 지금까지 RFC / MDN / IT 기업 기술 블로그 등을 보고 REST API를 공부했고, 설계 원칙에 따라 모든 API 요청에 대한 Response 상태 코드를 200, 400, 401, 403, 404, 500 등과 같이 정확하게 주고받아야 한다고 생각하고 있었습니다. (물론 애매한 경우도 있었습니다) 그런데 최근 짧은 기간 동안 프로젝트를 하게 되었는데, iOS 개발자(2년차 현직)분과 백엔드 개발자(신입 개발자 취업 준비)분께서는 아래와 같은 의견을 주셨습니다. ''' 클라이언트의 입장에서 요청을 보냈을 때, 서버와 연결이 실패한 게 아니라 서버를 통해 정의된 에러 (4xx, 5xx)를 받았으니 통신에 성공한 것이다. 그러므로 API의 모든 요청(권한이 없는 사용자의 요청, 잘못된 리소스 요청, 이미 가입한 사용자가 다시 회원 가입 요청 등)의 `Response status code`는 200을 반환하고 body에 서버에서 응답한 상태 코드(3xx,4xx, 5xx 등)와 함께 커스텀으로 명시한 에러 코드(AUTH-001 등), 에러 메시지를 보내야 한다. ''' 관점을 다르게 보면 그럴 수 있겠구나 싶었고 문득 주변 개발자분들은 어떻게 구현을 하는지 궁금해져서 이야기를 나눠봤는데 그 결과는 반반이었습니다. 아직 그분들도 연차가 높지 않기 때문에 그렇게 설계한 이유와 이점에 대해 자세히 알고 계시지는 못했습니다. —— # 질문 1. 모든 요청의 Response status code로 200을 보내는 건 REST API 설계에 어긋난다고 생각하는데 이렇게 설계하는 이유와 있는지 궁금합니다. 2. 모든 API 요청의 Response status code를 200으로 보내는 방식으로 구현한다면 나중에 어떤 문제가 생길 수 있을까요? (예를 들어 웹으로 확장 등) - 현재 iOS로 개발 중이며, 확장 가능성은 없는 상태입니다. 단순하게 궁금해서 질문드립니다. 3. 만약 두 방식 외에 다른 방식으로 통신한 경험이 있으시면 그 방식을 선택하신 이유와 이점도 궁금합니다.

개발자

#rest-api

#statuscode

#지식-공유

답변 1

댓글 1

추천해요 2

조회 760

일 년 전 · 장성호 님의 답변 업데이트

여기서 의존성 주입이 어떻게 이뤄질 수 있는 지 궁금합니다.

안녕하세요 이제 막 스프링부트 공부를 시작한 3학년 학생입니다. 다름이 아니라 스프링부트를 공부하던 중 아래와 같은 의문이 생겨 질문드립니다. @SpringBootApplication @ConfigurationPropertiesScan public class SburRestDemoApplication { public static void main(String[] args) { SpringApplication.run(SburRestDemoApplication.class, args); } } @ConfigurationProperties(prefix = "greeting") class Greeting { private String name; private String coffee; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getCoffee() { return coffee; } public void setCoffee(String coffee) { this.coffee = coffee; } } 제가 이해하기로는 @Component(service, repository, controller 등) 어노테이션이 클래스에 부착되어 있어야 해당 클래스의 객체를 스프링 컨테이너에 의해 의존성 주입을 할 수 있다고 알고 있는데, @ConfigurationProperties 어노테이션은 내부를 아무리 찾아도 위에서 언급한 어노테이션을 가지고 있지 않았습니다. 하지만, @RestController @RequestMapping("/greeting") class GreetingController { private final Greeting greeting; public GreetingController(Greeting greeting) { this.greeting = greeting; } @GetMapping String getGreeting() { return greeting.getName(); } @GetMapping("/coffee") String getNameAndCoffee() { return greeting.getCoffee(); } } @RestController 에 의해(@RestController는 내부에 controller 어노테이션이 있더라구요) 스프링 컨테이너로부터 의존성 주입을 받을 수 있는 GreetingController는 greeting 객체를 받아서 생성자 메서드를 실행하므로 스프링 컨테이너에서 Greeting 클래스의 객체를 의존성 주입 받을 수 있는 지 확인해보고 위에서 언급한대로 Greeting은 등록되어 있지 않으므로 오류가 날거라 예상했습니다. 하지만, 아무런 문제없이 자동으로 public GreetingController(Greeting greeting) { this.greeting = greeting; } greeting 객체가 주입이 되었고 실행되었습니다. 제가 이해한 내용이 어디서 틀렸는 지 궁금합니다.

개발자

#spring-boot

#java

답변 2

댓글 0

조회 618

일 년 전 · 강병진 님의 새로운 답변

Django REST framework의 이점

안녕하세요. 취미로 Django를 공부하고 있는 비전공자 입니다. 개인적으로 폴더나 파일을 NAS synology를 통해서 웹서비스를 구축하고 파일을 조회하는 시스템을 제작하려 합니다. 공부를 하다보니 DRF(Django REST Framework)가 눈에 보이더군요. 일반 Django로 구축하는 사이트와 DRF를 활용한 사이트는 각각 어떤 차이가 있을까요? 감사합니다.

개발자

#django

#django-rest-framework

#python

답변 1

댓글 0

조회 210

일 년 전 · 박정환 님의 새로운 댓글

클라이언트(프론트)에서 api return 처리를 어떻게 하시나요?

안녕하세요 클라이언트(프론트)단에서 axios 사용해 REST api return 스펙정리를 해서 서버단과 이야기해 수정을 하려고 합니다. 고려사항 등 도움을 주시면 감사하겠습니다. Method - GET : 정보조회시 - POST : 저장시(회원, 주문, 아이템 등) - PUT : 수정시 - DELETE : 삭제시 현 구현 - HTTP status 200은 성공, 그 외 에러처리 => 서버단에서 보내주는 msg 혹은 프론트에서 하드코딩으로 문자열 출력(alert) 문제점 1) 성공과 실패 및 실패 사유에 대한 return 구조체가 생각 이상으로 깊은 구조이며 일관성이 없음. ex1) response.data = { 객체 정보 } ex2) response.data = "Success"; -- 여기부터 문제 -- ex3) response.data.detail = "Faile"; ex4) response.data.detail[0].msg = "Faile"; // 기타 다른정보들 포함됨 ex5) response.data.messages "문자열" 2) 몇개의 api는 return 값으로 status가 200으로 string 혹은 object가 날라옴. 3) 사용자 정보제공(문자열) 하드코딩 다국어 설정도 고려하고 있기에.. 실패시 정보를 연상코드로 리턴받을까합니다.(개인 생각) 작성하고 보니 어떻게 문제점은 보이는데 좋은 개선점이 있으시면 의견주시면 감사하겠습니다.

개발자

#api

답변 1

댓글 2

조회 246

일 년 전 · 김병연(Vintz) 님의 새로운 댓글

리액트 쿼리 로직을 커스텀 훅으로 만들 때, 어디까지 추상화를 하시나요?

안녕하세요. 현재 프로젝트에서 기존 데이터 페칭 로직들을 전부 리액트 쿼리로 옮기면서, 고민이 생겨 질문을 드립니다. 클라이언트 상태와 서버 상태로 폴더를 나누고, 쿼리 로직들을 커스텀 훅으로 만들고 있습니다. 그런데 이 커스텀 훅의 추상화를 어디까지 해야할지 고민이 됩니다. 3개의 서비스 페이지가 있고, 사용하는 쿼리 내부의 로직이 비슷할 경우, 아래의 두 가지 방법을 생각해 봤습니다: 1. 재사용을 위해 매개변수로 URL, URL parameter, Query key를 추가 2. 유지보수를 위해 URL parameter만 매개변수로 추가하고, 개별 커스텀 훅 생성 예시 코드로, 1번의 코드는 `useDashboard('/data', startDate, endDate, 'service01/dashboard');` 이런식으로 사용을 하고, 2번의 코드는 `useService01Dashboard(startDate, endDate);, useService02Dashboard(startDate, endDate);...` 이렇게 사용을 합니다. 현재는 2번의 방식으로 구현을 하고 있습니다. 그 이유로는 불러오는 서버 데이터가 대부분 동일하지만 다른 경우도 있어서 타입을 다르게 줘야했고, URL을 쉽게 구분하기가 어려워서 한 곳에서 관리하고 싶었습니다(URL이 REST API 설계와 다소 거리가 있습니다.). 결론은, 함수 호출자의 입장(데이터를 불러오는 함수)에서 어디까지 알아야하나?가 고민입니다. 리액트 쿼리 깃허브에서 예시도 보고, 이렇게 글을 쓰다보니 현재로썬 2번이 더 맞다고 생각이 들긴 합니다. 여러분은 보통 어떤식으로 구현을 하시는지 궁금해서 이렇게 질문을 드리게 되었습니다. 어떤 의견이라도 좋으니 답변을 주시면 정말 감사할 것 같습니다!

개발자

#react

#react-query

답변 1

댓글 1

조회 154

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

백엔드 개인 프로젝트 방식 질문

여태 팀 플젝 한번 해봤고 rest api 방식으로 진행했습니다 스프링 부트 공부중이고 개인 프로젝트를 따로 만들어 보려하는데 서버 방식에 대해서 고민중입니다 구매해놓은 강의를 참고 하여 만들고 싶은데 그 강의는 rest api 방식으로 구현하는데 보통 개인 프젝시 ssr 방식으로 하는거 같더라구요 사실 뭔 방식이 맞는지 잘 모르겠습니다 방향성 좀 잡아주세요ㅠㅠㅠ

개발자

#스프링

#프로젝트

답변 2

댓글 1

추천해요 7

조회 2,345

일 년 전 · ㄱㅎㅁ 님의 답변 업데이트

스프링 restapi 다중요청 순서대로 처리하는 방법이 궁금합니다.

한명의 유저가 A, B라는 기능을 동시에 요청이 들어왔을때 서버단에서 순서대로 하나씩 처리하는 방법이 궁금합니다. 관련해서 찾아봐도 찾지를 못했는데 관련 키워드라도 알려주시면 감사하겠습니다!

개발자

#spring

#spring-boot

답변 1

댓글 0

조회 78

일 년 전 · 익명 님의 질문 업데이트

스프링 강의를 nestjs로 이해하면서 들어도 될까요?

안녕하세요 코딩 2년차 공부 중인 초보 학생입니다 바로 본론드리면 nestjs기본 베이스 상태에서 스프링기반 강의를 들어도 문제가 없을까요? 저는 자바 모릅니다 ts는 알고 있습니다 온라인강사님은 스프링에 대해서 kafka나 쿠버네틱스에 대해서 말씀하시는데 저는 그것을 네스트js로 실습하려고합니다 강의는 결제 전에 미리보기가 안되서 맛보기가 어렵더라구여 ㅜ.ㅜ 제가 아래에 제가 무엇을 공부했는지 적어보겠습니다 기본적인 게시판 구성이나 비디오 다운로드 정도 만들어보았습니다 네스트는 익스프레스와 달리 DI로 서비스를 여기저기서 모듈러 익스포트해서 쉽게 불러올 수 있는게 정말 인상적이었습니다 nestjs의 데코레이션을 추가하여 코드를 간결하게 하고 마치 익스프레스의 미들웨어처럼요! 데이터를 가로채서 원하는 쿼리스트링으로 조작할 수 있는 것도 새로웠습니다 익스프레스보다 훨씬 편하다는 생각을 지울 수가 없더라구여 ------ 인터넷에서 대용량처리 방법에 대한 광고를 확인했었는데 kafka, elesticsearch? 그리고 쿠버네틱스... 이러한 것들에 대한 도전도 해보고 싶습니다 하지만 죄다 스프링에서만 강의를 찍으시더라고요 스프링코드를 보는데 왠지 네스트와 비슷하다는 느낌을 받았거든요 네스트 게시판 비디오 rest api 정도 듣고 Kafka를 스프링 강의 기반으로 강의하는 영상 봐도 좋을까요? 미리보기가.안되서 두렵네요 지금 그냥 계속 게시판 복습만 하고 있습니다.. 국내 한국어 네스트 강의가 게시판이나 기본적인 restapi 밖에 없는 것 같습니다 공식문서는.너무 어렵구요 강의 토대로 공식문서 읽으면 빠르게.읽힐텐데 초보자니까 개척해서 nestjs kafka 도큐가 엄두가.안납니다 Msa 만드는게 제 꿈입니다 ㅜ.ㅜ ㅜ.ㅜ

개발자

#nestjs

#kafka

#spring

답변 0

댓글 0

조회 117

일 년 전 · 김석우 님의 새로운 댓글

안드로이드 경력 과제 및 면접

10년차 되기전에 한번 이직해야되지 싶어서 올해 차근차근 준비중인 안드로이드 7년차 시작하는 개발자입니다 코딩테스트 관련해서는 워낙 책도 많고 검색해도 잘나오고 심지어 유튭도 많아서 얻을 수 있는 정보가 너무많아 문제인데요 과제나 면접은 사실 직접 부딪혀봐야 알 수 있는 부분이긴한데... 부딪히기전에 먼저 사전 정보가 있으면 여러모로 좋지 않을까해서 검색도 해보고 했지만 안드로이드 개발 커리어관련해서는 생각보다 많이 없네요 ㅠ (iOS 개발자 만큼은 아니지만) 주변에 비슷한 경력의 안드로이드 개발자분이 없어서 어디 물어볼 곳도 없고... 요즘 미드레벨 경력 면접시 뭘 많이 물어보는지 과제를 수행하게되면 주로 어떤 요구사항이 있는지 전혀 감을 못잡겠네요 혹시 최근 5년 이상 경력으로 이직하신 안드로이드 개발자분 계시면 면접 및 과제전형에서 키워드만 살짝 알려주실수 있나요? 신입때는 과제가 대부분 Rest Api 연동 잘 하는지 리사이클러 뷰 구현은 잘 하는지, 추가로 리사이클러 뷰 구현시 카드뷰에 Glide 써서 이미지 로드 잘 하는지 정도 기억납니다

개발자

#면접질문

#이직

#안드로이드

답변 1

댓글 1

조회 233

일 년 전 · 동하 님의 새로운 답변

주니어 개발자 고민하는게 있습니다..

궁금한게 있습니다 자바스프링 관점에서 @RestController 를 예시로 들면 이 어노테이션을 왜 써야하는지,즉 어떨때 사용해야하고, 어떤 구조로 동작이 되는지를 알면 저는 끝이라고 생각합니다.. 하지만 김영한님 인프런 강의를 보면 이 기술에 있기전에 과거부터 거슬러 올라가서 이 기술이 있기전에 뭐가 불편했었고 이런게 불편해서, 다른 기술이 나왔고 그게또 발전해서 현재 이 기술이 나왔다는 전개로 학습을 했습니다 하지만 위 내용 까지 알아야 할까요? 이런 내용들까지 알고있는 것이 시니어개발자분들이 생각하는 ’기본기‘ 에도 포함이 되는지 궁금합니다. 꿈의 기업 네카라쿠배에 들어가는 것을 꿈꾸고 있고, 현재 그에 따른 노력을 하고 있습니다 빅테크에 들어가기 위해선 위 내용 같은 지식을 가지고 있는게 중요할까요? 시니어 개발자분들 께서는 어떻게 생각하시는지 알려주세요 아직 제가 잘 몰라서 이런 생각을 하는건지 우물안의 개구리 라는 생각이 들어서 질문 올립니다

개발자

#springboot

#java

답변 5

댓글 4

추천해요 7

조회 2,427

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

kafka restAPI 통신

현재 카프카로 서버간의 restAPI 통신을 구현하려고 하는데요 게시판 생성 요청 서비스를 만들때요. 게시판에는 멤버정보가 들어가는데요 게시판 생성요청 정보에는 게시판 제목 게시판 내용 멤버 id 가 있구요 게시판 생성요청시에 작성자id 를 가지고 멤버 서버로 멤버 정보를 요청하는 방식을 해보려고 합니다.
 카프카를 사용할때 1 . 게시판서버 게시판 생성메서드에서 프로듀서로 작성자id 를 특정 토픽에 보내고 
2 . 멤버서버에서 컨슈머 리스너를 통해 해당 토픽에 요청정보가 들어오면 3 . 요청을 처리하고 다시 객체를 반환 해줘야 하는데 이것을 다시 프로듀서로 작성하고 4 . 게시판서버에서 리스너로 응답받은 객체를 생성메서드에 주입시켜 게시판을 완성시키려고 했습니다. 찾아보니 컨슈머리스너는 void 이어야 한다고 하더라구요. 그렇게 되면 요청과 응답을 받는것을 어떻게 한 메서드 안에서 처리 해야 할까요 ? 찾아본 방법으로는 kafka rest proxy 라는것도 찾아봤는데 현업에서 사용하는 방법이 따로 있는지 궁금합니다

개발자

#kafka

#restapi

#kafka-비동기통신

답변 1

댓글 0

조회 370

일 년 전 · 권혁진 님의 답변 업데이트

처음으로 협업해보는 백엔드 개발자입니다

앱관련 서버쪽 백엔드 개발을 3명이서 하고있는데요 rest api 개발할게 여러개가 있는데, 1개의 api 개발에 3명이 달라붙냐, 3명이서 각기 다른 api들을 한개씩 맡아 개발해 나가냐로 지금 고민중에 있습니다. 세명다 백엔드 초보이고 협업도 처음이라, 백엔드 협업시에 개발 진행을 어떻게 해야할까요 ㅜㅜ 조언해주시면 감사하겠습니다

개발자

#백엔드

#spring-boot

답변 2

댓글 0

조회 261

일 년 전 · 오윤찬 님의 새로운 댓글

자바 백엔드 개발자가 되기 위해서 우선순위를 어떻게 정해야할까요?

안녕하세요 백엔드에 관심이 많은 학생입니다. 자바를 배우고 스프링과 스프링부트를 공부하려고 스프링부트3관련 책을 사서 공부하고 있습니다. 현재 rest api 형식으로 crud, jpa,타임리프,스프링 시큐리티,JWT,OAuth2,aws배포,깃허브 액션(ci/cd) 정도는 해봤습니다. 하지만 공부내용을 완벽히 제걸로 만들지 못한 것 같해서 좀 더 깊고 기초를 튼튼하게 만들고 싶습니다. 근데 이 책을 공부하고 난 뒤에 어떤 것을 배우면 좋을지도 잘 모르겠습니다. (데브옵스에도 관심이 있고 백엔드에도 관심이 있습니다.) 또한 이 상태에서 스프링을 공부할지 스프링부트를 공부할지도 모르겠습니다. 스프링부트를 한다면 무엇을 더 해야할지 정말 고민입니다...

개발자

#spring

#spring-boot

#우선순위

#백엔드

#자바-개발자

답변 2

댓글 2

조회 169

일 년 전 · 조용구 님의 새로운 답변

JWT 로그아웃 관련 질문 입니다.

JWT 를 사용하여 로그인 기능을 구현 하였습니다. 저같은 경우에는 로그인시 에세스토큰과 리플레시 토큰을 생성해서 사용중이 mysql 테이블에 저장을하고 토큰 두개를 반환하면 프론트(리엑트) 에서 세션 스토리지에 저장해서 에세스 토큰으로 통신하다가 만료가 되면 리플레시를 요청하고 리플레시를 보내서 데이터베이스에서 유효시간과 변형이 되지 않은것을 확인하면 다시 에세스 토큰을 발급하는 시스템으로 구현을 했는데요 이때 에세스 토큰은 30분 리플레시 토큰은 8시간을 주고 개발 하였습니다. 그런데 생각해보니 로그아웃을 구현 안했더라고요 프론트에서는 로그아웃하면 세션스토리지를 날려버리면 끝인데 RestAPI라 데이터만 주고 받으면 되는 형식이라 딱이 제가 받는게 없다는겨죠 그렇게 로그아웃을 찾아 보다가 다른분들은 Redis를 사용하여 리플레시 토큰을 입력받은 아이디를 key로 저장한후에 에세스를 발급하고 로그아웃하면 그토큰을 블랙리스트로 만들더군요 만료시간후에 자동 삭제되게 설정도 하는거 같아요 이게 어느 방향으로 개발하는게 맞는지 도통 모르겠습니다. 로그아웃 할때마다 리플레시를 무효화 시키고 로그인할 때 새로 생성해서 저장하는게 맞는지 로그아웃해도 데이터베이스에 리플레시 유효기간이 남아 있다면 그것을 계속 사용하는게 맞는건지 어느 글들을 보면 리플레시를 7일 한달도 주는 경우가 있더라구요... 그래서 잘 모르겠습니다. 로그인 -> 에세스,리플레시토큰 발급 -> 프론트 세션스토리지 저장 -> 에세스로 통신 -> 만료되면 리플레시 요청 -> 프론트에서 리플레시 통신 -> 데이터 베이스 확인후 유효검사후 에세스 다시 발급 -> 재로그인시 유효시간이 남으면 기존의 리플레시 토큰 사용 로그인 -> 에세스,리플레시토큰 발급 -> ........ -> 로그아웃시 Redis에 블랙리스트로 저장 -> 블랙리스트 접근불가 -> 다시로그인시 리플레시 새로발급 실무에서는 어떻게들 관리하시는지 알려주시면 감사하겠습니다.

개발자

#jwt

#로그아웃

#redis

답변 1

댓글 0

추천해요 1

조회 365

일 년 전 · 달레 님의 답변 업데이트

REST API 규칙 궁금합니다.

보통 rest api 네이밍 규칙에서 단수형보다 복수형을 사용하라고 하는데 단어 자체가 복수형일 경우에는 어떻게 하나요? 예를 들어서, 단어 data 같은 경우에는 data 자체가 복수형이니 /datas라고 하기도 좀 그렇고, 또 한편으로는 영어시험도 아닌데 팀끼리 컨벤션만 맞추면 다소의 문법오류는 괜찮지 않나? 하는 생각도 듭니다. 어떤게 더 나은 방향일까요?

개발자

#rest

답변 1

댓글 1

추천해요 3

조회 878

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

프론트와 백 연결중 Controller

일단 제 친구가 프론트 저는 백엔드 이렇게 서로 처음 팀프로젝트를 해보고자 노력하고 있습니다. 만드는 과정에서 궁금증이 생겼고 이걸 물어볼 곳이 없어서 선배개발자가 많은 이곳에 물어보려고 글을 씁니다! (우선 글이 좀 방황할 수 있는데 미리 죄송합니다ㅠ) ------------------------------ 현재 스프링을 통해서 개발 중인데 궁금한거는 @Controller에 있습니다 이 어노테이션은 view를 반환하고 @RestController은 data를 반환하는 걸로 알고 있습니다. 데이터를 주고 받고자 한다면 RestController를 사용하면 되는데 @Controller을 사용하기 위해서는 view를 반환하기에 html이 있어야 되는걸로 알고 있습니다. 그러면 @Controller를 통해서 작업을 처리하고자 한다면 백엔드 프로그램에 html을 놔둬야 하는건가요? 아니면, 프론트에서 html과 같은 것을 작성하고 그 view를 반환하는 건가요? 요약: 프론트와 백 연결과정 중 @RestController이 아닌 @Controller은 어떻게 연결하나요?

개발자

#spring

#백엔드

#프론트엔드

답변 2

댓글 8

조회 550