inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

176만명의 커뮤니티!! 함께 토론해봐요.

데이터베이스 관련 질문 2가지

미해결

[리뉴얼] React로 NodeBird SNS 만들기

1. 예를 들어 유저가 2분류로 나누어지고 각 분류별로 저장되는 정보가 다를 경우에 user 테이블 (공통되는 정보들, ) pk: id (mail, password ...) fk : userTypeid aInfo 테이블 (a유형 유저만의 정보) pk: id (a유형 유저만의 정보들) fk: userId bInfo테이블(b유형 유저만의 정보) aInfo와 동일 이렇게 설계하면 user와 a, bInfo테이블 사이의 관계는 어떻게 정의하나요? (user는 aInfo와 bInfo중 하나와만 관계를 맺어야함.) aInfo.belongsTo(user); user.?(aInfo) 혹은 그냥 user 테이블에 모든 정보를 다 떄려박고 해당하지 않는 컬럼들의 값은 null로 저장해야하나요?? 더 나은 방법이 있는지도 궁금합니다. 2. sequelize 에서는 id 컬럼(pk)을 자동으로 만든다고 하였는데 실제로 mail 칼럼과 같이 유니크한 칼럼이 있을 경우에도 mail 칼럼을 pk로 두지않고 저 id를 쓰는 것이 더 나은 것인가요?

  • Next.js
  • nodejs
  • redux
  • react
  • express
권범수 댓글 1 좋아요 0 조회수 196

강의 자료 공유 부탁드립니다.

미해결

구글 스프레드시트로 배우는 업무 자동화(직장인 코딩)

안녕하세요 강의 자료 공유 부탁드립니다. 감사합니다.

  • regex
  • Google-Sheets
joon youngg park 댓글 2 좋아요 0 조회수 218

작동은 잘 되는데

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

실행시키면 작동은 되는데 서블릿 옆에 원형이 계속 돌아요 시간도 계속 지나고 있고 세팅에서 gradle말고 intel j로 바꾸면 아예 에러 나서 둘다 gradle로 했는데 느려서 그런걸까요??

  • spring
  • MVC
Lee-Hyoyeon 댓글 4 좋아요 1 조회수 359

2회 모의고사 4번 숲속의 기사 코드 질문이 있습니다.

미해결

코딩테스트 실전 모의고사(with C++) : 대기업 대비

#include <bits/stdc++.h> using namespace std ; struct Data { int x , y , day ; Data ( int a , int b , int c) { x = a ; y = b ; day = c ; } } ; int w , h ; int my_map[ 1001 ][ 1001 ] , ch[ 2 ][ 1001 ][ 1001 ] , res_me[ 1001 ][ 1001 ] , res_knight[ 1001 ][ 1001 ] , res_min = INT_MAX ; int dx[ 4 ] = { 0 , 1 , 0 , - 1 } ; int dy[ 4 ] = { 1 , 0 , - 1 , 0 } ; Data me( 0 , 0 , 0 ) , knight( 0 , 0 , 0 ) ; queue < Data > Q ; vector < Data > straw_pos ; void Find ( string m_or_n) { int ch_ ; if (m_or_n == "m" ) { ch_ = 0 ; } else { ch_ = 1 ; } while (!Q.empty()) { Data a = Q.front() ; int x = a. x ; int y = a. y ; int day = a. day ; ch[ch_][x][y] = 1 ; Q.pop() ; if (my_map[x][y] == 4 ) { if (m_or_n == "m" ) { if (res_me[x][y] == 0 ) res_me[x][y] = day ; } else if (m_or_n == "n" ) { if (res_knight[x][y] == 0 ) res_knight[x][y] = day ; } } for ( int i= 0 ; i<= 3 ; i++) { int xx = x + dx[i] ; int yy = y + dy[i] ; if (xx >= 1 && xx <= h && yy>= 1 && yy <=w) { if (my_map[xx][yy] != 1 && ch[ch_][xx][yy] != 1 ) { Q.push(Data(xx , yy , day+ 1 )) ; } } } } } int main () { ios_base ::sync_with_stdio( false ) ; cin.tie( NULL ) ; freopen( "input.txt" , "rt" , stdin ) ; cin >> w >> h ; for ( int i= 1 ; i<=h ; i++) { for ( int j= 1 ; j<=w ; j++) { cin >> my_map[i][j] ; if (my_map[i][j] == 2 ) me = Data(i , j , 0 ) ; if (my_map[i][j] == 3 ) knight = Data(i , j , 0 ) ; else if (my_map[i][j] == 4 ) straw_pos.push_back(Data(i , j , 0 )) ; } } Q.push(me) ; ch[ 0 ][me. x ][me. y ] = 1 ; Find( "m" ) ; // me Q.push(knight) ; ch[ 1 ][knight. x ][knight. y ] = 1 ; Find( "n" ) ; // knight for ( int i= 0 ; i<straw_pos.size() ; i++) { int x = straw_pos [ i ] . x ; int y = straw_pos [ i ] . y ; int sum = res_me[x][y] + res_knight[x][y] ; if (sum == 0 ) sum = INT_MAX ; res_min = min(sum , res_min) ; } cout << res_min ; return 0 ; } 강의는 다들었습니다. 로직 자체는 같은 것 같습니다. 다만 저는 영히의 위치, 기사의 위치, 딸기의 위치를 배열에 저장하고 진행하였습니다. 4, 5번 테스트 케이스에서 타임리밋이 나오는데 이유를 잘 모르겠습니다..... 답변해주시면 감사하겠습니다.

  • C++
  • 코테 준비 같이 해요!
어하 댓글 1 좋아요 0 조회수 324

Promise<void>를 리턴하는 이유가 무엇인가요?

미해결

따라하며 배우는 NestJS

안녕하세요. 강의 잘 듣고 있습니다. 아무것도 리턴해주는게 없을때 제 생각에는 void라고 해주면 될거같은데 promise를 붙어야하는 이유가 무엇인가요?? promise뺏더니 에러가 나긴 했는데.. async함수의 리턴 타입은 void라 하더라도 promise로 감싸줘야 하는건가요? 그럼 좋은 하루 보내세요.

  • jwt
  • TypeORM
  • NestJS
  • postgresql
특별한 지렁이 댓글 1 좋아요 0 조회수 2975

트러블 슈팅이 기억안나는 경우...

미해결

비전공자를 위한 개발자 취업 올인원 가이드 [취업편]

프로젝트 당시 이 내용을 알았더라면 좋았을텐데 하며 후회하고있지만 개발당시 기록을 따로 해놓지 않아서 사실상 기억나는 문제해결사항이 많이 없습니다. 이런 경우에는 어떻게 대처하는 것이 좋을까요? 그 때 기록했던 프로세스와, erd등은 있지만 딱 오류대처에 대한 내용은 따로 기록 하지않았습니다. 추가로 최근에 새로운 프로젝트를 하고있습니다만 이전의 프로젝트에 대해서 어떻게 트러블슈팅부분을 어필해야할지 모르겠습니다. 기억나는 것이 몇개 없더라도 그것만 기록하고 새로운 프로젝트에서 어필을 하는 것이 좋을까요?

  • 면접
  • 포트폴리오
wcsjinn 댓글 1 좋아요 0 조회수 810

Transactional에 관해서..

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

8분20초경에 @Transactional이 테스트 끝나면 롤백시켜주는 애노테이션이라고 하신거같은데 트랜잭션쓰기전에 테스트를 2번실행해서 오류가 난거는 오토커밋이 자동으로 설정이 되어있어서 그런건가요? 만약 설정이 되어있다면 그게 어디에서 설정이 된건가요?

  • transactional
  • spring-boot
  • MVC
  • java
  • spring
alrnr3521 댓글 1 좋아요 0 조회수 310

실무에서 사용에 있어서 질문이 있습니다

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

안녕하세요 강사님. 늘 좋은 강의 감사드립니다. 제가 지금 하던 업무에 연결시켜 테스트 케이스를 생각하다보니 이렇게도 사용할 수 있지 않을까? 하는게 있어서요. [환경] 1. 클라우드 웹 어플리케이션(SaaS) 2. 타사의 DB 내용을 현재 DB로 migration해야함(빈번) 빈번하긴 하지만 가끔가다 한 번씩 실행해주는 마이그레이션 코드이다 보니 이걸 실제 환경에 올려놓을 순 없어서 테스트케이스에 올려놓으면 어떨까 생각하고 있습니다. 위와 같은 케이스로 가끔하다 한 번만 실행해버리고 마는 코드들을 실제로 테스트케이스에서만 존재하게끔 하는지, 이래도 되는지(?) 여쭙습니다. 감사합니다.

  • java
  • spring
  • spring-boot
  • MVC
baekenough 댓글 1 좋아요 0 조회수 197

블라켓 에밋설치

미해결

반응형 웹사이트 포트폴리오(Architecture Agency)

검색창이 클릭이 안되서 에밋을 설치할수가없어요 ㅜ

  • jquery
  • 웹 디자인
  • HTML/CSS
  • 반응형-웹
okay18 댓글 1 좋아요 1 조회수 275

엔티티그래프 사용시 cross

미해결

실전! 스프링 데이터 JPA

@EntityGraph ( attributePaths = "professor" ) @Query ( " select l from Lecture l where l.professor.name like %:professorName% " ) List < Lecture > findLectureByProfessorName ( @Param ( "professorName" ) String professorName ) ; 위 코드를 작성하면 left outer join member professor2_ on lecture0_.member_id=professor2_.member_id cross join member professor1_ 이런식으로 출력이 됩니다. 그러나 위 두개 대신 @Query("select l from Lecture l join fetch l.professor p where l.professor.name like %:professorName%") 이렇게 쓴다면 from lecture lecture0_ inner join member professor1_ on lecture0_.member_id=professor1_.member_id where professor1_.name like ? 이렇게 출력됩니다. 왜 저는 엔티티 그래프를 쓰면 크로스 조인이 발생할까요..?

  • JPA
  • spring
  • java
  • spring-boot
신동훈 댓글 1 좋아요 0 조회수 274

오류가납니다..

미해결

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12

제것도 빌드하면 이런오류가 생기고 루키스님이 하신걸 압축풀어도 똑같습니다 사실 처음에 새 프로젝트 만들고나서 바로 세미콜론이 없다는 이상한 오류가 계속나서 윈도우 SDK버전을 내려주니까 해결이됐는데 그게또 문제인건지..

  • DirectX
  • 게임수학
최덕륜 댓글 2 좋아요 0 조회수 415

epoch마다 loss 출력 시 질문 드립니다.

미해결

차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원

안녕하세요. 강의 잘 듣고 있습니다! epoch마다 loss 출력할 때 궁금한 점이 있습니다. 이전에 ANN 예제에서는 epoch마다 loss를 출력할 때 한 epoch에서 사용된 미니배치들의 loss를 모두 평균해서 출력했는데 이번 AutoEncoder 예제에서는 epoch마다 loss를 출력할 때 한 epoch 중 마지막 미니배치의 loss를 출력하는 것 맞나요? 그러면 보통은 한 epoch당 loss 출력 시, 해당 epoch에서의 모든 미니배치의 평균 loss를 출력하나요? 아니면 한 epoch 당 마지막 미니배치의 loss를 출력하나요? 답변 기다리겠습니다. 감사합니다!

  • tensorflow
  • 머신러닝 배워볼래요?
  • NLP
  • 컴퓨터-비전
  • 딥러닝
  • cnn
ZERO 댓글 2 좋아요 0 조회수 699

값타입 컬렉션을 엔티티로 변경 후에...

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

기초 적인 것인데도 해결이 안되서 결국 질문 드립니다. 강의 40분 정도 에서 Address 값 타입 컬렉션을 Entity 로 해서 OneToMany로 연관관계 매핑을 하셨습니다. 이렇게 하신 이유가 값타입은 식별자가 없기 때문에, 컬렉션의 값이 변경될 때, update 쿼리가 나가는 것이 아니라, 전체 delete 쿼리 이후에 여러건의 insert 쿼리가 발생되기 때문이라는 것은 이해 했습니다. 그런데, entity로 바꾸신 후에 값을 변경하는 것과 그렇게 변경한 후에 쿼리가 나가는 것은 안보여 주셔서 직접 확인해보려고 하는데 ...... 결과를 확인 할 수가 없네요...ㅠㅠ 값을 변경하는 방법을 코딩으로 보여주셨으면 합니다. 당연히 알고 있는 부분도 어려운 초보입니다. 감사합니다.

  • java
  • JPA
genesis 댓글 4 좋아요 0 조회수 1435

불리언형

미해결

홍정모의 따라하며 배우는 C언어

bool과 _Bool은 같은건가요?

  • c
조현우 댓글 1 좋아요 0 조회수 282

프로젝트 순서

미해결

비전공자를 위한 개발자 취업 올인원 가이드 [취업편]

안녕하세요. 강사님. 혹시 readme에 프로젝트 나열 시 최신순으로 적어야하나요? 아니면 중요도나 프로젝트 크기별로 적어야하나요?

  • 포트폴리오
  • 면접
wcsjinn 댓글 1 좋아요 0 조회수 341

화면 및 차트가 제대로 동작하지 않고 있습니다.

미해결

실전 프로젝트로 배우는 타입스크립트

안녕하세요. 캡틴 판교님. 영상을 보고 있는 시점은 21.10.3일 입니다. 현 시점에서 코드 기능을 바꾼건 없고 영상을 보면서 타입만 입히고 있었습니다. 그런데 처음 화면에서 맨처음 아무 나라를 선택하면 TotalDeaths와 Total Recovered는 잘 나오고, console에 'app.js:204 Uncaught (in promise) TypeError: Cannot set properties of undefined (setting 'family')' 에러가 뜨고 차트도 출력이 되지 않습니다. 그리고 다른 나라를 클릭하게 되면 클릭이 되지않고 먹통이 되고 있습니다.Total Death chart.Js에 변화도 있고 그래서 하나하나 찾아보려고 하는데 다른 나라 클릭도 안되고 console에 찍히는 에러메시지는 어떻게 해결 할 수 있는지 궁금합니다 ㅜㅜ

  • es6
  • typescript
lizhko 댓글 1 좋아요 1 조회수 307

shared memory와 mailbox

미해결

운영체제 공룡책 강의

shared memory는 두 프로세스가 shared memory를 통해서 data를 read,write하고 mailbox도 두 프로세스가 mailbox를 통해서 data를 read,write하는데 두 개의 차이점이 shared memory는 두 프로세스 모두 read,write가 가능하고 mailbox는 send와 receive가 구분되어진건가요?

  • 운영체제
  • 동시성
애롱 댓글 1 좋아요 1 조회수 439

JSON 으로 데이터 저장 관련 질문입니다.

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니오 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 영한님. JSON으로 데이터 저장 관련해서 문의드립니다. 강의 중간에 영한님이 JSON으로 데이터를 저장하기도 한다고 해서 마침 프로젝트 작업중에 비슷한 일로 고민을 한일이 있어서 질문남깁니다. 일단 질문게시판에서 JSON 관련으로 검색을 해본 후에 답변도 보고 했었는데 보니까 JSON을 JSON 문자열로 만들어서 string 형식으로 저장을 하는거 같았습니다. mysql에도 JSON 타입이 존재하고 JSON으로 바로 저장 및 조회가 가능하다고 알고 있습니다. 구글링 후에 hivernate-types 라이브러리를 이용하면 엔티티 작성 시 타입을 정의해줄 수 있고 h2 1.4.200 버전부터는 h2에도 json 컬럼이 추가되어서 h2로 테스트도 가능했습니다. (강의 초반에 1.4.200 은 몇가지 오류가 있어서 1.4.199를 사용하라고 하셨는데 1.4.199는 JSON 컬럼 조회에서 에러가 나서 안되더라구요ㅠ) 제가 작성한 엔티티는 아래와 같습니다. @Getter @NoargsConstructor @TypeDef(name = "json", typeClass = JsonType.class) @Entity public class ParentEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Type(type = "json") @Column(columnDefinition = "json") private List<ChildParam> childs = new ArrayList<>(); } 위와 같이 String 형식이 아닌 객체를 바로 사용이 가능하더라구요. 혹시 JSON을 문자열로 저장하는 경우와 JSON 컬럼을 설정 후 JSON으로 저장하는 경우가 어떠한 차이가 있을까요..? 실무에서 문자열로 저장하는 이유가 있는 것인지 궁금합니다. 감사합니다!

  • json
  • JPA
  • java
신짱 댓글 1 좋아요 0 조회수 1114

Auditing transaction

미해결

실전! 스프링 데이터 JPA

안녕하세요, auditing 강의를 듣고 적용해보았습니다. 게시글을 처음에 만들때 원하는 값들이 잘 들어가지만 게시글을 수정하여 다시 저장할 경우audit 부분에서 createdBy, modifiedBy 를 못가져오면서 transaction 에러를 냅니다..! 혹시 실무에 적용하기 위해 추가로 적용해야 할 부분이 있을까요? 아마 AuditorAwareImpl에서 @Autowired MemberRepository memberRepository; 부분이 이상한 것 같은데...이유는 모르겠습니다 ㅠ_ㅠ public class AuditorAwareImpl implements AuditorAware < Long > { @ Autowired MemberRepository memberRepository; @ Override public Optional < Long > getCurrentAuditor () { Authentication authentication = SecurityContextHolder . getContext (). getAuthentication (); if ( null == authentication || ! authentication. isAuthenticated ()) { return null ; } DefaultOAuth2User principal = ( DefaultOAuth2User ) authentication. getPrincipal (); String email = ( String ) principal. getAttributes (). get ( "email" ); if (email == null ){ return null ; } Member member = memberRepository. findByEmail (email). orElse ( null ); if (member == null ){ return null ; } return Optional . of (member. getId ()); } }

  • audit
  • spring
  • spring-boot
  • JPA
  • java
댓글 1 좋아요 0 조회수 270

인기 태그

인프런 TOP Writers

주간 인기글