예를들어 회원 테이블이 있다고 가정하겠습니다. member No.(PK) 연계테이블PK 연계테이블구분 1 1 developer 2 2 developer 3 1 planner 4 3 developer 해당 테이블 연관 관계를 맺고 싶습니다. member 라는 테이블이 있고 그에 연관관계 맺어진 테이블이 developer, planner 테이블이 있습니다. 하지만 member 1개 row당 테이블 developer, planner 두개중 하나 선택해서 연관관계를 맺어지고 있는 상태입니다. 혹시 이 상태에서 JPA @Entity로 구성 할수 있는건가요? 제가 놓친 부분이 있어서 이렇게 질문을 한건가요? ㅠㅠ 구글링 해도 도저히 안나와서 이렇게 질문드립니다. 선생님 ㅠ,ㅠ 감사합니다.
안녕하세요. Session2 강의에서 Send구현을 했는데 막힌부분이 있습니다. Send에 Lock을 걸어주셨는데 그 이유가 Send를 여러 쓰레드가 호출해서 RegisterSend() 함수가 동시다발적으로 실행되면 안되니 Lock을 걸어준다고 이해했습니다. 그런데 궁금한게 지금 상황이 좀 이해가 안되는것 같습니다. 제가 이해한 상황은 아래와 같습니다 현재 Session은 DummyClient에서 Accept한 세션소켓으로 주고 받고 하는중이다. (OnAcceptHandler 함수가 실행되고 해당 세션소켓을 인자로받아 Session.Start를 해줬으니깐.)> 서버가 Send를 여러 쓰레드로 해서 해당 세션소켓으로 정보를 보내는 상황???? 서버에서 멀티쓰레드로 Send를 사용해서 정보를 보내는 건가요?
안녕하세요, 선생님. 수업 잘듣 고 있습니다! 다름이 아니오라, 처음에는 Math.floor를 안쓰고 그냥 tmp= tmp/10으로 했는데 답이 이상하게 나와 Math.floor를 써주니 답이 제대로 나오네요. C++ 에서는 자동으로 정수 몫이 나오는데 자바스크립트는 정수값을 나누는 경우도 항상 floor를 써주어야 하는 것인가요?
저번에도 말씀드렸지만 이미지나 동영상 예제 올려주실 수 있나요? 물론 몽고DB 강의에 범주를 넘어가는것은 알겠으나, 아예 없다고는 생각하지 않아서요. 애매하게 중간에 걸친 것 같은데 혹시 예제를 올려주실 수 있나해서요? 아니면 참고할만한 사이트 부탁드립니다. 늘 친절한 답변 주셔서 감사합니다. ps: 앗!!!! 미니 강의 올려주신다 하셨네요. 그럼 강의도 좋은데 실무에서 사용하고 있는 저장 관련 모듈 사이트 알려주시면 감사하겠습니다. ^^ 찾다가 보니 아래와 같은 자료가 있어서 남깁니다. 그런데 제가 궁금한게 Streams 를 많이 사용하나요? Multer는 생각보다 안 사용하는 것 같네요. 생각해보니 mongodb 보단 nodejs범주인것 같긴하네요. 그래도 강사님은 어떤걸 더 추천 하시나요? multer 보니깐 데이터 저장된 파일이 이상한 문자로 나오던데 이 파일을 저장하는건 괜찮은 방법 같습니다만 .... 실무에서 어떤걸 쓰는지 궁금하네요. 제일 궁금한건 Streams인데 범주를 넘어서면 굳이 대답안해주셔됩니다.
[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]
안녕하세요, 질 좋은강의를 해주셔서 정말 감사하고 많이배우고있습니다. 바쁘실테니 요점만 간단히 하겠습니다. 문제 : 이메일등록하려고 시도할때 DB연결이 안되있어서 @staticmethod인 find부터 걸림 체크해본것 : mysql 데이터베이스, 테이블, 칼럼 확인 O 파라미터(user_email, blog_id) 잘넘어가는지 확인 O import pymysql MYSQL_CONN = pymysql.connect( host = "localhost" , port = 3306 , user = 'root' , passwd = '1234' , db = 'blog_db' , charset = 'utf8' ) def conn_mysqldb (): try : if not MYSQL_CONN.open: MYSQL_CONN.ping( reconnect = True ) return MYSQL_CONN except Exception as e: print (e) Traceback (most recent call last): File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/app.py", line 2464, in __call__ return self.wsgi_app(environ, start_response) File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/app.py", line 2450, in wsgi_app response = self.handle_exception(e) File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask_cors/extension.py", line 165, in wrapped_function return cors_after_request(app.make_response(f(*args, **kwargs))) File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/app.py", line 1867, in handle_exception reraise(exc_type, exc_value, tb) File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/_compat.py", line 39, in reraise raise value File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/app.py", line 2447, in wsgi_app response = self.full_dispatch_request() File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/app.py", line 1952, in full_dispatch_request rv = self.handle_user_exception(e) File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask_cors/extension.py", line 165, in wrapped_function return cors_after_request(app.make_response(f(*args, **kwargs))) File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/app.py", line 1821, in handle_user_exception reraise(exc_type, exc_value, tb) File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/_compat.py", line 39, in reraise raise value File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/app.py", line 1950, in full_dispatch_request rv = self.dispatch_request() File "/Users/joeykang/.conda/envs/Portfolio/lib/python3.8/site-packages/flask/app.py", line 1936, in dispatch_request return self.view_functions[rule.endpoint](**req.view_args) File "/Users/joeykang/PycharmProjects/Portfolio/portfolio_view/blog.py", line 23, in set_email user = User.create(user_email, blog_id) File "/Users/joeykang/PycharmProjects/Portfolio/portfolio_control/user_mgmt.py", line 50, in create user = User.find(user_email) File "/Users/joeykang/PycharmProjects/Portfolio/portfolio_control/user_mgmt.py", line 34, in find db_cursor = mysql_db.cursor() AttributeError: 'function' object has no attribute 'cursor'
왼쪽이 폴더 구조이고, 선생님과 동일한 방법으로 index.scss에 @import를 사용했습니다. 문제는 파일을 랜덤으로 읽어와요. 어떨 때는 아무것도 못읽어서 index.css가 텅 비어있거나, 어떨 때는 전체도 아니고 일부만 읽어와요. 용량이 커서 그런줄 알고, 전체 주석 하고 하나씩 지워가며 테스트 해봤는데 랜덤이더라구요. 어떤 글에선 주석에 한글이 있으면 안된다고 해서 체크해봤는데 주석 유무와도 상관은 없었습니다. 변환 에러도 없는데 원인을 도무지 못찾겠어서 질문 글 올려봅니다.
이제 듣기 시작하는 중인데 기존에 크롤링 몇번 해보다가 막혔던 거 질문이 있습니다. 좀 더 고급진 크롤링, 상대방이 어느정도 막으려고 해놓은 것도 크롤링 하는 리얼 크롤링은 어떻게 배울 수 있을까요? 가령 네이버 카페 글쓰기를 크롤링해보려고 하는데요. selector로 크롤링하다보면 '#SE-a2c1290e-85ee-4ca3-8619-18f42b8b72f7 > div.se-wrap.se-dnd-wrap > div > div.se-popup.se-popup-banner.se-popup-banner-black-type > div.se-popup-container > button' 이런 게 나옵니다... 페이지에 들어갈때마다 #SE-a2c1290e-85ee-4ca3-8619-18f42b8b72f7 이 부분이 바뀝니다. 단순히 css selector만 가지고는 크롤링이 막혀버립니다. 이것말고 예전에 다른 대형사이트도 크롤링 해보려고 했었는데, 저런식으로 막으려고 한다던가, react-virtualzied list 같은 거 나오면 크롤링이 막힙니다.... 이런 거는 어떤식으로 해야 크롤링 할 수 있을까요???
아직 뒷장을 공부를 안하긴했는데 토큰을 검증하는 미들웨어인 verifyToken에서 401코드인 에러가 "유효하지 않은 토큰"일때 인데 401코드에러가 이 예제 에서는 발생 안하지 않나요? 이미 토큰생성시에 토큰의 비밀키(JWT_SECRET)으로 만들어서 토큰 검증시에 유효기간초과 에러 빼고는 없을것 같다고 생각하는데 401코드 에러는 향후 다른서버코드에서 토큰생성시에 JWT_SECRET(비밀키)로 만들어지지 않은 토큰의 검증시에 이용하라고 추가하신 코드인가요?
SPP 알고리즘을 활용하여 2000개의 추천 regions에 해당하는 2000개의 동일 크기의 벡터가 만들어졌다고 가정했을 떄, 추출된 벡터 하나하나는 마치 각자가 새로운 이미지처럼 여겨지므로 결국 FC layer의 차원은 (1, vector_size)가 되고 FC layer 1은 classification, FC layer 2는 bounding box regression 을 위해 활용되는 것인가요?
코딩테스트에서 for문과 if문으로만 이루어진 코드보다 스택같은 자료 구조를 쓰면 더 점수를 받는다거나 그런게 있을까요? 일단 어떠한 방식으로던 답을 맞추는게 최우선이겠죠? 강의를 보기전에 나름의 논리를 세워서 풀었는데 테스트 케이스를 다 통과해서 저런식으로 경우를 나열해서 짜면 뭔가 빈약하지 않을까 생각이 들어 여쭤봅니다. import sys sys.stdin=open("input.txt", "rt") s=input() cnt=0 #잘려진 총 조각 수 box=0 #레이저를 맞게 되면 잘라지는 조각의 수 for i in range(len(s)): if s[i]=='(' and s[i+1]==')': cnt+=box elif s[i]=='(' and s[i+1]=='(': box+=1 elif s[i]==')' and s[i-1]==')': box-=1 cnt+=1 print(cnt)
'SPM 을 이용하여 서로 다른 크기의 Feature map 을 균일한 Vector 크기로 표현' 슬라이드에서, 8x8 피쳐맵을 63개의 벡터값으로 표현가능하다고 하셨는데, level2 단계에서 48개의 vector 값은 level 0, level 1 을 포함하는 정보 아닌가요?? 즉, 48개의 원소만으로 표현가능한데 굳이 63개의 원소를 이용하는 이유가 궁금합니다!