안녕하세요. 좋은 강의 잘 듣고 있습니다. 필수헤더에서의 '필수'라는 의미가 무엇인가요? 궁금한 점은 아래입니다. 자주 사용하는 웹 브라우저 소프트웨어(크롬, 엣지 등) 이 요청할 때 알아서(api통신일 경우 프런트 개발자들이 명시하지 않아도) '무조건' 넣는다는 말인가요? 필수가 아니라면 어떻게 되나요? 강의를 보면서 구글에서 f12로 api들을 살펴보니, request 부분의 헤더에 HOST가 없는 것들도 있떠라구요. 친절한 답변 항상 감사드립니다.
안녕하세요 좋은 강의 항상 잘 듣고 있습니다. 아래 질문들을 봤는데도 이해가 되지 않아 질문을 올립니다. 2:21 그림에서 aaa.com , bbb.com , ccc.com 은 모두 다 하나의 ip(200.200.200.2)에 연결이 된 거잖아요? 궁금한 점들은 아래입니다. 그런데 aaa.com , bbb.com , ccc.com 들은 하나의 host 개념인 것이지, port로 구분하는 프로세스의 개념이 아닌거죠? aaa.com (200.200.200.2:15포트), bbb.com (200.200.200.2:16포트), ccc.com (200.200.200.2:17포트) 처럼 다른거죠? 가상호스트라는 개념을 쓰면 여러 호스트들을 하나의 ip에 연결을 할 수 있고, 각각의 host들은 서로 중복되는 포트를 사용할 수 있는 것인가요? 아래처럼요. aaa.com (200.200.200.2:15포트), bbb.com (200.200.200.2:15포트) ccc.com (200.200.200.2:15포트)
Session#2 강의 시작부분에 설명해주신 내용에서, SEssion의 receive는 OnRecvCompleted()메서드에 여러 스레드가 동시다발적으로 들어가는 경우는 없다. 라고 하셨는데, 왜 그런지 이해를 못했습니다. ServerCore의 OnAcceptHandler는 콜백함수라서 콜백함수는 다른 스레드가 생겨나서 실행이 된다고 들었던 것 같은데, 그렇다면 두 스레드가 OnAcceptHandler에서 Session.Start()를 해버리면 OnRecvCompleted()메서드를 두 스레드가 동시에 실행할 경우가 생기지 않나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 좋은 강의 감사합니다. 공부중에 궁금한게 있어서 글을 적습니다. CustomAuthenticationProvider는 현재 support로 UsernamePasswordToken인지 확인하고 있는데 DaoProvider의 경우에도 같은UsernamePasswordToken으로 검증하고 있던데 이런 경우 제가 등록한 provider가 더 우선권을 갖게 되어서 provider list를 순회 할때 custom provider가 더 먼저 지나가게 됨으로 daoprovider는 거치지 않는 것이 맞는건가요? 또한 제가 등록한 custom provider는 parent로 daoprovider를 갖게 되는지도 궁금합니다.
채점 결과 태스트 케이스2~5까지는 정답으로 나옵니다. 4개 모두 200ms안에 끝납니다 반면에 가장 테스트 케이스 크기가 작을 case1에서는 타임리밋이 뜹니다 이유는 무엇이고 해결책은 무엇일까요? import java.util.*; public class Main { static String answer = "NO"; static int N,M; static int[] ch,dis; public void BFS(int t1, int t2, ArrayList<ArrayList<Integer>> arr) { Queue<Integer> Q = new LinkedList<>(); Loop:for(int i = 1;i<=N;i++) { if(ch[i] == 0) { Q.offer(i); while(!Q.isEmpty()) { int tmp = Q.poll(); ch[tmp] = 1; dis[tmp] = 1; if(dis[t1] == 1 && dis[t2]==1) { answer = "YES"; break Loop; } int len = arr.get(tmp).size(); for(int j = 0;j<len;j++) { int n = arr.get(tmp).get(j); Q.offer(n); } } Arrays.fill(dis, 0); } } } public static void main(String[] args){ Scanner in=new Scanner(System.in); N = in.nextInt(); M = in.nextInt(); ch = new int[N+1]; dis = new int[N+1]; ArrayList<ArrayList<Integer>> arr = new ArrayList<>(); for(int i = 0;i<=N;i++) { arr.add(new ArrayList<Integer>()); } for(int i = 0;i<M;i++) { int a = in.nextInt(); int b= in.nextInt(); arr.get(a).add(b); } int t1 = in.nextInt(); int t2 = in.nextInt(); Main T = new Main(); T.BFS(t1, t2, arr); System.out.print(answer); } }
혼자 풀어봤을 때, 다음과 같은 코드를 작성하였는데요. 타임리밋이 일어날 만한 곳이 while문밖에 없는거같아서 계속 보는데 이유를 모르겠습니다. 첫 요소가 K만큼 들어왔으면 그 다음부터는 1번씩만 put하니까 괜찮을 것이라 생각했는데 어떠한 이유로 타임리밋이 뜨는걸까요 ㅠㅠ? public static String solution(int n,int k,int[] arr) { String answer =""; HashMap<Integer,Integer> map = new HashMap<>(); // 매출의 종류 => HashMap & Sliding Window int lt=0; for(int rt = 0;rt<=(n-k);rt++) { while(lt-rt<k&<<n) { map.put(arr[lt], map.getOrDefault(arr[lt],0)+1); lt++; } answer += map.size()+" "; if(map.get(arr[rt])>1) { map.put(arr[rt], map.get(arr[rt])-1); }else { map.remove(arr[rt]); } } return answer; }
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 이렇게 오류가 나서 해결이 안되는데 방법이 있을까요?
SPI 와 DPI를 검색해보면, 가장 많이 나오는 spi는 stateful packet inspection입니다. 널널한 개발자님께서 말씀하신 spi는 shallow packet inspection을 말하시고, http 헤더까지만 보는 것이라고 하셨고, stateful packet inspection를 검색해보면, L1~3계층 까지 조사하는 것으로 ip 헤더까지만 조사하는 것으로 이해했습니다 shallow packet inspection와 stateful packet inspection는 다른거라고 생각하며 되나요? DPI는 L1~7까지 조사하는 것인데 모든 패킷을 검사하는 것이라고 생각하면 되나요?
7분44초에 임베디드 타입에서 같은 객체를 사용하여 저장하고 setter를 통해서 값을 수정하게 되면 같은 객체의 인스턴스를 사용하기 때문에 값이 member1과 member2가 둘 다 바뀐다고 하셔서 제가 테스트를 해봤습니다. 같은 메서드에서 member1과 member2를 같은 address 객체를 사용해서 저장한 건 똑같은데 다른 메서드에서 아래에 코드 처럼 member1을 찾아와서 city를 수정하니 member2는 수정이 안된 것을 확인하였습니다. 이것은 다른 트랜잭션을 사용하기 때문에 같은 인스턴스를 공유하고 있지 않은 건가요? Member member = em.find(Member.class, 1L); member.getHomeAddress().setCity("city");
토폴로지 구성을 파악하려면 방법이 있을까요? 정말 유익한 강의 감사드립니다. 다름이 아니라 처음부터 토폴로지를 구성하는 것이 아닌, 이미 구성되어 있는(회사같은) End-Point 단말에서 ping 이나 tracert 같은 혹은 더 유용한 툴을 통해서 어떻게 토폴로지가 구성되어 있는지 파악하는건 가능할까요? 강의를 보고 ping 이나 tracert 를 해봐도 대부분 제대로 된 응답을 안주는 경우가 많아서 어떻게 구성되어 있는지 보이지가 않습니다. 도움말씀 부탁드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (비슷한 내용은 있었지만 원하는 해답을 찾지 못했습니다) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 차근차근 강의 예제를 따라가면서 잘 오고 있었는데 테스트 하는 부분에서 갑작스런 오류로 인해 해답을 찾던 도중 어려움을 겪어서 프로젝트 링크와 오류 사진을 남기겠습니다 https://drive.google.com/file/d/1DIAzsFD6RnTCv73h-kNpeDWUE5CsF8oC/view?usp=share_link
안녕하세요 좋은 강의 잘 듣고 있습니다. 표준 헤더라는 것은 브라우저가 자동으로 넣어주는 것인가요? 예를 들어 백앤드에서 만든 api의 response의 헤더에는 사실 java/spring 기준으로. 'return new ResponseEntity(response, HttpStatus.OK)' 만 내보내줌에도 불구하고, 개발에 배포한 후 브라우저에서 f12로 개발자 도구로 확인하면 제가 넣지 않은 여러 헤더들(Origin, Host 등 다양한 값) 이 들어있더라구요. 표준헤더의 기준(몇 가지는 꼭 브라우저가 넣어준다 등) 은 어떻게 정하는 걸까요? 브라우저마다 다른가요? 미리 감사드립니다.
안녕하세요 좋은 강의 항상 잘 듣고 있습니다. 다름이 아니라, post에서 등록한 후 201, CREATE(또는 200, OK) response 에서 Location헤더 필더에 해당 리소스의 생성된 위치를 보여준다고 했는데요(ex /members/100) 꼭 실무적으로 그렇지 않고 개념, 이론적으로 그렇다는 것 맞을까요? 개발자가 직접 해당 소스의 위치 값을 response Header 의 Location 필드값에 넣어주는 것이요. 반드시 post api에서 자동적으로 내려주는 것은 아니라서 여쭤봅니다. 감사합니다.
안녕하세요 ㅎㅎ 다름이 아니라 나도코딩 자바편에서 메소드를 공부하면서 궁금증이 생겨, 이렇게 또 다시 질문을 남깁니다...ㅎ 나도코딩 자바편을 보는 것과 동시에, 제 스스로 나름 예제들도 풀면서 개념을 익히고 있는데요...ㅎ 방금 전에 제가 문자열(String)배열과 charAt()을 이용하여, 전치행렬을 만드는데 성공했습니다...ㅎ 결과도 잘 출력했구요 ㅎㅎ 이 예제를 푸는 데는 String, String[], length(), charAt()에 대한 선생님의 도움과 답변이 없었으면 풀지 못했을 건데, 선생님의 자세한 답변 덕분에 문제를 빠르게 잘 풀 수 있었습니다. 감사합니다 ㅎㅎ 아래가 제가 쓴 코드고, 출력한 결과입니다: 여기서부터가 제 질문인데요...ㅎ static 메소드(public static void main(String[] args) {...})에서 일반 메소드를 접근하려면, 에러 메시지로 'non-static variable/method cannot be referenced fromstatic context.'라고 나오는데, 이럴 경우에 에러를 없애고, 결과를 잘 출력하려면: pubilc static void main 메소드 앞에 첫 번째 방법으로 void transpose 메소드를 static void tranpose라고 바꾸거나, 아니면 2번째 방법으로 static 메소드 안에서 이렇게 Question_03 making = new Question_03(); 즉, (클래스 이름) (객체 이름) = new (클래스 이름)(); 이런 식으로 객체화를 해서 메소드를 접근해야 하나요?