묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
git push 중에 에러가 발생합니다.
git push 중에 다음과 같은 에러가 발생햡니다.error: src refspec master does not match anyerror: failed to push some refs to 'https://github.com/kparkjun/library-app.git'
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
gradlew 용어 인식 불가
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요../gradlew는 잘 되는 것 같은데 grdlew를 작성하니 gradlew : 'gradlew' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오.오류가 발생합니다. 어떤 점이 문제인지 파악하지 못해 질문을 올립니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
서버와관련해서 질문
보통 AWS를 이용해서 서버를 임대해서 웹사이트를 개설하잖아요? 개인용 소규모 웹사이트를 운영한다고쳤을때 집에다 만약 PC한대를 서버로 돌린다쳤을때그런경우는 AWS를 사용할필요가없잖아요?이런경우에 배포하는방법은 알려주실수없으신지?집에 따로 서버용 PC를 구축해서 개인용 소규모 웹사이트를 운영했을경우 배포는 어떻게해야할지 궁금해지네요 AWS는 사용하면 할수록 요금이 청구가되니 ㅠㅠ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
13분에 나오는 main 런 눌렀는데
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요?예[질문 내용]여기에 질문 내용을 남겨주세요.이렇게 뜹니다뭘 고쳐야 할까요?ㅠㅠ
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
ItemService updateItem
ItemService의 updateItem 메서드에서 영속성 컨텍스트에 있는 item의 값을 변경하고 있는데,제가 생각했을 때 데이터의 값을 변경하는 것은 repository에서 해야할 것 같은데 service 계층에서 직접 구현해 놓으신 이유가 있나요? repository에 update 관련 메서드를 하나 더 만들 수는 없나요?각자의 역할을 위배하는 느낌이어서 여쭤봅니다ㅠㅠ
-
미해결재고시스템으로 알아보는 동시성이슈 해결방법
Redis 질문입니다
현재 재고로직 처리하면서 redis를 사용하며다음과 같은 로직으로 구현하려 합니다. 재고는 redis에 넣어둔다.Redis에서 가져올수 없는 경우, rdb에 쿼리한다. 이때, 만약 rdb에서 재고를 가져오는 경우 어떻게 가져올수 있을까요? rdb데이터가 redis와 동기화되어 똑같이 있다면 다시 가져와 redis에 다시 넣어두면 되는데어떻게 동기화시킬수 있나요?? 주문이 끝날때마다 재고 rdb테이블에 insert하거나 update치면 rdb에 가해지는 부하나 재고rdb테이블의 lock으로 인한 성능저하는 redis를 쓰지 않을때와 별반 다르지 않지 않을까요??
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
Dto 생성에 관하여
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]Dto 관련하여 질문이 있습니다. A라는 도메인 안에서만 생각해볼때, 프론트측에서 api별로 필요로하는 데이터에 딱 맞게 여러 응답 dto를 생성하는것이 좋은지 아니면 하나의 응답 dto를 생성해서 프론트 측에서 필요로하는 data를 뽑아 사용하게 하는 것이 좋은지 궁금합니다.전자는 필요로하는 데이터를 프론트측에 전달해줘서 가독성? 측면에서 좋은 것 같지만 다수의 DTO가 생성되어 유지보수 측면에서 단점이 있을것 같습니다. 후자는 하나의 DTO를 사용하므로 유지보수 측면에서 좋아보이는데 dummy 데이터나 null 값을 return 해주는 단점이 있을것 같은데 실무에서는 어떻게 dto를 생성하고 관리하는지 궁금합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
db에서 Join vs 애플리케이션에서 조합
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]제가 한 게시판에서 이런 글을 읽었습니다."요즘에는 논리적인 연관관계는 만들지만 db에서는 만들지 않고 조인 연산을 거의 안 하고 여러 번 쿼리해서 애플리케이션에서 조합합니다."이유로는연관관계를 맺으면 테이블 설계에 있어 유연성이 떨어짐조인연산은 db 자원을 많이 잡아먹는 무거운 연산이고 db 성능에는 한계가 있어 서버를 확장해서 자원을 쓰는 것이 유리함라는 근거를 들었습니다.이것이 맞는 판단인지 궁금합니다(금융권에 계신 분이 쓴 듯 합니다)
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
강의에 언급된 개념 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)너무 사소한 질문이지만 작은 부분에서 혼동이 와 구글링 후 질문드립니다.강의시간 7:25 @PostMapping해당 강의에서 구성하신 로직은 API가 아니라고 이해가 됩니다. '다음으로'에서도 API와 분리된 개념으로 말씀하신 것 같습니다. 제가 알기로는 해당 로직도 API의 종류라고 알고 있습니다.강사님이 말씀하신 API는 JSON이나 XML로 응답코드를 얻는 RESTful API를 설명하신 것일까요,,? API 개념에 대한 혼동이 옵니다. 강의시간 11:45 '앞 단이든 서비스 계층이든 id에 대한 권한 여부 체크하는 것을 서버에 로직을 추가'하라고 하셨습니다. 앞 단이든 서비스 계층이든 상관없다고 하셨으니 여기서 말씀하신 서버는 백 단만 말씀하시는게 아닌 것으로 이해하면 되나요? [질문 내용]여기에 질문 내용을 남겨주세요.
-
미해결실전! 스프링 데이터 JPA
db에서 데이터 확인이 안됩니다..
안녕하세요, 강의 수강 중에 궁금한 점이 있어 질문드립니다! 섹션4의 벌크성 수정 쿼리 부분을 실습하고 있는데요, 테스트 코드 실행 후 db에서 변경된 내용을 확인하려고 했는데 데이터가 없다고 나옵니다..테스트 클래스에 @Rollback(false)은 설정했는데 어떤 부분이 문제인 걸까요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
OSIV 관련하여 질문드립니다!
User user = userQueryService.findById(userId); postService.createPost(user)OSIV를 끈채로 특정 유저가 게시글을 작성하는 로직을 Command와 Query를 분리하여 위와 같이 컨트롤러에 작성하고자 합니다.OSIV가 꺼져있기에 user는 준영속상태로, createPost 트랜잭션 안에서 user를 변경하지 않고 post 생성에만 사용한다면 위와 같이 사용하는게 맞는지 궁금합니다!만약 createPost에서 user를 변경하는 상황이 발생한다면, 예외가 발생하는지도 궁금합니다!
-
미해결Java TPC (생각하고, 표현하고, 코딩하고)
인강 강의내용
안녕하세요 이번에 강의를 듣고있는 학생입니다.혹시 제 개인블로그에 강의내용을 따로 정리해서 사용해도될까요?혼자 개인적으로 정리하고 자주 볼수있게 관리하고싶어서 문의드립니다!
-
미해결스프링 시큐리티 OAuth2
OAuth 2.0 Authorization Grant Code 네이버 로그인 구현
안녕하세요 정수원님 강의 내용과 조금 다른 부분이긴한데 질문드리고자 합니다.Vue와 Spring Boot(Spring Security OAuth Client로 활용)로 네이버 로그인을 구현해보고 있습니다.웹, 안드로이드, iOS 등에 대한 소셜로그인을 Authorization Grant Code방식으로 구현하려고 하고 있으며 REST API 방식으로 동작하도록 하고싶습니다.하지만 Spring Security의 org.springframework.boot:spring-boot-starter-oauth2-client 의존성을 추가하여 OAuth2UserService를 구현하게되면 백엔드에 your-server-host/ oauth2/authorization/naver로 요청을 보내면 사용자에게 로그인을 받고 Authorization Grant Code를 받아와 AccessToken을 반환받고 이를 통해 UserInfo를 Resource Server로부터 받아오는 과정을 처리해줍니다.이 과정속에서 프론트에게 로그인 성공시 실행되는 AuthenticationSuccessHandler 구현 과정에서 sendRedirect를 통해 accessToken과 refreshToken을 전달하려고 했으나 이런 방식은 REST API에 적합하지 않은것 같다고 느껴집니다.심지어 front에서 버튼을 클릭하면 GET 요청으로 /oauth2/authorization/naver를 호출하도록 해보려고 했으나 이 경우에 네이버 로그인 호출하는 과정에서 CORS에러가 발견되어 하이퍼링크로 호출하도록 구현하였습니다. 위의 배경으로 궁금한 점은 다음과 같습니다.프론트엔드와 Authorization Grant Code를 REST API 방식으로 구현하기 위해서는 어떻게 해야할까요? 제가 생각한 방식과 굉장히 유사한 블로그 포스팅을 발견했는데 Spring Security는 사용하지 않는 것 같습니다.(https://blog.naver.com/PostView.naver?blogId=varkiry05&logNo=222295764870) Spring Security를 활용하는 방안이 있다면 추천 부탁드립니다.. 혹은 굳이 Spring Security를 사용하지 않고 구현해도 된다고 생각하시는경우에도 의견주시면 감사하겠습니다.위의 경우에는 client-id를 프론트에서 관리하며 강좌에서 이런 경우에는 보안상의 이슈가 발생할 수 있다고 하셨는데 어떻게 대안점이 있을까요? (https://www.rfc-editor.org/rfc/rfc6749#section-2.3.1) rfc6749에서는 client-id는 secret이 아니라고 하는것 같습니다. 제가 처음 구현하려던 방식과 유사한 tech blog를 찾았습니다. 내부적인 커스터마이징을 통해 redirection을 구현한 것 같습니다.(https://tech.kakao.com/2023/01/19/social-login/) 이때 accessToken과 refreshToken을 redirect시킬 때 param으로 넘긴다면 url주소로 토근값들이 보일것인데 보안상으로 괜찮을까요? ps.실제로 https://olive.kakao.com/login (카카오 테크 블로그에 소개된 redirection이 구현된 페이지)의 js 코드를 까보니 <a> 태그 형식의 하이퍼링크로 호출함을 확인했으며, redirect되는 callback url에서 token값을 확인할 수 있음을 크롬 개발자도구 네트워크탭에서 확인했습니다. 감사합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
초반 println 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.무슨 오류인 걸까요...??현재 h2 DB는 실행 중 입니다.....😥
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
객체와 프록시를 비교했을 때 결과 값이 안 나와요!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.영상에선 참거짓이 나오는데 제건 이럭게만 뜨네요 ㅜㅜ
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
다차원 배열 순회부분
안녕하세요!! 좋은 강의 듣게 해주셔서 감사합니다 !!복습 중 이해가 안되는 부분이 있어 질문합니다!!//세로크기 10 가로크기 15에 해당하는 영화관 좌석 //세로크기 10 가로크기 15에 해당하는 영화관 좌석 String[][] seats3 = new String[10][15]; // 선언만 할 때에는 크기를 명시 String[] eng = {"A","B","C","D","E","F","G","H","I","J"}; for (int i = 0; i < seats3.length ; i++) { // 세로 for (int j = 0; j < seats3[i].length; j++) { seats3[i][j] = eng[i]+(j+1); System.out.print(seats3[i][j] + " "); } System.out.println(); } // 표 구매 seats3 [7][8] = "__"; // H9 seats3 [7][9] = "___"; // H10 // 영화관 좌석 확인 for (int i = 0; i < seats3.length ; i++) { // 세로 for (int j = 0; j < seats3[i].length; j++) { // 가로 System.out.print(seats3[i][j] + " "); // A1,A2,A3... } System.out.println(); }//영화관 좌석 확인 부분에서 String[][] seats3 = new String[10][15]; String[] eng = {"A","B","C","D","E","F","G","H","I","J"}; for (int i = 0; i < seats3.length ; i++) { // 세로 for (int j = 0; j < seats3[i].length; j++) { seats3[i][j] = eng[i]+(j+1); System.out.println(seats3[i][j] + " "); } }위 코드 fori 구문을 두번 반복한 뒤 System.out.print(seats3[i][j] + " "); 을 사용해나타내었는데, 이러지 않고 밑에 코드 블럭 처럼<바로 sout을 통해 좌석번호를 나타낸다면 틀린 코드인지 궁금합니다. ...>제가 해보았을 때 같은결과가 나와서...String[][] seats3 = new String[10][15]; // 선언만 할 때에는 크기를 명시 String[] eng = {"A","B","C","D","E","F","G","H","I","J"}; for (int i = 0; i < seats3.length ; i++) { // 세로 for (int j = 0; j < seats3[i].length; j++) { seats3[i][j] = eng[i]+(j+1); System.out.print(seats3[i][j] + " "); } System.out.println(); } 요러케요!!
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
다차원 배열순회 (후반전) ,seats[i][j] = eng[i]+(j+1);
//세로 크기 10 x 가로 크기 15에 해당하는 영화관 좌석 정보String[][] seats3 = new String[10][15]; //선언만 할때에는 크기를 명시해주자String[] eng = {"A","B","C","D","E","F","G","H","I","J"};for(int i=0;i<seats3.length;i++) {for(int j=0;j<seats3[i].length;j++) {seats[i][j] = eng[i]+(j+1); 선생님 eng[i][j+1] 이 아닌지 궁금합니다. ㅠㅠ System.out.println(seats);}}
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
안녕하세요. 배열 강의 부분에서 공부를 하면서 "값 변경"에 대해 드릴 말씀이 있습니다.
얕은 지식을 가진 제가 감히 강사님께 수정을 요청드려도 될 지 모르겠지만, coffees[2] = "에스프레소"; // 값 변경 에서 많은 학습하는 사람들이 주석에 쓰인 "값 변경"을 C나 C++에서 쓰인 value로 해석할 여지가 있으실 것 같아서 이것을 "참조값 변경"으로 수정해주시면 감사드리겠습니다. 왜냐하면 Java는 미리 public class로 선언한 부분에서 String class를 coffees로 객체명을 지어서 객체를 생성할 수 있고, 우측의 {"아메리카노", "카페모카", "라떼", "카푸치노"}; 인 참조 객체를 객체 변수에 할당하는 것이기 때문입니다.저는 강사님의 넓고 깊은 지식을 강의를 들을 때마다 매번 감탄하면서 배우는 입장인데, 제가 주제넘었다면, 이 글은 바로 삭제하겠습니다. 항상 퀄리티 높은 강의를 제공해주셔서 감사합니다 😄
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
오타발견해서 적어봅니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.31페이지정리하면대다대매핑을일대다, 다대일매핑으로풀어내서사용하자.대다대매핑->다대다매핑
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
h2 database 관련 질문
1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]회원 가입 후 id 값이 달라서 올라온 질문들을 보고 시퀀스 값을 확인해 보려고 하는데 왼쪽 목록에 시퀀스가 없는데 어떻게 볼 수 있나요?