묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 진행관련
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]꼭 코드를 따라치면서 안해도 되나여? 진행이 너무 빨라서 이해가 안되서 머하는지도 모르고 따라치면서 지나가는 것 같은데 그냥 차라리 머릿속으로 흐름만 이해를 하고 넘어가는게 더 효율적인가여? 진행이 너무 늦어서서 질문 드립니다 죄송합니다 ㅜㅜ
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
H2 Database 초기 설정 문제
안녕하세요! 강의 섹션1 h2 데이터베이스 설치 관련해서 따라하던중 오류가 발생해 문의글남깁니다.지난 입문편 강의를 들을때 h2 데이터베이스를 잘 활용했고 이번에 jpa강의를 들으며 h2 데이터베이스를 생성하고 있는데 연결이 안되는 문제가 발생했습니다.우선, 저는 스프링부트 3버전으로 진행을 하고 있어 입문편 강의록에서 안내해주신대로 h2 2.1.214버전으로 진행중입니다.윈도우 사용자라 h2.bat파일을 실행하고, h2 console이 열린 다음에url을 localhost로 변경하고 JDBC URL에 jdbc:h2:~/jpashop을 입력하고 연결하기를 눌렀더니 아래와 같은 에러가 발생합니다.관련 디렉토리를 찾지 못해서 발생하는 에러라고 생각되어 해당 경로인 C:/Users/user에 jpashop이라는 폴더를 만들어 다시 실행해봐도 결과는 똑같았습니다. 또한, 해당 jpashop 폴더가 저희 프로젝트 폴더의 경로와 동일해야하나하는 의문이 들어 제 프로젝트 파일은 E드라이브에 있는데, 프로젝트 폴더를 옮겨야하나.. 하는 의문이 들기도 합니다. 경로 설정 문제인듯한데 적절한 해결책을 알려주시면 대단히 감사하겠습니다 .. 저는 환경설정이 너무 어려워요 ㅠ.ㅠ 하하...https://abcdefgh123123.tistory.com/331 이글 보고 해결했습니당 참고하세요 다들!
-
미해결코딩 초보자를 위한 파이썬 입문 강의
E353: Nothing in register
안녕하세요, 맥북으로 파이썬 3.8.6 설치 후 비주얼스튜디오코드로 똑같이 'pythonworksapce' 폴더 생성 후 hellopyhon.py 파일까지 만들었는데요.python에 권장되는 확장을 설치하시겠습니까?까지 확인 후 설치했는데, 코드 작성하려 하니 하단에 빨간줄로 'E353: Nothing in register' 라고 뜨네요ㅠㅠ.어떻게 해결할 수 있을까요?
-
해결됨한 장의 CheatSheet로 살펴보는 C#
visual studio code 설치 문제
안녕하세요, 설치하는 데 문제가 발생해 질문 남깁니다. .net 5.0 버전은 사용이 종료되어 7.0 버전을 다운 받았습니다. 다운 받은 프로그램은 첫 번째 사진에 표시한 2가지 입니다. 이후 강의 내용대로 프로그램을 실행하였으나, powershell과 visual studio 폴더 열기 모두 해당 오류 코드가 뜨면서 진행이 되지 않습니다. 이 경우에는 어떻게 해야 하는 건가요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
내장함수 타이머 작동 질문
작성된 코드는 똑같은데 타이머가 작동하지 않아요 ㅠㅠ min과 sec 두 변수 모두 String으로 감싸줘보기도 하고 min "+" sec 부분을 String으로 감싸주기도 해봤는데 해결이 안돼요 let auth = () => { const token = String(Math.floor(Math.random() * 1000000)).padStart(6, "0"); document.getElementById("number").innerText = token; document.getElementById("number").style.color = "#" + token; let time = 180; setInterval(function () { if (time >= 0) { let min = Math.floor(time / 60); let sec = Stirng(time % 60).padStart(2, "0"); document.getElementById("timer").innerText = min + ":" + sec; time = time - 1; } else { document.getElementById("finish").disabled = true; } }, 1000); };
-
미해결게임 프로그래머 취업 전략 가이드
편입생 졸업 및 학원 관련 문의드립니다!
안녕하세요! 최근 루키스님 강의를 통해 많은 도움 받고있는 수강생입니다.학원 수강을 위한 졸업 유예 여부와 진로에 대해 질문 드리고자 합니다.(바쁘신 만큼 사족을 빼고 최대한 요약했습니다.)부모님의 뜻에 따라 정보보안 특성화고 진학 -> 약간의 방황 후 전문대 진학 -> 충북대 소프트웨어학과 편입, 본인의 의지로 게임 클라이언트 개발자로 진로 변경 제 상황은 위와 같이 요약할 수 있으며, 현재 군필 24살 3학년 학생입니다.학점인정을 적게 받아서 아직 96학점을 더 따야 하는 상태입니다. (최소 5학년 1학기)어릴 때부터 자기주도적 학습 습관이 잡혀있지 않았다 보니이제라도 정신 차려서 강제적으로 학습 환경을 조성해준다는 쥬신을 다녀보려고 합니다.여기서 제 고민은 휴학/졸업 후 중 언제 다니는 것이 좋을까 하는 것입니다. 아버지는 이번에 바로 휴학을 하고 다녀보라고 하시는데,중요한 부분이라 쉽게 결정하지 못하고 있습니다. 휴학을 한다면 학원에서 열심히 배우며 공부 습관과 개발 과정 및 지식을 습득하고,복학 후에는 남은 학기를 마무리 하며 팀원을 모아 졸작으로 게임을 만들어 볼 수도 있겠죠. 졸업 후에 간다면 학원과정 수료 후에도 흐름을 끊지 않고 상용엔진 포폴을 만들어바로 취업전선에 뛰어들 수 있을 것입니다.각각 장단점이 있는데, 현재 기초 지식이 빈약한 상태라 이대로 바로 학원을 가게 되면빠른 수업 속도와 빡빡한 커리큘럼을 따라가지 못하지 않을까 하는 걱정도 듭니다. 제가 더 빨리 진로를 정하고 미리미리 공부에 전념했다면 좋았겠지만...선생님이 같은 상황이었다면 어떻게 하셨을 것 같은지 말씀해주시면 감사하겠습니다. 줄인다고 줄였는데도 길어졌네요. 긴 글 읽어주셔서 감사합니다.
-
미해결객체 지향 프로그래밍 입문
책임 분리 및 할당 관련 질문이 있습니다.
안녕하세요. 강사님.객체지향에서 시스템단에서 책임져야할 기능을무엇을 기준으로 해서 세부적으로 하위 기능들을 추출하고 각 객체(역할)에 할당한다고 하셨는데 궁금한점이분해된 책임을 적절한 객체에 할당하기 전에객체의 엔티티 구조에 대한 정의가 어느정도 나와 있어야 되는거지요 ?방법1 > 책임 분해 → 책임을 적절한 역할에 할당 → 책임 할당받은 객체 구현(해당 과정에서 필요한 정보들 셋팅)방법2 > 책임 분해후 할당하기전에 이미 엔티티 구조에 대해서 어느정도 구조가 완성되어 있어 책임을 수행하는데 필요한 정보가 많은 객체에 책임 할당.객체의 엔티티 구조가 어느 시점에 정의가 되는게 맞는걸까요 ?
-
미해결실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍
form.save() 부분이 안돼요
Internal Server Error: /polls/survey/Traceback (most recent call last): File "/opt/homebrew/lib/python3.11/site-packages/django/db/backends/utils.py", line 89, in _execute return self.cursor.execute(sql, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/backends/sqlite3/base.py", line 328, in execute return super().execute(query, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^sqlite3.OperationalError: no such table: polls_surveyThe above exception was the direct cause of the following exception:Traceback (most recent call last): File "/opt/homebrew/lib/python3.11/site-packages/django/core/handlers/exception.py", line 55, in inner response = get_response(request) ^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/core/handlers/base.py", line 197, in getresponse response = wrapped_callback(request, callback_args, *callback_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/minjiwon/Desktop/py/mysite/polls/views.py", line 98, in survey form.save() File "/opt/homebrew/lib/python3.11/site-packages/django/forms/models.py", line 542, in save self.instance.save() File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/base.py", line 814, in save self.save_base( File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/base.py", line 877, in save_base updated = self._save_table( ^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/base.py", line 1020, in savetable results = self._do_insert( ^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/base.py", line 1061, in doinsert return manager._insert( ^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/query.py", line 1805, in _insert return query.get_compiler(using=using).execute_sql(returning_fields) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/models/sql/compiler.py", line 1822, in execute_sql cursor.execute(sql, params) File "/opt/homebrew/lib/python3.11/site-packages/django/db/backends/utils.py", line 102, in execute return super().execute(sql, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/backends/utils.py", line 67, in execute return self._execute_with_wrappers( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/backends/utils.py", line 80, in executewith_wrappers return executor(sql, params, many, context) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/backends/utils.py", line 84, in _execute with self.db.wrap_database_errors: File "/opt/homebrew/lib/python3.11/site-packages/django/db/utils.py", line 91, in exit raise dj_exc_value.with_traceback(traceback) from exc_value File "/opt/homebrew/lib/python3.11/site-packages/django/db/backends/utils.py", line 89, in _execute return self.cursor.execute(sql, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/lib/python3.11/site-packages/django/db/backends/sqlite3/base.py", line 328, in execute return super().execute(query, params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^django.db.utils.OperationalError: no such table: polls_survey[05/Jul/2023 05:30:34] "POST /polls/survey/ HTTP/1.1" 500 141650 이렇게 뜨면서 안되고 어드민에서 survey 들어가는 것도 안되는데 makemigrations 다시 해봐도 똑같아요
-
미해결남박사의 파이썬으로 실전 웹사이트 만들기
데이터베이스 저장관련 질문입니다.
이름, 나이, 거주지... 등등 모든 데이터가 동일할때 저장하지 않게 하는 명령어가 따로 있을까요??없다면, if와 for문을 써서 대조 후 없다면 저장 이런식으로 코드를 짜야하나요?
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
패치조인 할 경우 궁금한게 있습니다.
패치 조인시 연관된 엔티티를 한번에 조회 하는 걸로 이해했습니다.근데 LAZY 가 아닌 EAGER 로 연관관계를 했을 경우도한번에 가져오는 걸로 아는데,String query = "SELECT t FROM Team t JOIN t.members "; List<Team> resultList = em.createQuery(query, Team.class) .getResultList(); for(Team team: resultList){ System.out.println("team : " + team.getName() + ", member size = : " +team.getMemberList().size()); }위에 코드를 실행했을 경우, EAGER로 연관관계 설정을 해서패치 조인과 같이 한번에 조회 될거라고 생각되었는데, 그렇치 안더라구요. 이유를 알 수 있을까요?
-
미해결Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트
1편과 2편의 차이점?
2편을 먼저 구매하여 수강중입니다. 1편과 겹치는 내용이 많다고 하셨는데, 1편을 보면 2편과는 다른 무언가를 얻을 수 있나요?
-
미해결Node.js 노드 빠르게 훑어보기: 서버부터 DB까지
중간중간 html 작성 코드가 안보여서 불편합니다.
detail 코드만 생성하라는 말 빼곤 다른 html코드를 어떻게 작성했는지 궁금합니다.
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
DB 락 획득 설정
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)아니오[질문 내용]안녕하세요. 트랜잭션을 시작한 후 CUD 쿼리를 사용하는 경우 자동으로 DB 락을 획득하게 되는걸까요? 혹시 원한다면 락을 걸지 않고 사용하는 설정도 있을 지 궁금합니다. 스프링을 사용할 때 @Lock 과 같은 애노테이션으로 락을 설정하는 것으로 기억하는데 설정을 하지 않아도 CUD 에서는 자동으로 락을 획득하게 되는걸까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
첨부 파일 코드자체 에러발생합니다. Test시에
Execution failed for task ':test'.> There were failing tests. See the report at: file:///C:/Users/kimta/Desktop/김영한%20강의자료/mvc2/message/build/reports/tests/test/index.html* Try:Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
-
미해결[핵집] 2025 빅데이터 분석기사(필기)_과목 3~4
교안 요청
1~2, 3~4 모두 수강신청했습니다. julianminci@naver.com으로 부탁드립니다. 더운 날씨에 건강 조심하세요. 감사합니다.
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
노드버드 7장 오류 질문드립니다
app.jsconst express = require("express"); const cookieParser = require("cookie-parser"); const morgan = require("morgan"); const path = require("path"); const session = require("express-session"); const nunjucks = require("nunjucks"); const dotenv = require("dotenv"); const { sequelize } = require("./models"); dotenv.config(); const pageRouter = require("./routes/page"); const app = express(); app.set("port", process.env.PORT || 8001); app.set("view engine", "html"); nunjucks.configure("views", { express: app, watch: true, }); //force:true로 할 시 서버 재시작시 모든 데이터베이스 날리고 다시 시작, true는 개발용 sequelize .sync() .then(() => { console.log("데이터베이스 연결 성공"); }) .catch((err) => { console.error(err); }); app.use(morgan("dev")); app.use(express.static(path.join(__dirname, "public"))); app.use(express.json()); app.use(express.urlencoded({ extended: false })); app.use(cookieParser(process.env.COOKIE_SECRET)); app.use( session({ resave: false, saveUninitialized: false, secret: process.env.COOKIE_SECRET, cookie: { httpOnly: true, secure: false, }, }) ); app.use("/", pageRouter); app.use((req, res, next) => { const error = new Error(`${req.method} ${req.url} no exist router.`); error.status = 404; next(error); }); app.use((err, req, res, next) => { res.locals.message = err.message; res.locals.error = process.env.NODE_ENV !== "production" ? err : {}; res.status(err.status || 500); res.render("error"); }); app.listen(app.get("port"), () => { console.log(app.get("port"), "waiting at the empty port."); }); index.js const Sequelize = require("sequelize"); const fs = require("fs"); const path = require("path"); const env = process.env.NODE_ENV || "development"; const config = require("../config/config.json")[env]; //설정 불러오기 const db = {}; const sequelize = new Sequelize( //불러온 설정을 시퀄라이즈와 연결하는 부분 config.database, config.username, config.password, config ); const basename = path.basename(__filename); //index.js fs.readdirSync(__dirname) .filter((file) => { return ( file.indexOf(".") !== 0 && // .으로 시작하는 파일은 숨김 파일이라는 의미 그래서 제외 file !== basename && //현재 파일인 index.js는 제외 file.slice(-3) === ".js" //마무리로 확장자가 .js인 파일만 불러오기 ); }) .forEach((file) => { const model = require(path.join(__dirname, file)); console.log(file, model.name); db[model.name] = model; //model.name은 model파일에서 class의 이름과 동일함 model.initiate(sequelize); }); Object.keys(db).forEach((modelName) => { //위에서 initiate할 때 같이 associate까지 하면 되지 않냐라고 할 수 있지만 associate는 모든 파일을 initiate해주고 해야함 console.log(db.modelName); if (db[modelName].associate) { db[modelName].associate(db); } }); module.exports = db; //시퀄라이즈와 그의 모델들은 자주 사용하니까 서로 묵어서 exports 해줌 언제어디서든 쓸 수 있게 .sync() ^TypeError: Cannot read properties of undefined (reading 'sync') at Object.<anonymous> (C:\Users\zzan9\OneDrive - dgu.ac.kr\nodejs\nodebirdSNS2\app.js:22:6) at Module._compile (node:internal/modules/cjs/loader:1267:14) at Module._extensions..js (node:internal/modules/cjs/loader:1321:10) at Module.load (node:internal/modules/cjs/loader:1125:32) at Module._load (node:internal/modules/cjs/loader:965:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:83:12) at node:internal/main/run_main_module:23:47Node.js v20.1.0 이런 오류가 뜨는데 왜 뜨는지 모르겠습니다.. 검색해도 답이 나오지 않길래 질문드립니다
-
미해결앨런 iOS Concurrency(동시성) - 디스패치큐와 오퍼레이션큐의 이해
'동기'와 '동시성 프로그래밍'에 대해 질문드립니다.
안녕하세요 앨런(Allen)님!수강 중 질문이 생겨 처음 인사드립니다.[섹션0.GCD - 1.GCD/Operation에 앞서] 강의까지 듣고 동기(Sync)는 동시성 프로그래밍(Concurreny Programming)이 아닌 건지 질문드립니다.-2개 이상의 프로세스가 동시에 작업하는 것이 ‘동시성 프로그래밍(Concurreny Programming)’이고 IOS에서 이러한 동시성 프로그래밍을 사용하기 위해 작업을 대기행렬(Queue)에 보내며, 대기행렬(Queue)은 직렬(Serial)과 동시(Concurrency)이라는 특성을 가지고 있다고 이해했습니다.이 과정에서 동기(Sync)는 작업을 다른 스레드(Thread)에서 하도록 시킨 후, 기다렸다가 다음 일을 진행한다고 설명해 주셨는데 그렇다면 동기(Sync)는 동시성 프로그래밍(Concurreny Programming)이 아닌 건지 확실하게 확인하고 넘어가면 좋을 것 같아 질문을 드리게 되었습니다.추가로 대기행렬(Queue)의 특성 중 직렬(Serial)은 작업을 분산시킨 *메인 스레드(Thread)가 있기 때문에 동시성 프로그래밍(Concurreny Programming)으로 볼 수 있다고 이해했는데 이해한 내용이 맞는지도 함께 답변 주시면 큰 도움이 될 것 같습니다.*강의 영상에서 말하는 Thread1을 작성한 것입니다.-혹시 제가 잘못 이해한 부분이 있으면 함께 답변 남겨주시면 감사하겠습니다 :)
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
값형식 배열의 요소에 참조값을 넣는 방법이 있을까요?
안녕하세요.우선 질문의 취지는 다음과 같습니다.값형식의 배열요소에 필드변수를 직접 할당하는데 참조형식으로 할당하는 방법이 있나요? 문득 궁금해서 여쭤봅니다.
-
해결됨[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
퍼블리싱 싸이트 관련
강의 내용중 피그마로 모바일 퍼블리싱한 싸이트가 있던데 저도 접속해서 볼 수는 없나요?
-
미해결면접과 취업을 부르는 '퍼블리셔 개인 포트폴리오 홈페이지' 제작
파일질라 카페24? 관련 질문입니다
위 사진처럼 넣은 이미지들이 상대경로는 잘나오는데 절대경로는 안나온는데 상대경로만 가능한걸까요?