묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결카프카 완벽 가이드 - 코어편
파티셔너에서 파티션 선정 방법에 대한 질문
안녕하세요, producer의 send 로직을 보면 Serialization을 먼저 수행하고 Partitioner에서 파티션을 결정 짓는것으로 보이는데요,key 값이 존재하는 경우 key 값에 대한 hash 알고리즘을 통해 파티셔너에서 파티션을 결정한다고 하였는데 직렬화 되어버리면 hash는 bytes 값에 대한 hash가 수행되는 건가요?? 만약 맞다면, 파티셔너도 특정 키를 가진 데이터에 대해서 원하는 파티션을 지정하도록 커스터마이징이 가능한 것으로 알고 있는데, 파티셔너를 커스터마이징한다면 key 값을 직렬화 하고 그것에 대한 해시알고리즘을 적용해서 파티션 넘버를 반환하도록 짜야하는 것인지 궁금합니다.
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
1강 숫자야구 문제 질문
안녕하세요,알려주신 대로 코드를 작성하였는데 결과가 계속 안나오네요. 혹시 어떤 부분에서 문제가 있는지 알 수 있을까요?n=int(input())result=0 # 가능한 결과의 개수mycon=[list(input().split()) for _ in range(n)]for a in range(1,10): for b in range(1,10): for c in range(1,10): count=0 if a==b or b==c or a==c: continue for i in range(n): strike_count=0 ball_count=0 #nowcon은 각 조건을 담은 리스트 nowcon=mycon[i] if str(a)==nowcon[0][0]: strike_count+=1 if str(b)==nowcon[0][1]: strike_count+=1 if str(c)==nowcon[0][2]: strike_count+=1 if str(a) in nowcon[0]: ball_count+=1 if str(b) in nowcon[0]: ball_count+=1 if str(c) in nowcon[0]: ball_count+=1 ball_count-=strike_count if strike_count==nowcon[1] and ball_count==nowcon[2]: count+=1 if count==n: result+=1 print(result) 감사합니다
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
풀링부분에서 푸쉬가 잘 안됩니다
2024/1/18오브젝트를 풀링을 만들어 보았는데풀링은 되는데 자식 오브젝트들이 모두 사라집니다아래 사진은 1번 씬에 배치한 유닛사진이고그 아래는 1번씬의 유닛을 푸쉬하고 2번씬에 팝한 모습입니다.같은 씬에서 팝한 다음 푸쉬를 진행했을 때6마리를 팝하고 푸쉬했는데 6마리 모두 자식오브젝트가 사라진 모습입니다. 바닥 타일도 모두 풀링을 사용하고 있는데 타일은 풀링이 잘됩니다 타일안에 자식오브젝트를 넣어놔도 같이 풀링되는데유닛 오브젝트만 풀링이 이상하게 되는 이유를 모르겠어요. 디버그 해볼려고 노력해본 내용도 추가합니다팝후 디버그화면에서 마우스로 하위오브젝트를 모두 비활성화 시키고 삭제하면 하위 오브젝트는 삭제되지않는다하지만 코드로 할 경우 삭제된다.팝하고 위치나 로테이션을 변환하지 않아도 하위 오브젝트가 사라진다.씬 clear를 거치지 않고 수동으로 푸쉬시에도 하위 오브젝트가 사라진다.푸쉬할때 활성화된 하위 오브젝트만 사라진다. 2024.1.19해결은 했는데 원인은 모르겠습니다.제가 사용하는 건 씬에 오브젝트 하나를 만들고 풀링된 오브젝트들을 한 오브젝트의 자식으로 모두 보내고삭제시 상위 오브젝트에서 자식 오브젝트를 모두 삭제하는 방법을 사용 했었고 강의 내용을 보면서 이 부분을리스트를 통한 저장 삭제 방식을 하였더니 해결 되었습니다.해결은 했는데 왜 해결되었는지 궁금하네요
-
해결됨2시간으로 끝내는 코루틴
코루틴 Job 상속에 관하여 질문드려요
안녕하세요 강사님~ 좋은 강의 너무 감사드립니다. 덕분에 코루틴 입문을 쉽게 할 수 있었습니다.다름이 아니라 강사님 강의를 완강하고나서 코루틴 관련 책을 보고 있는데요,Job은 자식에게 상속되지 않는 유일한 코루틴 컨텍스트라는 내용이 있네요.이곳저곳 더 찾아보니 부모 코루틴을 기반으로 고유한 Job을 갖는다는 내용이 있는데 정확히 이게 어떤 의미인지 모르겠어서 질문을 드립니다!
-
미해결스프링 핵심 원리 - 기본편
test 실행후 결과
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]어느 순간부터 테스트클래스를 실행시키면 아래 결과창에 Test Results라고만 나오고 각각의 test들의 결과는 나오지 않습니다. 무엇을 어떻게 설정해야 할까요? 테스트 이름 뿐만 아니라 class의 이름도 뜨지 않습니다.
-
미해결리눅스 입문 - 개념으로 탄탄히!!
VMWare Workstation
안녕하세요. ubuntu 실행 tool에 대해 질문이 있습니다.수업에서 사용하시는 VM VirtualBox대신에VMWare Workstation로 ubuntu 실행하여 수업을 진행해도될까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
@Controller, @RequestMapping 질문
@Controller @RequestMapping("basic/items") @RequiredArgsConstructor public class BasicItemController { private ItemRepository itemRepository; @GetMapping public String items(){ return "basic/items"; } }강의를 다 수강하고 혼자서 처음부터 만들어보고자 개발하고 있는데 오류가 발생해서 질문드립니다.여기서 @RequestMapping 대신에 @Controller("basic/items")를 넣어주니 localhost:8080으로 접속시 기존에 웰컴 페이지인 index.html로 접속하지 않고 바로 items.html을 화면에 보여주는 오류가 발생합니다. 뭐가 문제일까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
스프링 MVC - 웹 페이지 만들기에서 상품 상세강의 중에 질문
코드는 차이점은 포트를 8081로 바꾼 점 밖에 없는 데에서 id와 상품명을 눌러서 이동할 때 ERROR 15300 --- [nio-8081-exec-8] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: java.lang.IllegalArgumentException: Name for argument of type [java.lang.Long] not specified, and parameter name information not available via reflection. Ensure that the compiler uses the '-parameters' flag.] with root cause오류가 났습니다 해결은 여기 설정을 다시 gradle로 바꾸니까 해결은 됬는데 어째서 문제가 생겼던건가요?
-
미해결Next + React Query로 SNS 서비스 만들기
패러렐 라우트를 root layout.tsx에서 사용할수는 없나요?
안녕하세요 제목 처럼, 저는 @modal을 app경로에 생성해서 root 디렉토리의 page.tsx 와 함께 layout.tsx에 그려지길 원합니다. 그래서 저는 로그인 페이지를 따로 작성해서 가지고 있지 않고, 어느 페이지에서든지 모달창이 나오게 하고 싶습니다.
-
해결됨김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ScannerWhileEx2 질문
package scanner.ex; import java.util.Scanner; public class ScannerWhileEx1 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while(true){ System.out.print("이름을 입력하세요 (종료를 입력하면 종료): "); String name = scanner.nextLine(); if(name.equals("종료")){ System.out.println("프로그램을 종료합니다."); break; } System.out.print("나이를 입력하세요: "); int age = scanner.nextInt(); scanner.nextLine(); //숫자 입력 후의 줄바꿈 처리 System.out.println("입력한 이름: " + name + ", 나이: " + age); } } }package scanner.ex; import java.util.Scanner; public class ScannerWhileEx2 { public static void main(String[] args) { Scanner input = new Scanner(System.in); while(true){ System.out.print("상품의 가격을 입력하세요 (-1을 입력하면 종료): "); int price = input.nextInt(); //input.nextLine(); if(price == -1){ System.out.println("프로그램을 종료합니다."); break; } System.out.print("구매하려는 수량을 입력하세요: "); int num = input.nextInt(); //input.nextLine(); System.out.println("총 비용: " + price * num); } } }ScannerWhileEx1에서는 숫자 입력 뒤 줄바꿈 처리를 해줘야한다고 배웠는데ScannerWhileEx2에서는 숫자 입력 뒤 줄바꿈 처리를 하지 않아도 오류가 안생깁니다.두 문제의 차이가 궁금합니다.문자열과 숫자가 입력될 때만 줄바꿈 처리를 해주는건가요?
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
상품추천api오류
//상품 추천 api (feat: tensoflow) app.get("/products/:id/recommendation", (req, res) => { const { id } = req.params; //findOne으로 req을 통해 받아온 param값 id에 맞는 상품을조회한다. models.Product.findOne({ where: { id, }, }) .then((product) => { //id와 일치하는 상품에서 type값을 뽑아서, const type = product.type; //type값과 일치하는 상품들을 모두찾는다. models.Product.findAll({ where: { type, id: { //기준이되는 id와 일치하지않는 데이터만찾겠다. //예를들어 id가4번일때 4번을제외한 4번과 같은type의 상품만 보여줘야하는데 //4번도 함께 추천이되니, 4번을 제외하게해준다. [models.Sequelize.Op.ne]: id, }, }, }).then((products) => { res.send({ products, }); }); }) .catch((error) => { console.error(error); res.status(500).send("에러가 발생했습니다.."); }); });server.js에서 추천api를 작성하고 웹에서 확인하려고하면 에러내용TypeError: Cannot read properties of null (reading 'type')at /Users/kimsehun/Desktop/market-prj/h-market-server/server.js:191:28 이런 에러가발생합니다.models-product.jsmodule.exports = function (sequelize, DataTypes) { const product = sequelize.define("Product", { name: { type: DataTypes.STRING(20), allowNull: false, }, price: { type: DataTypes.INTEGER(10), allowNull: false, }, seller: { type: DataTypes.STRING(30), allowNull: false, }, description: { type: DataTypes.STRING(300), allowNull: false, }, imageUrl: { type: DataTypes.STRING(300), allowNull: true, }, soldout: { type: DataTypes.INTEGER(1), allowNull: false, defaultValue: 0, }, type: { type: DataTypes.STRING(50), allowNull: true, }, }); return product; }; 계속보고있는데,findOne부분에서 where을 통해 id값에 해당하는 상품을못찾아서 product에 데이터가 담기지않아서,type을 못불러오는거같은데.뭐가문제일까요??
-
미해결
JAVA Spring 환경설정
java spring 을 사용하려고합니다 근데 이때
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
useMemo 사용 시 의존성 배열을 전달해주지 않으면 어떻게 되는 건가요?
강의 진행 도중 ContextProvider 에 전달할 memoizedDispatches 를 선언하는 도중 useMemo 의 2번째 인자를 뺐더니, DiaryItem 내용을 수정해도 수정사항이 화면에 렌더링되지 않고 수정 전의 내용이 그대로 출력되었습니다.2번째 인자를 빈 배열로 넣어주면 정상적으로 동작하는 것은 확인했고, 구글링해봐도 useMemo(()=>{}) 이렇게 사용하는 건 올바른 리액트 구문이 아니다 라고만 나오는데왜 수정사항이 반영되지 않는 것인지 궁금합니다.
-
미해결Git과 GitHub 시작하기
소스트리 push 오류
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks push -v --tags origin main:mainremote: Support for password authentication was removed on August 13, 2021.remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.fatal: Authentication failed for 'https://github.com/ahha-k/hello-world.git/'Pushing to https://github.com/ahha-k/hello-world.git오류가 나면서 완료됨. 이라는 오류가 나서 더 이상 진전이 나가지 않습니다.해당 사항을 해결하기 위해 구글링을 통해 소스트리 파일 속 passwd 파일을 삭제하기도 하였고 재로그인을 통해 올바르게 깃허브 주소에 접속했는데도 불구하고 같은 오류가 뜹니다. 해결방법을 혹시 알 수 있을까하여 이렇게 질문 남깁니다.
-
미해결Next + React Query로 SNS 서비스 만들기
/ 로 들어갈 때 (beforeLogin) 폴더에 layout.tsx가 렌더링 되는 이유가 뭐에요?
/ 로 들어갈 때 (beforeLogin) 폴더에 layout.tsx가 렌더링 되는 이유가 뭐에요?(afterLogin) 폴더 밑에도 layout.tsx가 있는데 (beforeLogin) 폴더 밑에 layout.tsx가 칠드런으로 선택되는 이유가 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
1강 프로젝트 생성 강의 중
run 을 눌러서 0808을 확인해야 하는데 run자체가 안되네요. 왜 이러는 걸까요!?
-
미해결스프링부트 시큐리티 & JWT 강의
JWT - 24강 authenticationManager() 문제 해결책
버전 문제로 authenticationManager() 안되면 SecurityConfig @Configuration @RequiredArgsConstructor @EnableWebSecurity // 스프링 시큐리티 필터가 스프링 필터체인에 등록된다. public class SecurityConfig { private final CorsConfig corsConfig; // private final CorsFilter corsFilter; // Bean 으로 등록되어 있어서 바로 가져다 써도됨 근데 나는 걍 위에 클래스에서 메소드 호출할거임~ @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { AuthenticationManager authenticationManager = http.getSharedObject(AuthenticationManager.class); // http.addFilterBefore(new MyFilter3(), SecurityContextHolderFilter.class); http.csrf(CsrfConfigurer::disable); // http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS); http.sessionManagement((sessionManagement) -> sessionManagement .sessionCreationPolicy(SessionCreationPolicy.STATELESS)); http.addFilter(corsConfig.corsFilter()); // @CrossOrigin(인증X), 시큐리티 필터에 등록인증(O) // http.formLogin().disable(); http.formLogin((form)-> form.disable()); // http.httpBasic().disable(); http.httpBasic((basic)-> basic.disable()); http.addFilter(new JwtAuthenticationFilter(authenticationManager)); // AuthenticationManger http.authorizeHttpRequests(authorize -> authorize.requestMatchers("/user/**").authenticated() .requestMatchers("/manager/**").hasAnyRole("ADMIN", "MANAGER") .requestMatchers("/admin/**") .hasAnyRole("ADMIN").anyRequest().permitAll()); return http.build(); } } JwtAuthenticationFilter // 스프링 시큐리티에서 UsernamePasswordAuthenticationFilter 가 있음 // /login 요청해서 username, password 전송하면 (post) // UserPasswordAuthenticationFilter가 동작을 함 @RequiredArgsConstructor public class JwtAuthenticationFilter extends UsernamePasswordAuthenticationFilter { private final AuthenticationManager authenticationManager; // /login 요청을 하면 로그인 시도를 위해서 실행되는 함수 @Override public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) throws AuthenticationException { System.out.println("로그인 시도: JwtAuthenticationFilter"); return super.attemptAuthentication(request, response); } }
-
해결됨이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
SetupGASInputComponent() 함수 2군데에 작성 질문..
서버 전용 캐릭터든 클라이이언트 전용 캐릭터든 빙의 함수랑 SetupPlayerInputComponent()은 클라이언트에서는 아예 호출이 안되고 관련된 것들은 다 복제로 처리되고, 서버에서는 이 두 함수가 다 호출되면서 SetupGASInputComponent()가 중복 호출 되는 걸로 알고있는데 서버에서 중복 처리는 별로 상관 없는 건가요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
리다이렉트를 하는 이유
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 상품 내용 수정 폼에서 저장을 해줄 때 리다이렉트를 하는 이유가 무엇인지 궁금합니다. 전에 했던 방식으로 뷰를 반환하면 안되는 것인가요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
@ModelAttribute 어노테이션에 대한 질문이요!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]@ModelAttribute 어노테이션을 쓸 때, 해당 객체를 부르는 클래스 타입 위에 @Data 어노테이션을 사용하셨어요.근데 @Data 어노테이션 안에 @RequiredArgsContstructor라는 어노테이션이 있는데제가 보니까 @RequiredArgsContstructor는 멤버 변수의 접근제어자가 private이며 final이 붙은 애들에 대한 생성자를 자동으로 만들어준다. 라고 하거든요 근데 HelloData 클래스 안의 멤버 변수 (필드값)은 private이길래 @RequiredArgsContstructor 대신 @AllArgContstructor 어노테이션과 @Getter, @Setter 어노테이션만 사용해서 @ModelAttribute 어노테이션을 통해 요청하는 값에 대해 바인딩을 하려고 했는데, 바인딩이 안되는 오류가 발생해서 왜 이런 오류가 발생하는지 잘 모르겠습니다. 꼭 @RequiredArgsConstructor를 써야하는 이유에 대해서도 궁금하고, @AllArgConstructor는 왜 안되는지 궁금합니다.