묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨Spring Boot를 활용하여 채팅 플랫폼 만들어보기
@Transactional(transactionManager = "createChatTransacationMansger") 질문 있습니다.
질문1: 강의에서 saveChatMessage() 메소드 진입시 @Transactional(transactionManager = "createChatTransacationMansger") 사용하는것을 말씀 해주셨는데요. 선생님께서 말씀해주신 강의 내용을 그대로 말씀드리자면 " 웹소켓 같은 경우에는 하나의 커넥션 즉 세션을 하나에 계속 공유하고 계속 사용 중이기 때문에 이 스톰프를 사용하는 웹소켓 통신 아니면 기본적인 웹소켓 통신에서도 이 트랜잭션에 대한 경계가 되게 명확하지가 않는 경우가 있습니다. " 즉 이 말씀은 따로 이렇게@Transactional public void saveChatMessage(Message msg) { chatRepository.save(chat); } @TransactionManager() 만 추가해서 관리 하면 문제가 생기고 @Transactional(transactionManager = "createChatTransacationMansger")이렇게 별도로 TransactionManager 를 추가해서 관리 해야 문제가 없다고 이해 하면 될까요??? 왜 TransactionManager 를 따로 만들어서 관리하는지 이해가 안가네요 ㅠ,ㅠ그리고 "웹소켓 같은 경우에는 하나의 커넥션 즉 세션을 하나에 계속 공유하고 계속 사용 중이기 때문에 이 스톰프를 사용하는 웹소켓 통신 아니면 기본적인 웹소켓 통신에서도 이 트랜잭션에 대한 경계가 되게 명확하지가 않는 경우가 있습니다"즉 이 말씀은 saveChatMessage 경우는 웹소켓 전용만 사용 할때만 이용하는 오퍼레이션 이기 때문에 다른 HTTP 통신 경우에 오는 FLOW 경우는 saveChatMessage() 메소드는 사용하지 마라 라는 의미로 @Transactional(transactionManager = "createChatTransacationMansger")이렇게 별도의 TransactionManager을 사용한 것인지 궁금 합니다. 질문2 선생님이 말씀해주신 내용을 그대로 말씀드리자면플러시는 기본적으로 JPA에서 다루고자 하는 트랜잭션이 담겨있어야 되는데 담겨있지 않았다는 에러가 발생하게 될 거예요 왜냐하면 제가 말씀드렸던 것처럼 웹소켓은 하나의 통신으로만 공유를 하기 때문에 경계가 명확하지 않아서 JPA 에서 일반적으로 트랜지액션을 잘 인식을 하지 못하고 잘 넣어주지를 못합니다 이렇게 트랜젝션을 선언하지 않으면 문제가 발생된다고 해주셨는데요. @Transactional public <S extends T> S save(S entity) { Assert.notNull(entity, "Entity must not be null"); if (this.entityInformation.isNew(entity)) { this.entityManager.persist(entity); return entity; } else { return this.entityManager.merge(entity); } }JPA save 메소드를 보면 이렇게 @Transaction 을 선언하기 때문에 굳이 @Transaction 을 선언하지 않아도 문제가 없지 않을까요??
-
해결됨Real MySQL 시즌 1 - Part 1
ep11) Prepared Statement에서 질문
안녕하세요 강사님Client Side PreparedStatement 는 어떻게 SQL Injection을 막을 수 있다는게? 에 set하기전에 application에서 체크해서 막는다는의미인가요?
-
미해결입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
@PostCunstructer 를 사용하는 이유가 뭔가요?
DataIntialize 클래스에서 메서드에 포스트 컨스트럭터를 사용하셨는데 어떤 기능인지 잘 이해하지 못했습니다.해당 클래스를 빈으로 등록하면서 같이 초기화가 이루어 지게 하는건 안되는건가요?
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
vscode 자동완성 확장 질문
안녕하세요! 강의 잘 듣고 있는 수강생 입니다!제로초님 강의를 보면 다음과 같은 코드가 있을 때const express = require('express'); const path = require('path'); const app = express(); app.get('/',(req,res)=>{ res.sendFile(path.join(__dirname,'index.html')); console.log('GET / '); })app에 대한 HTTP METHOD 를 지원하는 라우팅 함수 및 req, res 에서 사용할 수 있는 함수들에 대해 자동 완성 되는 부분을 봤는데요. (예:`app.get()`,`res.writeHead()` 등) vscode의 각종 extensions 들을 설치해보고 vscode 자체의 옵션도 찾아봤지만 도저히 제로초님 처럼 자동 완성 되지가 않네요ㅜㅜ제가 이클립스를 사용하다가 이번에 노드 공부해보려고 다른 IDE를 사용해서 그런지 자동완성이 되지 않는 부분이 매우 불편한데 혹시 강사님 개발 환경 공유 가능할까요?강의와는 상관이 없는 질문인 점 죄송합니다
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
스프링부트로 실제 쇼핑몰을 제작해보고싶은데요..
스프링부트로 실제 쇼핑몰을 제작해보고싶은데요 혹시 결제기능관련이나 쪽지관련기능 로직짜는거 추가로 보강즘 해주실수없나요? 파이썬이나 자바스크립트 백엔드 관련강의들보면 결제기능 탑재나 쪽지기능 구현등 강의가 더러 널려있는데 유독 스프링부트관련해서는 이런기능을 구현하는 강의가 없는것같습니다
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프1탄]
response.sendRedirect / forward
어떤건 sendRedirect를 쓰고 어떤건 forward를 썼던데 쓰는 기준이 정해져 있는건가요? 아니면 방식만 다를 뿐 아무거나 써도 상관없는건가요?
-
해결됨MFC Windows 프로그래밍 - 응용
수업자료
수업자료가 외워서 끝내는 네트워크 핵심이론인데, 맞나요?
-
해결됨MFC Windows 프로그래밍 - 응용
수업자료
수업자료가 '외워서 끝내는 네트워크 핵심이론-응용'인데 이거 맞나요?
-
해결됨Spring Boot를 활용하여 채팅 플랫폼 만들어보기
강의 들으면서 블로그에 올려도 될까요?
안녕하세요! 제목처럼 강의 내용 들으면서 블로그에 정리하려고 하는데 괜찮을까요? :)
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
환경변수 설정을 yml 아니라 properties로 해도 상관 없나요?
yml과 properties의 차이가 계층구조 표현의 차이만 있는거 같은데 properties로 적용해서 강의를 진행하여도 상관이 없나요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
homebrew로 mysql 설치시 오류
안녕하세요. homebrew를 이용해서 mysql을 설치하려고 했는데 다음과 같은 오류가 떠서 질문글 남깁니다. 혼자 고쳐보려고 해도 인터넷에 레퍼런스가 없네요 .. homebrew 삭제후 재설치도 해봤는데 해결되지 않습니다. 도와주세요.
-
미해결중고급 SQL과 실전 데이터 분석 101 문제 풀이 [데이터분석/과학 Part1]
연습문제 4번 관련
강사님, 수업 자료랑 강의 내용과 상이한 부분이 있는 것 같아서 여쭤봅니다.11:50 부분에는 RANGE가 디폴트라고 말씀해주셨는데, 강의 자료에는 ROWS가 디폴트라고 적혀있어서요. 어떤게 맞는 것일까요?
-
미해결중고급 SQL과 실전 데이터 분석 101 문제 풀이 [데이터분석/과학 Part1]
연습문제 37번 관련
37번 문제 관련 질문이 있습니다.저는 LEFT JOIN 에서 TIMESTAMPDIFF 말고 BETWEEN '2006-01-15' AND '2006-02-14' 을 활용했는데요, 두 개의 답이 다르게 나와서 어떤 것이 정확한 방법인지 헷갈려서 문의드립니다.제가 문제를 잘못 이해한 것일까요?
-
미해결중고급 SQL과 실전 데이터 분석 101 문제 풀이 [데이터분석/과학 Part1]
연습문제 28번 관련
안녕하세요. 풀이중에 궁금한 것이 있어서 질문 납깁니다.연습문제 28번에 2가지 방식의 쿼리문을 설명해주셨는데요, 결과값이 각각 43 row, 42 row로 반환이 되어 다른 것 같습니다. 이럴 경우 두가지 방식 중에 어떤 것이 더 확실한 방법일까요?
-
해결됨MFC Windows 프로그래밍 - 응용
자료 다운로드 관련
안녕하세요 섹션1 (알고 있어야 하는 것들)에서 자료 다운로드가 안되는데 저만 그런건가요?? 확인 부탁 드립니다.
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
git 사용 오류 질문 드립니다
강의 내용대로 진행 후 commit 창과 git 창을 열었을 때 제가 이전에 작업했던 파일들 (D: 루트 디렉토리 안에 있는 이전에 git에 업로드한 적 있는 모든 파일들)이 함께 보입니다파일 경로를 모두 열어보면 선택해서 진행할 수는 있지만 해당 프로젝트의 git 시작 디렉토리가 제대로 설정되지 않은 것 같아 어떻게 해결하는지 질문 드립니다
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프1탄]
Export하기
eGovFrame-4.2.0을 다운받았는데 강사님이 시키는대로 했는데 압축파일이 생성되는것이 아니고 WAR파일 한개가 생성되는데 어떻게 해결해야 하나요?
-
미해결중고급 SQL과 실전 데이터 분석 101 문제 풀이 [데이터분석/과학 Part1]
강의 내 연습문제 유형 관련
강사님, 이전 강의들도 너무 유익하게 듣고 좀 더 심화된 학습이 필요하겠다고 생각하던 찰나에 하루 전에 중급 쿼리 강의가 업데이트되어 서둘러 결제했습니다.마침 쿼리테스트를 준비하고 있는데 핵심만 쏙쏙 뽑아주는 강사님의 코딩이 저한테 적합하다고 생각이 많이 들었거든요. 먼저 좋은 강의 제공해주셔서 감사합니다.다른게 아니고, 강의 내에 연습문제들에 관련된 질문인데요!준비해주신 연습문제가 AARRR이나 AB테스트와도 관련성이 있는지 객관적으로 판단하기가 어려워 여쭤봅니다.
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프1탄]
초기 설정
제가 부트캠프를 다니고 있어서 이미 tomcat,mysql,eclipse를 모두 다 깔아놓은 상태인데 선생님이 깔아라고 하는대로 다시 깔아도 서로 충돌 날 일은 없나요?
-
미해결[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)
몬스터 AI
안녕하세요 강의 잘 보고 있습니다.현재 3d 모바일 게임을 만들고 있습니다 가상 조이스틱을 이용해 플레이어를 이동시키고 있구요현재 몬스터 AI를 구현하기 위해 A*를 이용해서 PathFinding을 구현중에 있습니다 구현을 위해 맵은 1X1단위로 위에서 아래로 Ray를 쏴서 맵 정보를 저장해 놓은 상태입니다. 이런 상황에서 만약 몬스터는 (2, 0, 2)좌표에 Target은 (5.5, 0, 5.5) 좌표에 있다면 절대 Target을 찾을 수 없겠다 싶어 거리가 1이하이면 찾은걸로 가정을 하려 했습니다 그런데 그 사이에 장애물이 있을 수도 있고 별의 별 상황이 있겠다 싶어 이게 맞는건지 의문이 듭니다 이런 그리드 단위로 움직이지 않는 게임에선 어떻게 Finding을 해야 좋을까요?