묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
aws 서버 비용문제 질문드립니다.
서버 인스턴스를 만든 상태에서 인스턴스 비용이 발생하지 않도옥 중간에 잠시 멈춰둘순없나요??
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
경로문제 재질문입니다.
https://www.inflearn.com/questions/1035575/%EA%B2%BD%EB%A1%9C%EB%AC%B8%EC%A0%9C-%EC%A0%9C%EA%B0%80%EC%9D%B4%ED%95%B4%ED%95%9C%EA%B2%8C-%EB%A7%9E%EB%8A%94%EC%A7%80-%EC%B6%94%EA%B0%80%EC%A7%88%EB%AC%B8%EC%9E%85%EB%8B%88%EB%8B%A4에서 ai답변은 둘이 다르다고 나오고 서포터즈는 둘이 같다고 설명하셔서... 결국 만일@RequestMapping("/basic")이있고@GetMapping("text-basic")@GetMapping("/text-basic") 두개가있으면위는 /basic/text-basic에 매핑되는 거고아래는 /text-basic에 매핑되는게 맞나요?? 아니면 둘다 /basic/text-basic로 같은 건가요?? RequestMapping은 무조건 적용되는 건가요?
-
미해결스프링 프레임워크는 내 손에 [스프1탄]
hikariConfig 설정부분에서 에러가 납니다.
<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig"> 이부분에서 에러 내용이 Element 'bean' cannot contain text content. The content type is defined as element-only. 라고 나오는데 뭐가 문제일까요? pom.xml에서 <dependency> <groupId>com.zaxxer</groupId> <artifactId>HikariCP</artifactId> <version>3.4.1</version></dependency>이렇게 설정했습니다.
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Category
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]Category 에 parent와 child의 역할이 뭔지 수업을 듣고도 잘 모르겠습니다 단순히 부모카테고리 자식카테고리로 알고있으면 되는걸까요? 이렇게 만들면 연결된 items 하고도 부모카테고리와 자식카테고리가 어떻게 엮이는지 잘 이해가 안갑니다
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
V4 질문드립니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]등록할 땐 수량 9999 제한이 있고수정할 땐 없어야 하는데 등록할 때부터 가격123 수량12312312가 등록됩니다.가격 123123 수량 123123으로 설정하면 상품의 가격 * 수량의 합은 10,000원 이상이어야 합니다. 현재 값 = -2,020,596,055 이런 식의 오류가 뜨구요.. 하라는대로 다 따라하고 pdf파일의 코드 복붙도 해보고 소스코드에 있는 프로젝트를 실행해봐도 결과는 다 똑같이 나오고있습니다 어느부분을 수정해야 정상작동되나요?
-
미해결스프링 핵심 원리 - 기본편
@RequiredArgsConstructor 과 @Qualifier은 동시 사용이 되지 않는 건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]강의를 수강하다가 궁금한 것이 있어 질문드립니다.이전 롬복 강의에 이어 @Qualifier 사용 코딩하니 롬복과 @Qualifier 이 동시에 되지 않는 것으로 판단됩니다.같이 사용할 수 있는 방법은 없는 것인가요?@Qualifier 사용을 위해서는 @AutoWired로 생성자 주입을 해야하는 것인가요? 실무에서는 어떻게 하시는지 궁금합니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
타임리프 disabled에 대해 설명해주세요
타임리프에서 disabled 속성을 사용하면 양식 요소를 비활성화하여 사용자의 입력을 제한할때 유용하다고 알고있는데 그럼 이기능을 사용하면 아예 사용자는 수정이 불가능한건가요? 잘이해가안가네요 이걸 쓰면 사용자는 이 필드를 어떻게 활용하죠??
-
미해결쥬쥬와 함께 하루만에 시작하는 백엔드 - 스프링, 도커, AWS
2-4 수정중 오류
안녕하세요 쥬쥬님 강의 너무 잘 듣고 있습니다 제가 따라가는건 잘했는데 지금 AGE 부분이 프라이머리 키로 지정이 되어있는 것 같은데 어디서 부터 잘못된건지 모르겠습니다...
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프2탄]
fileItem.getName().substring(idx+1) 사용 이유가 궁금합니다.
System.out.println(); 을 찍으면서 공부 하던중System.out.println(fileItem.getName()); 을 찍어보니 "IMG_0142.JPG" 이런 식으로 파일이름만 나오더라고요.fileName=fileItem.getName().substring(idx+1); 코드를 fileName=fileItem.getName(); 이렇게 바꿔서 넣어줘 봐도 오류 없이 잘 실행 되더라고요.왜 저런 식으로 코드를 처리하셨는지 제가 놓치는 부분이 있는 거 같아서 질문드립니다. 감사합니다 !
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Category-Item의 다대다 관계에 대한 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]다대다 관계는 실무에서 한계가 크다는걸 배우고 다대일 일대다 관계로 중간엔티티 CategoryItem을 만들어서 해보려고 하는데 그떄 어떻게 연관관계를 짜면 될까요?어떤컬럼을 어떤식으로 받아오면되는지 헷갈립니다...
-
미해결Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트
SystemUuidHolder를 테스트하는 경우
Interface를 이용하여 완충재를 두고 테스트를 할 때는 테스트를 위한 mock 구현체를 이용하여 final 메소드를 stub하는 것을 피한다는 것은 이해를 했는데요. 갑자기 드는 생각이 결국 프로젝트가 배포될 때는 SystemUuidHolder라는 구현체를 사용하게 되고 그러면 해당 클래스의 대한 테스트도 진행해야 하나요? 진행한다면 해당 클래스는 UUID를 사용하고 있으니 final 메소드를 stub하는 상황을 피할 수 없게 되는건가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Fetch Join된 Table과 Fetch Join
안녕하세요. 회사 신규 프로젝트로 Spring Boot와 JPA를 이용해 백엔드를 개발하고 있는 직장인입니다.원래 C#개발자다 보니 수업을 들으며 차근차근 따라가 보지만 의외의 경우가 발생해 힘들지만좋은 강의에 항상 재밌게 배우고 있습니다. 이번에 문의드릴 내용은 fetch join된 table에 다시 fetch join 하는 방법에 대해 문의 드리고자 합니다. 문제의 테이블 구조입니다.Count Table과 Contract Table은 company_code라는 pk로 N:1구조Contract Table은 Company Table과 company_code라는 pk로 N:1구조로구성돼 있습니다. 그리고 Count, Contract Table은 매핑되는 키에 대해서 FetchType을 Lazy로 설정한 상태입니다. 저는 여기서(JPQL기준) Count Table을 기준으로 Contract Table까지는 fetch join에 성공했지만 추가로 Company관련 쿼리가 N+1처럼 추가됐습니다. 혹시 제가 JPQL혹은 Query DSL방법으로 Contract Table과 Company Table을 fetch join 처리 후 다시 Count Table과 fetch join해 쿼리 하나로 해결 할 수 있는 방법이 있을까요? 감사합니다. :D
-
미해결실전! 스프링 데이터 JPA
Pageable에서 sort 내부 property에 대한 유효성 검사
안녕하십니까 영한님.강의 유익하게 잘 들었습니다. 덕분에 궁금증이 많이 해결되었습니다.다름이 아니라, 제가 Pageable를 사용한 페이징 기능을 테스트 해보는 과정에서 sort의 property에 실질적인 entity 정보가 노출된다고 생각되어 고민에 빠진 상태입니다. 페이징 관련된 파라미터를 dto로 받게되면 유효성 검사는 가능하나 sort의 순서를 보장하기 어려워 추가적인 파라미터가 필요하다고 생각됨.pageable로 받은 후 for문을 돌려 유효성 검사를 하게 되면 하위의 단계로 나눠지는 불편함 1) controller에서 dto로 유효성 검사를 위한 for문 2) entity는 service에서만 사용하게끔 유도하기 위해 controller에서는 유효성 검사가 끝난 dto를 service로 넘겨서 entity로 재조립하는 for문등등 여러가지 방법들을 고민해보다 질문드립니다.실질적으로 실무에서 사용되는 Paging 기법이 있거나 개선 사항이 있으면 공유해주시면 감사하겠습니다.
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
혹시 서비스에서 관련 레포지토리말고 다른 레포지토리를 의존해서는 안되는 이유가 뭘까요???
[질문 내용]안녕하세요 강사님!! MemberService에 MemberRepository와 LogRepository를 의존하는 걸 보면서 궁금증이 생겨서 질문 드립니다! 회사에서 일 할 때,하나의 서비스에는 관련 레포지토리만 의존하고필요하다면 다른 레포지토리는 직접 의존하지 말고 서비스를 통해서 해결하라는 말을 들어서 그렇게 코드를 짜왔습니다. 만약 다른 레포지토리를 의존해야 한다면 컨트롤러에서 하라고 들었던 것 같습니다. 예를 들면 MemberService에서는 MemberRepository만 의존하고LogRepository의 메소드가 필요하다면 LogService를 의존해서 LogServerce.메소드 이런식으로 불러왔습니다. 혹시 이런 식으로 다른 레포지토리를 의존하지 말고 서비스를 의존해야 하는 이유가 무엇인지 이유를 알 수 있을까요???단순히 계층구조를 지키기 위해서 인가요???
-
미해결스프링 프레임워크는 내 손에 [스프1탄]
registerCheck과 getMember은 같은건가요?
MemberMapper인터페이스의 public Member registerCheck(String memID); public Member getMember(String memID); MemberMapper.xml의 <select id="registerCheck" resultType="kr.board.entity.Member"> select * from mem_tbl where memID=#{memID} </select> <select id="getMember" resultType="kr.board.entity.Member"> select * from mem_tbl where memID=#{memID} </select> 요거 두개는 동일한게 맞을까요?
-
해결됨JPA & Spring Data JPA 기초
7강에서 SecondaryTable을 왜 사용하지 모르겠습니다.
왜 SecondaryTable을 사용하는지 이해가 잘 안됩니다.예시가 writer라는 엔티티 클래스에 엔티티가 아닌 클래스 2개 각각을 하나의 타입으로해서writer라는 테이블의 속성으로 사용하는 것으로 이해되었습니다.그럼 6강에서 배운것 처럼 그냥 WriterInfo와 Address 클래스는 @Embeddable를 선언하고writer클래스에서@Embedded private Address addr;@Embedded private WriterInfo info;이렇게 해서 사용해도 될거 같다고 생각합니다.제가 제대로 이해하고 있는지가 궁금하고 혹시 이렇게 사용하지 않는 이유가 있는지 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
도메인 getName이 null이라고 test 실행이 안돼요
(사진)
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Spring import 문제 해결을 못하겠습니다...
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]영상대로 따라하다가 도저히 해결을 못하겠어서 질문드립니다...실행되다가 아래 오류 메세지가 나오면서 실행이 안되네요 ㅠㅠ 어떤 오류인지 모르겠습니다.원래는 이클립스로 먼저 했었는데 똑같이 실행하다가 시작할 수 없다는 문구가 나오고 8080을 이미 사용중? 이라는 문구가 나왔네요 부탁드립니다. 아래는 인텔리제이 실행화면입니다.
-
미해결스프링 부트 웹 개발 입문 - 따라하며 배우기
안녕하세요 Ajax강의 잘듣고있습니다. 다름이 아니라 Ajax로 검색할떄 시작일이나 종료일 고객명과 같은 검색조건을 어떻게 구현해야하는지 고민을해보다 질문드립니다.
package com.boot.sailing.v3.controller; import com.boot.sailing.v3.service.MemberSvc; import com.boot.sailing.v3.vo.Cust_info; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.util.List; @Slf4j @RestController @RequestMapping ("/v3") public class MemberAjax { @Autowired MemberSvc memberSvc3; @RequestMapping("/member_searchAjax") public List<Cust_info> list( @RequestParam("start_date") String strStartDate, @RequestParam("end_date") String strEndDate, @RequestParam("name") String strName, Model model ) { List<Cust_info> list = memberSvc3.doSerch(strStartDate,strStartDate,strName ); return list; } } $(document).ready(function(){ // 조회버튼클릭 $.ajax({ url : "/v3/member_searchAjax", // 파일경로 method : "GET", // GET, POST contentType : "application/x-www-form-urlencoded", //data : _data, // 서버에 전달할 Parameter dataType: "json", // 서버에서 전달받을 Data 형식 async: false, // 비동기사용여부 true , false success : function(data) { // 성공시 실행 (java try) , JSON.parse 자동적용 RespData console.log(data) let _contents=null; for(let i in data) { _contents += '<tr>\n' + ' <td><input type="checkbox" name="chkCoffeeNo" value="' + data[i].no + '"></td>\n' + ' <td>Ajax' + data[i].no + '</td>\n' + ' <td>' + data[i].cust_id + '</td>\n' + ' <td>' + data[i].name + '</td>\n' + ' <td>' + data[i].email + '</td>\n' + ' <td>' + data[i].role + '</td>\n' + ' <td>' + data[i].reg_day + '</td>\n' + ' </tr>' } $("#t_body").html(_contents); }, error:function(request,status,error){ // 오류시 실행 (java catch) console.log("code = "+request.status +"message = "+ request.responseText +"error = "+ error); }, complete : function (){ // 성공/실패와 상관없이 실행 (java finally) console.log("Finish") } }); }); 고객정보부분에 제가 따로 검색기능을구현시도해보았습니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
간단한 주문 조회 V1: 엔티티를 직접 노출 관련 오타있어서 질문드립니다.
pdf 14페이지에서 order -> address가 아니라 order -> delivery가 아닌가요?order 클래스를 확인해봤는데, 지연 로딩에 해당하는 부분은 member 하고 delivery입니다.