안녕하세요 널널한 개발자님? 강의 정말 잘 듣고 있습니다 NIC 설명에서 제가 이해한 게 맞는지 헷갈려서 질문드립니다. 프로세스 - I/O Buffer - TCP/IP - NIC RAM 그림상 이렇게 있다고 이해했는데 이 네 개의 영역은 실제 하나의 RAM 내부 어딘가 (각 영역이 차지하는)에서 copy가 반복적으로 이뤄지는 구조인데, 이를 DMA를 사용해서 한 번의 copy로 해결한다라고 이해하면 맞는 걸까요??
import pandas as pd # csv 저장 파일 불러오기 df = pd.read_csv("https://github.com/yak93tiger/dongsuh_files.git/transfermarkt_50.csv") print(df) 에러메시지가 아래와 같이 나오네요 마지막 부분에... urllib.error.HTTPError: HTTP Error 404: Not Found 깃허브에 transfermarkt_50.csv 파일을 업로드 한 상태
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 이전 웹 서버, 웹 애플리케이션 서버 강의에서 클라이언트 -> Web Server -> WAS -> DB 이런 식으로 웹 시스템을 구성한다고 하셨는데 HttpServletRequest와 HttpServletResponse는 WAS 내의 WebServer에서 생성되는게 아니라 클라이언트의 http 요청을 가장 처음 받는 Web Server에서 생성해서 WAS의 WebServer로 넘겨주는건가요?
안녕하세요 강의 잘 듣고 있습니다. Javascript 에서는 외부 API 를 호출한 뒤, 그 결과를 기다리지 않고 다른 작업을 먼저 시작하거나 (비동기적으로), await 를 이용해서, (동기적으로 작동하기 위해) 작업이 끝날 때까지 기다리도록 설정을 합니다. 이런 비슷한 상황을 JAVA 는 어떻게 해결하는 지 궁금합니다. WebClient, CompletableFuture 를 이용해서 해결하는 게 맞는지. 더 나은 방식은 없는지. 나아가 이런 부분을 처리하는 방법에 대한 내용을 다룬 영한님의 강의가 있는지. 있다면 어느 부분에 있는지 여쭤보고 싶습니다... 감사합니다.
안녕하세요 궁금증이 생겨 하나 여쭤봅니다. 7.5강 8:42 부근입니다. int& getValue(int x) { int value = x * 2; return value; } int main() { int &value = getValue(5); cout << value << endl; cout << value << endl; ... return value; 에서 getValue함수의 반환값은 int 레퍼런스 형이니 main함수의 int &value = getValue(5); 부분에서 호출자 getValue(5) 는 int &~ = value; 에서 ~ 의 부분에 해당하나요? 그렇다면 getValue에 있던 value 변수의 레퍼런스인데 그렇게 되면 int &value = getValue(5); 는 레퍼런스의 레퍼런스라 오류가 발생해야하는 것이 아닌가요? 감사합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 싱글톤 예시를 설명해주시면서, 쓰레드를 사용할 때 위험성에 대해서 말씀해주신 것을 봤습니다. 혹시 이런 문제점을 다룬 강의가 없나요?
[질문 내용] 로그인 성공 시 HttpSession Session = request.getSession()를 호출해서 신규 세션을 생성하고 JsessionID로 사용자를 식별하는것으로이해했습니다. 여기서 궁금한것이 1. 세션 데이터는 공유 데이터로 서버 메모리 어딘가에 저장이 돼서 request.getSession() 으로 접근하는건가요? (a라는 사용자가 로그인컨트롤러를 호출하고 다른 컨트롤러에서 request.getsession을 하면 로그인 컨트롤러에서 반환하는 httpsession객체와 다른 컨틀롤러에서 반환하는 httpsession객체가 같은 것인지 다른것인지에 관한 메커니즘이 궁금합니다) 1번이 아니라면 컨트롤러에 접근할 때 session 객체가 계속 생성되는데 이걸 어떻게 저장하고 클라이언트를 구분하는지 메커니즘이 궁금합니다.
3개의 방식 모두 프론트단(html)에서 값을 넘겨준다고 가정했을때 그때마다 어떤 어노테이션을 써야하는지 개념이 부족한거 같습니다. 예를 들어 프론트단에서 username, price의 값을 userA, 10000이라고 전달했을때로 가정한다면 3개 모두 요청값을 받아 받은 데이터로 객체를 생성하고 set해주는 느낌인거같아서 헷갈립니다ㅠㅠ
하루코딩님 안녕하세요, 열심히 강의 들으면서 공부중입니다 항상 감사드려요 public class tes { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(st.nextToken()); int M = Integer.parseInt(st.nextToken()); int[] arr = new int[N + 1]; StringBuilder sb = new StringBuilder(); st = new StringTokenizer(br.readLine()); for(int i = 1; i <= N; i++) { //누적 합 저장 arr[i] = arr[i - 1] + Integer.parseInt(st.nextToken()); } for(int i = 0; i < M; i++) { st = new StringTokenizer(br.readLine()); int start = Integer.parseInt(st.nextToken()); int end = Integer.parseInt(st.nextToken()); sb.append(arr[end] - arr[start - 1]).append("\n"); } System.out.println(sb); } } 위와 같이 구현을 하고 실제로 콘솔에서 제가 아래와 같이 입력하면 tokenizer에서 exception이 발생합니다 5 3 5 4 3 2 1 Exception in thread "main" java.util.NoSuchElementException at java.base/java.util.StringTokenizer.nextToken(StringTokenizer.java:347) at tes.main(tes.java:19) 디버깅을 해보면 첫번째 5 3 입력값은 잘 읽어서 tokenizer에 저장이 되었는데요, 두번째 인풋인 "5 4 3 2 1"은 입력후 엔터를 치면 st = new StringTokenizer(br.readLine()); 라인을 넘어가면 실제 br(BufferedReader)에는 "[\n, 5, 4, 3, 2, 1, \n, , , , ,.. " 처럼 들어가 있는데 st(stringTokenizer)의 str 값을 보면 "" 이렇게 비어있어요 그래서 nextToken()이 없어 에러가 나는것같은데요 왜 제 itellij에서만 그럴까요 ? ㅠㅠㅠ jdk17 사용하고있습니다
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 스프링 컨테이너는 {빈 이름 : 빈 객체} 와 같이 저장된다고 배웠습니다. new AnnotationConfigApplicationContext(AppConfig.class); 이때 AppConfig.class 도 빈으로 등록된다고 하셨는데, 메소드 이름이 빈 이름, 그 메소드의 반환 객체가 빈 객체가 된다면, AppConfig 는 클래스이고 반환객체도 없는데 빈 이름과 빈 객체가 무엇으로 저장되는 것인가요?
1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요. JPA의 영속성 컨텍스트의 쿼리 순서 보장에 대해 궁금한 점이 있어 연락드렸습니다. @Transactional public void deleteUser(Long userId) { seniorRepository.findByUserId(userId).stream() .forEach(seniorService::deleteSenior); User user = findUserById(userId); userRepository.delete(user); } senior 객체가 user객체를 외래키로 가지는 상태입니다. user 객체를 삭제하고, senior 객체는 삭제하지 않기 위해서 위와 같은 코드를 작성하였습니다. deleteSenior 메서드에서는 senior의 User 참조 값을 null로 바꾸어 주는 역할을 수행합니다. 그리고 같은 트랜잭션 내에서 user까지 삭제하는 코드입니다. 위 코드에서 senior의 User 참조 값을 null로 변경하는 update 로직과, user를 삭제하는 delete 로직이 트랜잭션이 종료된 시점에 한번에 쿼리로 생성되어 데이터베이스로 날아가는것이 맞는지 궁금합니다. 만약 그렇다면, 두 쿼리의 순서를 보장할 수 있는지 궁금합니다. 엔티티 매니저는 key-value 형태로 정보를 저장한다고 하여 순서가 보장되지 않을 것 같은데, 순서가 보장된다면 어떤 것에 의해서 순서가 보장되는지도 알려주시면 감사하겠습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. @Configuration을 통해 빈을 수동등록할 때 강의 예제에서는 AppConfig 클래스를 사용하였는데요 AppConfig1, AppConfig2, AppConfig3이라는 클래스에 각각 @Configuration을 붙이고 AppConfig1에서는 @Bean public MemberService memberService()를 AppConfig2에서는 @Bean public OrderService orderService()를 등록하고 ApplicationContext ac1 = new AnnotationConfigApplicationContext(AppConfig1.class); ApplicationContext ac2 = new AnnotationConfigApplicationContext(AppConfig2.class); 이렇게 해서 스프링 컨테이너를 두 개 만들 수 있을거 같습니다 이렇게 했을때 단점과 장점이 있는지? 실제로 이렇게 컨테이너를 분할하는 경우가 있는지? 궁금합니다 추가적으로 각 AppConfig1, AppConfig2에서 동일한 객체를 스프링 빈으로 등록한다면 이때도 여전히 싱글톤인지 궁금합니다
안녕하세요. 강의를 여러번 보면서 많은 도움을 얻고 있습니다. 감사합니다~ 몇가지 질문 드립니다. 1. 바탕쪽이 표로 만들어져 있는 경우 바탕쪽에 있는 표의 셀안에 있는 텍스트는 어떻게 가져 올 수 있을까요? 2. 그리고 본문의 표의 셀내에 또 사각형을 만든 다음에 텍스트를 입력해 놓은 경우, 표의 셀안의 사각형 안의 텍스트를 가져오려면 어떻게 해야할까요? 3. 마지막으로 표안에 문단번호모양설정을 해서 글머리 기호 1. 2. 3.,,, 이런식으로 여러 줄이 있는 경우, hwp.InitScan(Range=0xff), GetText를 이용하면 제일 위의 한 줄만 추출 되는 데 전체 텍스트를 다 가져 오려면 어떻게 해야할까요?
안녕하세요 강사님께서 celery.py 에서 default 로 5/m 을 주었는데요. 어떤 방법으로 해당 기본값을 사용할 수 있는지 궁금합니다. 제가 시도한 테스트 방법은 아래와 같습니다. rate_limit='' 에 빈값으로 주기 => 아무 응답 없음. rate_limit 인자를 없애기 =>5분이 아닌 12초 간격으로만 요청을 보내는 결과를 확인.