묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 중급 2편
해시 알고리즘 9 - 해시 충돌 구현의 마지막 코드 도식화
안녕하세요! 제가 이해하고 있는 부분이 맞는지 궁금합니다.LinkedList<Integer>[ ] buckets = new LinkedList<>[ ] 를 하면, LinkedList<Integer> 타입을 갖을 수 있는 배열이 생성되고, buckets[0] , buckets[1] .. .. 처럼 인덱스 번호를 이용해서 접근가능합니다. 여기서 궁금한점은 LinkedList<Integer> 타입으로 구성된 각 배열들은 LinkedList<Integer>의 인스턴스가 생성된것이 아니라, 단지 LinkedList<Integer>의 타입을 갖을 수 있는 참조 변수 인건가요?? 그 후에 각 참조변수 안에서 new LinkedList<>의 코드를 사용해서, LinkedList<>의 인스턴스가 생성되어 연결된것인가요??그렇기 때문에, add 메소드에서, buckets[1].add와 같은 문장이 생성될 수 있었는지 여쭤보고싶습니다.
-
미해결스프링은 어려워! 코틀린과 Ktor로 백엔드/서버개발 기초정복 (커피주문시스템 개발)
코틀린 코드 보기
위 강사님 화면 에서의 코틀린 파일아래 재 인텔리제이 에서 코틀린 파일강사님 처럼 코틀린 파일의 소스 코드를 보고 싶은데 따로 설정하신 부분이 있을까요? 자바 파일처럼 라이브러리의 구현 코드를 직접 보고 싶네요.
-
해결됨스프링 DB 2편 - 데이터 접근 활용 기술
DB 테이블명들이 복수형일 때 자바 엔터티 클래스명을 단수로 써야 할지 복수로 써야 할지 궁금합니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]강의의 @Table(name = "orders") 이 부분 때문에 궁금한 점이 생겼습니다. @Entity @Table(name = "orders") @Getter @Setter public class Order { . . . }이 경우 데이터베이스에 생성되는 테이블명이 orders로 복수형이 되는데, DB를 설계할 땐 테이블명들을 전부 단수형을 쓰든, 전부 복수형을 쓰든 하나로 전부 통일하는 게 낫다고 들었습니다. 그럼 실무에서 데이터베이스 테이블명을 전부 복수형으로 통일한다면, 자바 코드의 엔터티 클래스 이름은 단수로 하고, @Table을 통해 복수형으로 바꾸게 되나요? 아니면 이 경우 @Table을 일일이 적기 번거로우므로 자바 클래스 이름도 복수형으로 하나요? 즉 예를 들어@Table("items")public class Item {}이런 식으로 모든 엔터티 클래스에 @Table을 통해 복수형 이름을 지정하는지, 아니면 @Table 애노테이션을 안 쓰고public class Items {}이렇게 클래스 이름 자체를 복수형으로 쓰는지 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
타임리프 에서 겹따옴표 내부에 홀따옴표 이후 변수 표기 방법
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]onclick=겹따옴표 내부에 홀따옴표 이후 변수가 제대로 표현이 안되는데 어떻게 해야 할까요?예를 들어 원하는건 다음과 같습니다.onclick="location.href='/edit/변수'"변수의 형태는 ${item.id} 입니다.아래와 같이 시도를 해보았습니다.th:onclick="|location.href='@{/edit/${item.id}}'|"위와 같이 시도를 해 보았는데 웹페이지 소스보기를 하면 아래와 같이 출력이 됩니다.onclick="location.href='/edit/${item.id}'"홀따옴표 앞에 역슬래시, 백틱 등등 해볼건 다 해보았는데 잘 안되네요. 뭔가 분명히 방법이 있을 것인데요. 조언 부탁 드립니다. 감사합니다.
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
The emulator process for AVD Pixel_7_Pro_API_34 has terminated.
에뮬레이터를 실행하면 계속 이렇게 오류가 뜨고 실행이 안되네요.. 컴퓨터를 초기화하고 계속 해도 이렇게 오류가 뜹니다ㅠㅠ
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
일기 수정 content 기본 값이 원래 일기 내용으로 안보이고..
제가 1번 일기 수정을 누르고 수정 페이지에 들어가면1번일기의 오늘의 일기 기본값으로 "1번 일기 내용"(원본 content) 있어야 하잖아요? 근데 content 표기는 안되고 placeholder만 보입니다.. 아래는 코드입니다import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; import Button from "./Button"; import "./Editor.css"; import EmotionItem from "./EmotionItem"; const emotionList = [ { emotionId: 1, emotionName: "완전 좋음" }, { emotionId: 2, emotionName: "좋음" }, { emotionId: 3, emotionName: "그럭저럭" }, { emotionId: 4, emotionName: "나쁨" }, { emotionId: 5, emotionName: "끔찍함" }, ]; const getStringedDate = (targetDate) => { // 날짜 -> YYYY-MM-DD let year = targetDate.getFullYear(); let month = targetDate.getMonth() + 1; let date = targetDate.getDate(); if (month < 10) { month = `0${month}`; } if (date < 10) { date = `0${date}`; } return `${year}-${month}-${date}`; }; const Editor = ({ initData, onSubmit }) => { const [input, setInput] = useState({ createdDate: new Date(), emotionId: 3, content: "", }); const nav = useNavigate(); useEffect(() => { if (initData) { setInput({ ...initData, createdDate: new Date(Number(initData.createdDate)), }); } }, []); const onChangeInput = (e) => { let name = e.target.name; let value = e.target.value; if (name === "createdDate") { value = new Date(value); } setInput({ ...input, [name]: value, }); }; const onClickSubmitButton = () => { onSubmit(input); }; return ( <div className="Editor"> <section className="date_section"> <h4>오늘의 날짜</h4> <input name="createdDate" onChange={onChangeInput} value={getStringedDate(input.createdDate)} type="date" /> </section> <section className="emotion_section"> <h4>오늘의 감정</h4> <div className="emotion_list_wrapper"> {emotionList.map((item) => ( <EmotionItem onClick={() => onChangeInput({ target: { name: "emotionId", value: item.emotionId, }, }) } key={item.emotionId} {...item} isSelected={item.emotionId === input.emotionId} /> ))} </div> </section> <section className="content_section"> <h4>오늘의 일기</h4> <textarea name="content" value={input.content} onChange={onChangeInput} placeholder="오늘은 어땠나요?" ></textarea> </section> <section className="button_section"> <Button onClick={() => nav(-1)} text={"취소하기"} /> <Button onClick={onClickSubmitButton} text={"작성완료"} type={"POSITIVE"} /> </section> </div> ); }; export default Editor;
-
미해결[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
[3-2] TextInput 작동이 안됩니다
안녕하세요!천천히 따라서 코딩 하고 있었는데, 잘 따라 한것 같은데 InputField 설정 이후에 LoginScreen에서 placeholder 가 작동하지 않아서보니 클릭해도 키보드가 열리지 않더라고요InputField.tsximport React from 'react'; import { Dimensions, StyleSheet, Text, TextInput, TextInputProps, View, } from 'react-native'; import {colors} from '../constants'; interface InputFieldProps extends TextInputProps { disabled?: boolean; error?: string; } const deviceHeight = Dimensions.get('screen').height; function InputField({disabled = false, error, ...props}: InputFieldProps) { return ( <View style={[ styles.container, disabled && styles.disabled, Boolean(error) && styles.inputError, ]}> <TextInput editable={!disabled} placeholderTextColor={colors.GRAY_500} style={[styles.input, disabled && styles.disabled]} autoCapitalize="none" spellCheck={false} autoCorrect={false} {...props} /> {Boolean(error) && <Text style={styles.error}>{error}</Text>} </View> ); } const styles = StyleSheet.create({ container: { borderWidth: 1, borderColor: colors.GRAY_200, padding: deviceHeight > 700 ? 15 : 10, }, input: { fontSize: 16, color: colors.BLACK, padding: 0, }, disabled: { backgroundColor: colors.GRAY_200, color: colors.GRAY_700, }, inputError: { borderWidth: 1, borderColor: colors.RED_300, }, error: { color: colors.RED_500, fontSize: 12, paddingTop: 5, }, }); export default InputField; LoginScreen.tsximport React from 'react'; import {SafeAreaView, StyleSheet, View} from 'react-native'; import InputField from '../../components/InputField'; function LoginScreen() { return ( <SafeAreaView style={styles.container}> <View style={styles.inputContainer}> <InputField placeholder="이메일" error={'이메일을 입력해주세요.'} /> <InputField placeholder="비밀번호" /> </View> </SafeAreaView> ); } const styles = StyleSheet.create({ inputContainer: { flex: 1, margin: 30, }, container: { gap: 20, }, }); export default LoginScreen; color.tsconst colors = { WHITE: '#ffff', PINK_500: '#BF5C79', PINK_700: '#C63B64', RED_300: '#FFB4B4', RED_500: '#FF5F5F', GRAY_200: '#E7E7E7', GRAY_500: '#E8E8E8', GRAY_700: '#E575757', BLACK: '#000', }; export {colors}; 문제화면 몇번을 다시보고 input field를 다시 만들어서 해봐도 안되서 도움 요청드립니다 ㅜ
-
해결됨주요 지표 분석을 통한 비트코인, 알트코인 투자 노하우
비트코인의 유지관리
안녕하세요? 강의를 보다가 궁금한 점이 생겨서 질문을 드립니다. 저는 비트코인을 2024년에 처음 투자를 시작을 했습니다. 그래서 모르는 부분이 상당히 많습니다. 제가 비트코인을 처음 투자를 결심한 가장 큰 이유는 그 누구도 지금 비트코인의 시스템을 변경할 수 없다는 부분이 충격적으로 다가와서 입니다. 하지만 투자한 이후에 사실 비트코인 시스템은 변경이 이론적으로는 가능하다는 이야기를 들었고 기존 시스템의 변화를 원한 사람들과 유지를 원하는 사람들이 서로 논쟁이 있었다고 들었고 그것에 관련된 책이 블록 사이즈 워 라고 들었습니다. 그래서 궁금한게 다음과 같습니다. 채굴자들 또는 비트코인과 관련이 깊은 사람들은 아직도 비트코인의 시스템을 업데이트 하면서 변경하고 있나요? BIP 32 340 등등 업데이트가 있다고 들었는데 이게 어떤건지 저는 잘 모르고 이런 업데이트가 가능하다는건 기존 시스템의 변경도 가능하다는 건가요? 예를들어서 채굴가능한 비트코인을 늘리고 난이도를 조절하고 반감기를 조절하고 등등이 가능한건가요?정말 궁금합니다. 감사합니다.
-
미해결[켠김에 출시까지] UE5 다크앤다커 스타일의 익스트랙션 RPG (D1)
캐릭터 possess 문제인지 질문 드립니다
에디터에서 play 버튼을 누를 시 캐릭터 anim montage가 잠깐 실행되다가 중간에 멈추고 그 이후부터 입력은 들어가지만 애니메이션은 재생되지 않습니다.다만 월드에 스폰된 B_Hero_Gladiator를 에디터에서 클릭하면, 그때부턴 정상적으로 애니메이션이 재생됩니다.혹시 이러한 현상을 수정하기 위해서는, 어느 부분을 살펴보면 좋을까요?문제 상황 영상 링크 드립니다.https://drive.google.com/file/d/1aoWAUmri52KgmVs6AH1FgmRFLBeNbH7x/view?usp=drive_link
-
미해결김영한의 실전 자바 - 중급 2편
배열에서의 시간복잡도와 Object
안녕하세요 . int 타입의 경우 배열을 생성하였을때 int는 4바이트로 메모리크기가 정해져있고 그에 따라 (배열주소 * int의크기(4)) 로 O(1) 로 찾을 수 있다고 이해했습니다. 그럼 그렇다면 Object [] 배열의 경우에도 동일하게 동작하나여? Object나 다른 참조타입의 경우에도 메모리에서 각각의 인덱스의 참조주소가 동일한 크기를 가지고 배열이 생성될까요?
-
미해결[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템
Elite와 Normal Germ의 IsTarget()질문입니다.
안녕하세요!메인퀘의 KillTheEliteGerm 퀘스트와서브퀘의 KillTheNormalGerm 퀘스트가 둘 다 활성화되어 있을 때, NormalGerm을 죽이면 KillTheNormalGerm퀘스트의 카운트만 올라가는데, EliteGerm을 죽이면 두 퀘스트(Kill Elite,Kill Normal)가 모두 카운트가 올라가는 문제가 있어 질문드립니다! Elite를 죽일때 IsTarget() 디버깅을 해보니 서로 다른 타겟을 비교하고 있음에도 Any에서 true를 반환하여 Normal일때도 IsTarget조건문을 통과해 ReceiveReport를 호출하더라구요. 관련된 로직을 마지막 강의의 완성 코드와 비교해봤는데 달라보이는건 없는 것 같아 답을 찾지 못하여 질문드립니다. 왜 그러는지 조언해주실 수 있을까요? ㅠㅠ
-
해결됨Windows 소켓 프로그래밍 입문에서 고성능 서버까지!
shutdown()을 호출하는 이유
클라이언트에서 showdown()을 호출할때연결 종료 4 way handshake가 발생하는것을와이어샤크를 통해서 확인하였습니다. shutdown()을 호출하지 않고 closesocket()으로도연결 종료 4 way handshake가 발생되는데 왜 closesocket() 전에 showdown()을 호출하는 것인가요?
-
미해결실전! FastAPI 입문
[질문] patch API
patch부분 웹사이트에 적용이 안되는데 왜 그런지 알수있을까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
MVC를 제대로 이해를 못했는데,
MVC를 제대로 이해를 못했는데 넘어가도 될까요?
-
미해결실무 중심! FE 입문자를 위한 React
[2-1] 강의링크 메모용
https://codesandbox.io/p/sandbox/2-1-29k09?file=%2Fsrc%2Findex.js%3A9%2C1
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
onSubmit 함수안에서 입력 했는지 판별하기
const onSubmit = () => { if (input.name === "") { // 이름을 입력하는 DOM 요소에 포커스 inputRef.current.focus(); } };위 코드는 강사님께서 알려주신 onSubmit함수인데 콘솔에 하나하나 찍어가면서 공부하다 보니까 inputRef.current가 가리키는 것이 input 태그여서 아래와 같이 조건문의 조건을 바꿔서 돌려봐도 잘 나오는데 input.name과 inputRef.current.value가 같은 것을 가리켜서 그런건지 궁금합니다! const onSubmit = () => { if (inputRef.current.value === "") { // 이름을 입력하는 DOM 요소에 포커스 inputRef.current.focus(); } }; 혹시 몰라서 input태그도 올립니다!<div> <input ref={inputRef} name="name" value={input.name} onChange={onChange} placeholder="이름" /> </div>
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
프록시 호출 문제
Member findMember = em.getReference(Member.class, member.getId()); System.out.println("findMember.getClass() = " + findMember.getClass()); //System.out.println("findMember.getId() = " + findMember.getId()); //em.detach(findMember); //em.clear(); //em.close(); System.out.println("findMember.getUsername() = " + findMember.getUsername());강의 38:40 초 내용 입니다 강의에선 em.close 를 하면 초기화 예외가 발생하는데 시간이 지나서 좀 바뀐건지 em.detach, clear 는 예외가 발생하는데 close 는 영속성 컨텍스트가 꺼지지 않고 정상적으로 작동을 해서 username 이 출력이 되네요다른 분들도 그런건지 확인 차 질문드립니다
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
JDBC URL 연동 문제
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]JDBC 연동 질문입니다. test.mv.db 가 C://USERS/USER/안에 만들어졌습니다. 하지만 인텔리제이에서 url로 진입시에 계속해서 Driver org.h2.Driver claims to not accept jdbcUrl 에러가 뜹니다. 다른 문의들 많이 참고해서 설정들도 꼼꼼히봤고, https://docs.google.com/document/d/1j0jcJ9EoXMGzwAA2H0b9TOvRtpwlxI5Dtn3sRtuXQas/edit?tab=t.0링크에 H2데이터베이스 접속 오류 해결방안2를 그대로 했지만h2콘솔에서는 접속이 잘되는 것 같은데 인텔리제이에서는 url 을 찾지 못하는 것 같습니다. 아래는 코드 입니다. 몇시간째 제자리라서 도움 부탁드립니다ㅜ
-
해결됨비전공자를 위한 Spring MVC 뽀개기 응용
오라클연동방법
선생님 질문있습니다현재 mvc초급편 강의 완료후강의가 좋다고 생각해서 mvc고급편 강의도 등록해서 수강중입니다. h2로 db사용중인데 오라클로 사용하고싶어서 변경하려고 하는데 문제가 생겨서 질문드립니다 zulu21 사용중이므로 ojdbc11.jar 다운받아서 라이브러리에 추가해줬습니다라이브러리 추가 방법은 project우클릭 build path를 통해서 libraries에서 classpath에 addExternal jars를 통해서 ojdbc11를 추가해줬습니다이후 pom.xml에 h2관련 디펜던시를 주석처리 하였고jdbcUtil.java에 Connection getConnection메서드 아래 try {// 연결에 필요한 정보// String user = "system";// String pw = "**";// String url = "jdbc:oracle:thin:@:1521:xe"; // 드라이버를 메모리에 할당Class.forName("oracle.jdbc.driver.OracleDriver"); // 연결된 객체 가져오기conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "system", "**");} catch (ClassNotFoundException e) {System.out.println("드라이버 로딩 실패");// 드라이버 주소가 잘못됨} catch (SQLException e) {System.out.println("연결 실패");// url이 잘못됨} catch (Exception e) {System.out.println("알수 없는 오류");}return conn;위로직을 추가했습니다 추가후 서버 재기동후 테스트결과Cannot invoke "java.sql.Connection.prepareStatement(String)" because "this.conn" is null위 오류가 나타납니다드라이버 로딩이 실패했다고 해서 conn주소 localhost를 ip로 바꿔서 테스트를 해보았는데도 똑같은 오류가 발생합니다 JDBCUtil.java 변경이전에 jdbc설정부터 왠지 잘못된거같은데오라클(디벨로퍼)연동방법 한번 설명해주실수 있나요 ㅠ??그리고 로컬오라클에는 board, users 테이블 모두 생성했고 테이블에 insert도 한 상태입니다.
-
해결됨실전! FastAPI 입문
디자인 패턴
덕분에 Fastapi 관련 수강 완료하였습니다. 이제는 디자인 패턴에 대해 설계를 공부해보려는데, Spring의 경우 MVC 패턴을 주로 사용하는데, Fastapi에서는 주로 어떤 디자인패턴으로 설계를 하시는 지 궁금하여 질문드렸습니다. 감사합니다