묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
좋은 강의 감사합니다. 스프링과 프론트 관련 질문이 있습니다.
먼저 설명을 쉽게 해주셔서 기반이 되는 지식을 많이 배워갑니다. 좋은 강의 감사드립니다. 1. 강의 중 정적/MVC템플릿/API 부분에서, thymeleaf 템플릿 엔진 방식은 백엔드 서버에서 뷰를 구성해 화면을 보내주는 방식으로 이해했습니다. 그런데 이 방법은 프론트엔드와 백엔드를 구분하는 실무에서는 잘 사용되지 않을 것 같다고 생각이 됩니다. 실무에서 스택을 나눠서 개발할 때, 강의 중 보여주신 API 방식을 통해 json 객체를 전달하고 이것을 react나 vue로 만든 프론트 서버에서 받아서 화면을 구성하는 것인가요? 스프링이 프론트서버와 어떤식으로 연동되는지, json 객체만 전달하면 백엔드의 역할은 끝나고 프론트가 어떤 프레임워크던 백엔드는 관계가 없는 것인지 궁금합니다.(글로 설명하기 어려우시겠지만 간단하게나마 알려주시면 감사하겠습니다..) 2. 저는 스프링 부트를 통한 백엔드 웹 프로젝트를 진행하려하는 학생인데, 어찌됐건 결과물을 보여주기 위한 프론트가 필요하여 고민에 빠진 상태입니다. 웹 개발자가 되기 위한 프로젝트로, 템플릿 엔진을 통해 프론트는 최소화한 프로젝트와 스프링+프론트프레임워크까지 사용한 풀스택 프로젝트 중 추천하시는 게 있나요? 물론 제 목표에 달렸고 백엔드 쪽을 더 선호하지만 아직 진로를 명확하게 잡지 못해 혹시나 여쭤봅니다..ㅠ 기간은 짧게 1주, 길게 한달로 생각중입니다. 아직 제가 뭘 모르는지 모르는 상태인 초보 개발자라 질문이 두서없는 점 죄송합니다.. 다시 한번 좋은 강의 감사드립니다!
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
print('%06.2f' % (3.145678910))
print('%06.2f' % (3.145678910)) 이부분 설명이 이상하네요 print('%1.18f' % (3.145678910)) 분명 이부분 설명에서 1은 정수 몇번째 자리 18은 소수 몇번쨰 자리 까지 나타낸다고 설명하셨는데 print('%06.2f' % (3.145678910))이부분에서 정수 6번째 자리 소수 2번쨰 자리 까지 나타낸다고 설명을 안하고 질문1>>>>>>>> >>>>>>>>>--------------------------------------------- 총자리가 갑자기 6??? 이라는데 ... 어떤게 맞는건지 알려주세요 제가 실험을 해본결과 앞부분이 정수 몇번째 자리까지 나타내는게 아니고 총 몇자리를 나타내는건지를 나타내는것 같은데 맞나요? (질문에 대한 답변 감사드리겠습니다) 질문2>>>>>>>> >>>>>>>>>------------------------------------- print('{:09.2f}'.format(3.145678910)) 그리고 여기서도 0으로만 채워지네요 다른숫자는 안되는것같구요 제가 알아낸게 맞나요??
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
DB저장관련 질문입니다
안녕하세요하이버네이트는 변경되는 값을 캐쉬에 저장해놨다가 persist나 flush신호가 있을때 db에 값을 업데이트한다고 알고있는데요,따로 flush를 주지않으신거같은데 addStock등을 활용해서 값을 변경했을때 DB에서 자동으로 플러쉬가 나가는건가요?
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
문자열
print('{:>5s}'.format('nice')) 여기서 문자열인 경우 print('{:>5}'.format('nice')) s를 안붙여도된다고 했는데 붙여도 똑같은 값이 나오는데 가독성상 저는 붙이고 싶은데 붙여도올바른 방법인가요?
-
미해결인터랙티브 웹 개발 제대로 시작하기
defer은 사용하면 안되나요
head부분에 <script defer>구문 <script>를 사용하면 안되는 건가요 해봤는데 안되는것 같아서 이해가 안되서요 다른곳에서 봤지만 어떤 분은 js파일을 만들고 head부분에 <script defer src="파일이름.js"></script>이렇게 알려주시는 분이 있어서 질문 합니다!
-
프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
%질문
삭제된 글입니다
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
print('{:4d}'.format(42))
print('{:4d}'.format(42)) print('{:>4d}'.format(42)) 둘이 실행값이 왜 같을까요? 분명 강의 설명에서 :>4d 로 하면 4공간을 확보한 후 왼쪽으로 공백으로 확보하고 42로 포맷한다고 했어요 그래서 결론은 :>4d 의 결과값을 (공백)(공백)42가 나오는게 맞아요 그런데 :4d로 하면 반대로가 된다고 분명히 설명을 했는데 결과값이 같네요?? 강의 내용대로라면 결과값이 42(공백)(공백) 되어야 할텐데요 왜죠?
-
해결됨Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
removeTodo
removeTodo(todoItem, index) 위와 같이 했을 때 제 콘솔에는 undefined undefined 이렇게 나옵니다. 왜 이럴까요?
-
미해결리액트로 나만의 블로그 만들기(MERN Stack)
실행에서 라우트 에러
이제 리뷰를 하고, git 에서 소스를 다운받아 비교하면서 실행시키는 중입니다. 처음에는 history 문제로 세션문제가 발생하여 최신 것을 설치 후 해결하였으나, 처음 화면에서 로그인이 끝난후 어떠한 페이지나 동작을 시켜도 0.chunk.js:126941 Uncaught Could not find router reducer in state tree, it must be mounted under "router" Error: Could not find router reducer in state tree, it must be mounted under "router" 에러가 발생하며 , ReactDOM.render(<App />, document.getElementById('root')); 에서 표시되고 아래에 webpack_ require_ 여러곳에서 표시 됩니다. 거의 모든 동작을 시켜도 동일한 메시지가 발생하고 있습니다.
-
[리뉴얼] React로 NodeBird SNS 만들기
getServerSdieProps 질문ㅜㅜ
삭제된 글입니다
-
해결됨데브옵스(DevOps)를 위한 쿠버네티스 마스터
질문있습니다!
docker설치하는 방법이 여러가지가 있는데 대표적으로 우분투에서 제공하는 docker.io 설치랑 docker 공홈에서 제공하는 docker-ce 설치가 있는데 docker-ce로 설치할 경우 kubeadm 설치법이 조금 달라질수 있나요? 아니면 구조가 조금 틀려지는 건가요?
-
미해결스프링 핵심 원리 - 기본편
선생님~ 강의자료에서 수정해야 할 부분이 있는 거 같아요.
기본편 v1.0 pdf 파일 26페이지에서 위 쪽에 final을 지워야 하는 거 아닌가요?? 강의에서는 final은 초기값을 받아야한다고 지워주셨는데 강의 자료에서는 final이 남아있어서 글 남깁니당 쌤 진짜 강의 들으면 들을수록 넘 좋네요.... 감사합니다😍
-
해결됨정말 쉽게 풀어보는 코딩 테스트 top 기본 문제 (with 자바)
공부 방법 문의
이거 leetcode 에서 먼저 풀어보고 강의를 듣는게 좋을까요?? 아니면 강의를 먼저 듣고 문제를 직접 푸는게 좋을까요??? 코딩 테스트에 맞춰서 공부하려면 어떻게 하는게 좋을까요?? 예전에 leetcode top 100 에서 easy 만 먼저 풀었던 적이 있는데 medium 부터는 손도 못대겠더라구요 ㅠㅠ
-
미해결Svelte 입문 강의 - A부터 Z까지
생명주기 중 afterUpdate가 동작하지 않는 이유를 모르겠습니다
안녕하세요 생명주기 파트 수업을 듣던 중에 궁금한 것이 생겨서 질문드립니다 ^^; <script> import { beforeUpdate, afterUpdate } from 'svelte'; let num = 0; let p; function handleClick() { num += 1; } beforeUpdate(() => { console.log('beforeUpdate', p); }) afterUpdate(() => { console.log('afterUpdate', p); }) </script> <button on:click={handleClick}>Add</button> <p bind:this={p}>{num}</p> 위 코드를 실행하면 아래처럼 결과가 나옵니다. 첫번째의 beforeUpdate, 두번째의 afterUpdate는 페이지 로딩 전 후 일 것이고 세번째 beforeUpdate 로그는 코드의 마지막줄인 <p bind:this={p}>{num}</p> 에 의해서 DOM이 다시 수정되어 나온 결과라고 생각합니다 그런데 afterUpdate 로그는 왜 나오질 않는지 궁금합니다 코드를 바꿔가며 테스트해봐도 afterUpdate는 계속 동작이 되질 않습니다
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 챗봇 사이트 만들기
강의 시간 표시가 이상합니다
총 시간은 0분/0분으로 되어있고 각 강의마다 1분 미만으로 표시되고 있습니다.
-
미해결iOS/Android 앱 개발을 위한 실전 React Native - Basic
디비연동은 다른 react 수업에 나오던데 그거 보면 되나요?
디비연동은 다른 react 수업에 나오던데 그거 보면 되나요? 그리고 또 궁금 한게... 앱과 웹은 다른데 이 수업은 앱에 치중 되어 있잖아요... 그러면 이걸로만으로 부족 하겠지만 구글스토어에서 다운 받는 어플 같은거 만들 수 있게 하는게 이 수업인가요?
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
docker 에러
docker를 설치하고 docker run -it redis 를 실행 후 이런 에러가 뜹니다..ㅠ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
연관관계 메서드 질문 드립니다.
안녕하세요 강사님 강의 잘보고 있습니다~ 15분경에 연관관계 메서드 작성하실때 의문점이 생겼는데요 지난시간에 Team과 Member가 있는 프로젝트에서는 연관관계의 주인 쪽에서 메서드를 작성할때 public void changeTeam(Team team) { this.team = team; team.getMembers().add(this);} 이렇게 하였고 연관관계의 주인이 아닌쪽(Team)에서 메서드를 작성하실 때는 이렇게 하셨습니다. public void addMembers(Member member) { member.setTeam(this); members.add(member);} 그래서 저는 어느 쪽에서 하든지 먼저 새로운 객체를 필드에 넣어주고 리스트에 객체를 추가하는 순서라고 이해를 하였는데요 그런데 이번시간에는 public void addOrderItems(OrderItem orderItem) { orderItems.add(orderItem); orderItem.setOrder(this);} 이렇게 다른 순서로 작성하셔서 메서드 작성 순서가 바뀌어도 상관이 없는 것인지 헷갈리네요.. 제가 혹시 이해하지 못하고 놓치고 있는게 있을까요?
-
미해결단 2주간 키운 블로그로 월 80만원 용돈 벌기
추가 자료 부탁합니다.
자영업을 하고 있는데 블로그 만들어서 홍보할 생각입니다. 많은 기대가 됩니다. ^^ 메일은 qkrwjddyd@gmail.com 입니다.
-
미해결Flutter 입문 - 안드로이드, iOS 개발을 한 번에 (with Firebase)
해당 오류와 같은 문제가 발생하는데 제가 뭘 빼먹었을까요 ?
════════ Exception caught by widgets library ═══════════════════════════════════════════════════════ The following FirebaseException was thrown building StreamBuilder<FirebaseUser>(state: _StreamBuilderBaseState<FirebaseUser, AsyncSnapshot<FirebaseUser>>#fe17e): [core/no-app] No Firebase App '[DEFAULT]' has been created - call Firebase.initializeApp() The relevant error-causing widget was: StreamBuilder<FirebaseUser> file:///C:/Users/PC/AndroidStudioProjects/instagram_clone/lib/root_page.dart:10:12 When the exception was thrown, this was the stack: #0 MethodChannelFirebase.app (package:firebase_core_platform_interface/src/method_channel/method_channel_firebase.dart:118:5) #1 Firebase.app (package:firebase_core/src/firebase.dart:52:41) #2 FirebaseAuth.instance (package:firebase_auth/src/firebase_auth.dart:37:47) #3 new _LoginPageState (package:instagram_clone/login_page.dart:14:43) #4 LoginPage.createState (package:instagram_clone/login_page.dart:9:36) ... ════════════════════════════════════════════════════════════════════════════════════════════════════