안녕하세요 제로초님..! 부트캠프에 이제막 수료한 비전공자입니다. 다름아니라 제가 프로그래밍적인 사고능력이 부족하여 이 점을 보완하고자 제로초님 강의를 들으려고하는데, 기본적인 자바스크립트 문법은 알고있다고 생각은 합니다.. 그래서 어디서부터 사고능력을 기르기위해 강의를 들어야할지 모르겠어요.. 어디서 부터 듣는것이좋을까요? 아니면 제가 느낄때 이점에대해 약하다 싶은부분만 골라서 들어야하는것일까요 ?
강의 보고 잘 따라하고 있는데요 ArrayAdapter 를 사용하는 부분에서 에러가 납니다. import android.widget.arrayadapter 로 import 되어있는데 defiend in android.widget 이런식으로 에러가 나서 인터넷을 찾아보니 kotlin extension 폐지로 발생하는 에러일거라고 하는데 해결책을 모르겠네요... 변수 설정하는 것에서는 view binding 을 이용해서 해결했는데 arrayadapter 는 어떻게 해야할지 모르겠습니다...
강사님 안녕하세요 하나의 어플리케이션으로 관리자/사용자 형태로 구분해서 Spring security 세팅 하려고 합니다. 크게는 관리자와 사용자 2개의 인증을 별도로 태우려고 해요 - entity : User , Admin - UserDetailsService : UserService, AdminService - WebSecurityConfigurerAdapter - UserSecurityConf : - 우선순위 낮음 - /user/** 요청만 검증, - /user/login : 로그인 페이지 - AdminSecurityConf - 우선순위높음 - /admin/** 요청만 검증 - /admin/login : 로그인 페이지 대부분 원하는대로 동작이 되지만 세션을 같이 써서 문제가 발생하는것 같습니다. 예를 들어 user 로 정상 로그인 후에 admin 계정으로 로그인하게 될대 403 Forbidden 에러가 발생하네요 세션을 구분해서 관리할수 있는 방법이 있을까요?
아래가 수업도중에 배운 알고리즘인데요! ------------------------------------------ int main(void) { int v, e, city_a, city_b, cost, i, res, cnt; vector<Edge> Ed; res = cnt = 0; cin >> v >> e; for (i = 1; i <= e; i++) { unf[i] = i; } for (i = 0; i < e; i++) { cin >> city_a >> city_b >> cost; Ed.push_back(Edge(city_a, city_b, cost)); } sort(Ed.begin(), Ed.end()); for (i = 0; i < m; i++) { int fa = Find(Ed[i].v1); int fb = Find(Ed[i].v2); if (fa != fb) { res += Ed[i].cost; Union(Ed[i].v1, Ed[i].v2); } } cout << res << endl; return 0; } ------------------------------------------ 이 중에서 간선을 선택하는 for (i = 0; i < m; i++) { int fa = Find(Ed[i].v1); int fb = Find(Ed[i].v2); if (fa != fb) { res += Ed[i].cost; Union(Ed[i].v1, Ed[i].v2); } } 이 부분에 대해 궁금증이 있습니다! 크루스칼은 n개의 정점이 주어지면 n-1 개의 간선을 최소 가중치를 기준으로 선택하는 것으로 알고 있습니다. 그런데 문제에선 n-1개라는 기준을 사용하지 않았는데 그 이유가 있을까요? 선생님의 문제풀이에서 cnt 변수를 만드셨으나 사용하지 않으셨는데, 이를 체크하려다 체크하지 않으신 것 같습니다. 그 이유는 무엇인지 궁금합니다.
[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
RenderBegin()과 RenderEnd()의 실행 과정이 제가 이해한 내용이 맞는지 모르겠어서 질문드립니다. 만약 [0] [1] 의 더블버퍼가 있다고 가정할 때, swapChain의 BackBuffer가 1일 경우 RenderBegin에서 1의 상태를 <화면출력> 상태에서 <외주 결과물> 상태로 바꿔주고 GPU가 사용할 수 있게 만든 후, GPU의 처리가 끝나고 결과물을 화면에 출력하기위해 RenderEnd를 이용하여 1의 상태를 <외주 결과물>에서 <화면 출력>으로 바꿔주고 GPU는 이어서 0을 사용해야하기 때문에 SwapChain의 백버퍼를 0으로 바꿔준다고 이해했는데.. 이게 맞나요? 쓰면서도 제가 무슨 말 을하는지 모르겠네요...
강의에서 "뷰 어플리케이션이 구동되었을 때 브라우저 저장소를 확인한다. localstorage에 token이 있는지 없는지 체크한다." const store = new Vuex.Store({ ... }); const { token } = localStorage; store.commit("LOGIN", token); export default store; Vuex라는 것은 별도의 저장소이고 이 저장소를 컴포넌트 레벨에서 필요한 상태나 로직들을 불러와서 처리하는 것으로 알고 있는데, 위와 같이 localStorage에서 토큰을 가져와 LOGIN mutations에 전달하는 로직을 왜 Vuex의 store 부분에 선언한 이유가 무엇인가요?
안녕하세요 . 13분쯤 mv.getModel().put("member",member) ; vs mv.addObject("member", member); 같다고 하셨는데 데이터 담아주는건 같고 mv.addObject("member", member); 같은 경우에는 부가적으로 jsp에서 데이터를 가져다 쓸수 있도록 addAttribute 까지 해준다 라고 생각하면 될까요 그렇다면 추가적으로 request.setAtttibute("member",member) 와 mv.addObject("member", member); 이건 같은건가요 ? (차이점이 있다면 설명 부탁드립니다 . 감사합니다)
Cannot find template location: classpath:/templates/ (please add some templates or check your Thymeleaf configuration) 스프링 빌드 중에 이러한 오류가 발생하면서 @RequestMapping ( "/request-param-v1" ) 해당 경로로 들어가니 whitelable 페이지가 뜹니다 어떤 오류일까요 전에 다른 수강생분이 올렸던 글을 보면 application.yaml 파일을 수정하라고 말씀해주셨는데 저는 그 파일을 찾을 수 가 없네요 ㅠㅠ
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 user 엔티티 일부 @OneToMany(mappedBy = "user" , cascade = CascadeType.ALL) private List<UserCountry> country = new ArrayList<>() ; @OneToMany(mappedBy = "user" , cascade = CascadeType.ALL) private List<UserLanguage> language= new ArrayList<>() ; @OneToMany(mappedBy = "user" , cascade = CascadeType.ALL) private List<UserHopeLanguage> hopeLanguage= new ArrayList<>() ; 프로젝트 진행중인데 궁금한점이 있어 여쭤보려고합니다. 엔티티 상에서는 테이블 구성은 일대다 다대일 관계로 위와 같이 되어있고 user들은 모국어인 userCountry, 배우고싶은 언어인 userHopeLanguage, 할수있는언어인userLanguage를 여러개 가질 수있습니다. 전체 유저 조회중 특정 나라나 언어를 가지고 있는 유저들만 검색하기위해 동적쿼리문을 작성하려고 하는데 예를 들어 유저가 가지고있는 userLanguage 중 language이름이 'kor '를 포함하고있는 유저만 검색 한다고 했을 때 쿼리문을 어떻게 작성해야할까요?