묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
react-native cli 에서 카카오맵 사용하는 방법이 궁금합니다.
react-native cli를 처음 사용해보고 있습니다. 구글맵같은 경우는 구글맵 플러그인? 라이브러리? 가 있어 편하게 사용했는데요 카카오지도를 사용해야하는데 카카오지도는 웹뷰방식말고 리액트네이티브 로직 안에서 불러오는 방법이 있을까요??
-
미해결실전! 스프링 데이터 JPA
jpa 외래키에 대한 질문합니다..
보통의 제약조건을 걸때 아래코드처럼 거는걸로 아는데요.@ManyToOne(fetch = FetchType.LAZY)@JoinColumn(name = "courseSeq")private Course course;반면에, 제약조건을 걸지않고 long 타입의 시퀀스로 만든뒤@Column(columnDefinition = "bigint comment '과정 시퀀스'")private Long courseSeq;이런식으로 유저 시퀀스만으로 queryDsl로 조인걸어서 필요한 데이터만불러오는식이나 생성, 수정, 삭제시 해당엔티티 시퀀스만으로 처리하는식으로 써도되는지...정리하자면 jpa로 @manytoone 어노테이션을 쓰지않고 jpa를 써도 문제될게없는지 궁금해서 질문드립니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
컨트롤러에서 뷰 랜더링 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]스프링 MVC - 웹페이지 만들기 부분에서 @GetMappingpublic String items(Model model) { List<Item> items = itemRepository.findAll(); model.addAttribute("items", items); return "basic/items";} 위 메소드의 리턴값이 "basic/items" 인데 이렇게 string 타입으로 리턴을 해주면 뷰리졸버가 논리적뷰이름을 가지고 뷰 경로를 완성시켜주잖아요. 그런데 이전에 수업할때 application.properties 에 prefix,suffix를 설정해줬는데 이번 강의에서는 이거를 따로 설정하지 않았는데 어떻게 뷰가 랜더링이 되는건가요? 따로 설정을 안해주면 suffix 부분에 .html 이 자동으로 등록되어있는걸까요? 궁금합니다!
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
타임리프 사용하는 경우 API 명세서
타임리프같이 서버 사이드 템플릿을 사용하는 경우는 api 처럼 response를 보내지않고 model에 값을 넣어 html에 보내는데 이러한 서버사이드 템플릿을 사용하는경우에는 따로 api 명세서를 안 작성하나요? 작성을 한다면 요청과 응답에 대한 부분은 어떤 식으로 작성을 하나요?
-
미해결
cookie 가 제대로 카운트 되지 않아요
get_cookie 를 통해서 어떠한 기능의 쿠키를 저장하고android와 ios에서 save_cookie로저장된 쿠키의 수가 10번 이상이면 모달화면을 띄우고 있어요cookie가 바르게 카운트 되지 않을 때는 어떻게 하면 좋을까요?!
-
미해결쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
cgroupdriver/systemd 관련
안녕하세요. 현재 깃에서 vagrant 파일을 받아 up을 하던 중 cgroup driver가 systemd가 아니라는 에러가 발생했습니다. vagrant up이 cgroup driver 관련해서 멈출때마다 각 vm에 접속하여 vi /usr/lib/systemd/system/docker.service 내부에 systemd 내용을 추가하고 접속종료하는 방법으로 진행했습니다. 마스터, 워커노드들이 설치됐고, 서로 내외부 통신도 확인했습니다. kubectl get nodes 명령어 입력시 마스터에서는 host:6443 was refused 에러가 발생합니다. 노드에서는 localhost:8080 was refused로 뜹니다. netstat 명령어로 확인해본 결과 8080, 6443 포트는 올라와있지 않은 상태이며 docker ps -a 명령어 입력해서 api 서버는 돌아가고 있는 상태임을 확인했습니다. 제 생각에는 vagrant up 명령어 실행시 cgroup 관련 내용이 나와서 멈출때마다 내부적으로 문제가 발생하는게 아닌가 추측하고 있습니다. 마스터 노드부터 제대로 생성되지 않아 에러들이 연속적으로 발생하는 것 같은데, vagrant up 시 자동으로 빌드과정에서 cgroupfs를 systemd로 바꾸는 방법이 있는지 궁금합니다. 인프런 "vagrant up 시 cgroups 에러" 질문에 대해 쓰신 답변 내용 중, v1.22부터는 systemd를 사용하도록 설정하는 부분을 추가하여 사용 한다고 적으셨는데, vagrantfile 내부 확인해본 결과 k8s_V = "1.20.2"라고 적혀있는 것과 연관있는지도 궁금합니다. 그리고 systemd를 사용하도록 설정하는 부분 추가하는 방법도 잘 모르겠습니다. 아직 개념정리가 되질않아 질문내용을 두서없이 작성한점 양해 부탁드립니다. 감사합니다.
-
미해결스프링 시큐리티
savedRequest.getRedirectUrl()가 null이 들어가서 로그인 후 localhost:8080/null이 나옵니다
안녕하세요. localhost:8080/로 들어가서 나오는 시큐리티의 기본 로그인 페이지에서 아무 계정으로 로그인을 하면 localhost:8080/null이 나옵니다. localhost:8080/login로 request를 보냈을떄도 로그인을 하면 localhost:8080/null이 나옵니다 response header를 보면 Location: http://localhost:8080/null 로 나와있고 디버그시에도 savedRequest가 null인게 확인되는데 로그인전에 request로 보낸 url이 httpSessionRequestCache에 저장돼서 로그인 이후 제대로 이동하려면 뭘 수정해야되나요? logout이나 rememberme같은 부차적인 요소들은 가독성을 위해 생략했습니다. 밑에는 코드입니다. // 메모리 방식으로 사용자를 생성하는 configure()는 생략함 @Override protected void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .antMatchers("/login").permitAll() .antMatchers("/user").hasRole("USER") .antMatchers("/admin/pay").hasRole("ADMIN") .antMatchers("/admin/**").access("hasRole('ADMIN') or hasRole('SYS')") .anyRequest().authenticated(); http .formLogin() // .loginPage("/loginPage") .defaultSuccessUrl("/", true) .failureUrl("/login") .usernameParameter("userId") .passwordParameter("passwd") .successHandler(new AuthenticationSuccessHandler() { @Override public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException { System.out.println("authentication:"+authentication.getName()); // savedRequest가 null로 전달되는게 문제! RequestCache requestCache=new HttpSessionRequestCache(); SavedRequest savedRequest=requestCache.getRequest(request,response); String redirectUrl=savedRequest.getRedirectUrl(); response.sendRedirect(redirectUrl); } }) .permitAll(); // http.logout() 생략 // http.rememberMe() 생략 // http.sessionManagement() 생략 http.exceptionHandling() // .authenticationEntryPoint(new AuthenticationEntryPoint() { // @Override // public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) throws IOException, ServletException { // response.sendRedirect("/login"); // } // }) .accessDeniedHandler(new AccessDeniedHandler() { @Override public void handle(HttpServletRequest request, HttpServletResponse response, AccessDeniedException accessDeniedException) throws IOException, ServletException { response.sendRedirect("/denied"); } }); } @RestController @RequestMapping("/") public class SecurityController { @GetMapping public String index() { return "home"; } @GetMapping("loginPage") public String loginPage() { return "loginPage"; } @GetMapping("user") public String user() { return "user"; } @GetMapping("admin/pay") public String adminPay() { return "adminPay"; } @GetMapping("admin/**") public String admin() { return "admin"; } @GetMapping("login") public String login() { return "login"; } @GetMapping("denied") public String denied() { return "denied"; } }
-
해결됨실전! 스프링 데이터 JPA
@EntityGrape와 page
안녕하세요, 강의 너무 감사하게 보고 있습니다. 다름이 아니고, EntityGraph를 이용하여 연관관계가 존재하는 Entity를 한번에 fetch join으로 가져오는 것으로 이해하였는데 이때 properties에 spring.jpa.properties.hibernate.default_batch_fetch_size=100를 적용하면 한번에 100개씩만 가져오게 되는건가요??추가적으로 이러한 질문을 한 이유는.. 게시글을 구현하고 있습니다. 해당 게시글은 게시글에 댓글을 단 사람들고 1:N관계를 맺고 있고 해당 게시글을 조회한 사람과 1:N관계를 맺고 있고 유저는 여러 게시글을 작성할 수 있기에 유저와 게시글을 N:1관계를 맺고 있습니다. 여기서 게시글을 paging하고 싶은데 해당 게시글의 댓글 수, 조회 수, 작성자 등의 정보를 불러와야하므로 findAll()호출 시 연관관계를 모두 join fetch로 가져와야한다고 생각했습니다. 따라서 JpaRepository에서 @Override @EntityGraph(attributePaths = {"user", "comments", "postHits"} Page<Post> findAll(Pageable pageable); 어노테이션을 이용하여 findAll호출 시 연관된 모든 연관관계를 fetchjoin했으면 해서 저렇게 작성하였고, properties에도 default_batch_fetch_size = 100으로 설정하였습니다. 이후 findAll을 실행하니.. HHH000104: firstResult/maxResults specified with collection fetch; applying in memory! 해당 에러가 발생하는데 이유를 알고싶어 질문남깁니다!!!
-
해결됨풀스택 리액트 토이프로젝트 - REST, GraphQL (for FE개발자)
react-query 4.0.0 버전에선 에러가 납니다
1:00 에서 return null 을 한 뒤 돌려보니 위와 같은 에러가 떠서 확인해보니, react-query: 4.0.0 과는 호환이 안 되는 것을 확인했습니다. 강사님 깃허브에서 버전 확인 후 react-query를 "^3.17.2" 으로 낮춘 뒤 돌려보니 잘 뜹니다... 4.0.0 을 사용하려면 `yarn add @tanstack/react-query`를 따로 설치 후, ` import { QueryClient, QueryClientProvider } from "@tanstack/react-query";` 이렇게 바꿔사용하라는데 이렇게 하면 맞을까요?
-
해결됨[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
ListView 크기 오류
@override Widget build(BuildContext context) { return Scaffold( body: Container( child: Padding( padding: const EdgeInsets.symmetric(horizontal: 16.0), child: Column( children: [ ListView.separated( scrollDirection: Axis.horizontal, itemCount: 3, shrinkWrap: true, separatorBuilder: (context, index) { return SizedBox( width: 8.0, ); }, itemBuilder: (context, index) { return Container( width: 300, height: 300, child: Text('text'), ); }, ) ], ), ), )); }} 출력되는 오류 1 : Failed assertion: line 1874 pos 16: 'constraints.hasBoundedHeight': is not true. 슈링크를 뺴면 나오는 오류: Horizontal viewport was given unbounded height. ListView를 SizedBox w:400, h:400 으로 감싸고 난후 나오는 오류: RenderFlex children have non-zero flex but incoming height constraints are unbounded. ListView를 Expanded로 감싸고 나오는 오류 : RenderFlex children have non-zero flex but incoming height constraints are unbounded. 캘린더스캐쥴러 수강중 ListView파트를 수강하고 응용해볼려고했습니다... 그런데 사이즈 오류가 나서 어디가 잘못된건지 문의드립니다.. 해본것 1. ListView상위의 Column에 사이즈 주기 2.ListView하위 Container에 사이즈 제거하기 3.Column에 Expanded 주기 4.최상위 Container에 사이즈값주기 전부 안됩니다.. ListView를 Cloumn으로 감싸서 쓰고싶은데 오류만 나옵니다.
-
미해결스프링 핵심 원리 - 기본편
@Configuration 사용 이유
AutoAppConfig에서 @Configuration을 사용한 이유가 궁금합니다. excludeFilters = @Filter(type = FilterType.ANNOTATION, classes =Configuration.class) 를 통해서 @Configuration가 붙은 설정 정보는 스캔 대상에서 제외가 된 것이면 위에서 사용된 @Configuration을 통해 @ComponentScan도 스캔이 되지 않는 것 아닌가요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
반환값이 자동으로 List<ResponseOrder>가 가능한 이유가 궁금합니다!
restTemplate.exchange 를 사용할 때는 OrderController에서 지정한반환값인 ResponseEntity<List<ResponseOrder>>를 받았습니다.그런데 OrderServiceClient인터페이스에서는 바로 ResponseEntity의바디에 있는 값을 받았습니다. 왜 이렇게 되는지 궁금하여 질문합니다!
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요 제로초님 RTK-QUERY 관련해서 질문드립니다.
안녕하세요 제로초님 블로그하나를 만들고 있는데 react query 를 써보려 했더니 redux-toolkit에는 RTK-query 가 따로 있다 하더라구요 그래서 예제코드들을 쭉 둘러봤는데 대부분 provider에 감싸는 형태로 작성되더라구요. 하지만 next-redux-wrapper를 사용했는데 그에 대한 예제 코드들이라던가 사례들이 잘 보이지 않더라구요(제가 검색을 잘 못한건지..) 혹시 rtk-query를 사용 한다면 next-redux-wrapper를 걷어 내야할까요?
-
미해결포토샵 기본기 하루 5분, 3주 만에 끝내기
강의자료
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결사물인터넷 통신은 내 손에 (Arduino, MQTT, Nodejs, MongoDB, Android,VS Code)
여러 온습도 센서를 사용하여 HTML에 표출
안녕하세요 현재 DHT11-> DHT22로 여러개의 센서를 이용하여 MQTT.html에 표출 하고자 합니다. 질문들을 검색해서 여러개의 센서를 각각 DB에 저장하는 방법은 진행 되었으나, html 페이지에 표출을 하는 시도를 해보고 있습니다. html에서 socket_evt_mqtt1,2,3,4를 변화시키면 다른 센서의 데이터를 표출하나. 한번에 모든 센서를 표출하는 방법에 대해 알고 싶습니다. DHT22, DHT222, DHT223, DHT224 이렇게 진행 하였습니다. app.js의 내용입니다. app.set("port", "3000"); var server = http.createServer(app); var io = require("socket.io")(server); io.on("connection", (socket) => { //웹에서 소켓을 이용한 DHT22 센서데이터 모니터링 socket.on("socket_evt_mqtt", function (data) { DHT22.find({}) .sort({ _id: -1 }) .limit(1) .then((data) => { //console.log(JSON.stringify(data[0])); socket.emit("socket_evt_mqtt", JSON.stringify(data[0])); }); }); socket.on("socket_evt_mqtt2", function (data) { DHT222.find({}) .sort({ _id: -1 }) .limit(1) .then((data) => { //console.log(JSON.stringify(data[0])); socket.emit("socket_evt_mqtt2", JSON.stringify(data[0])); }); }); socket.on("socket_evt_mqtt3", function (data) { DHT223.find({}) .sort({ _id: -1 }) .limit(1) .then((data) => { //console.log(JSON.stringify(data[0])); socket.emit("socket_evt_mqtt3", JSON.stringify(data[0])); }); }); socket.on("socket_evt_mqtt4", function (data) { DHT224.find({}) .sort({ _id: -1 }) .limit(1) .then((data) => { //console.log(JSON.stringify(data[0])); socket.emit("socket_evt_mqtt4", JSON.stringify(data[0])); }); }); }); 추가로 MQTT.html의 내용입니다. <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>Insert title here</title> <script type="text/javascript" src="./node_modules\socket.io\client-dist\socket.io.js"></script> <script src="http://code.jquery.com/jquery-3.3.1.min.js"></script> <script type="text/javascript"> var socket = null;$ var timer = null; $(document).ready(function () { socket = io.connect(); // 3000port // Node.js보낸 데이터를 수신하는 부분 socket.on("socket_evt_mqtt", function (data) { data = JSON.parse(data); $(".mqttlist").html( "<li>" + data.tmp + "(" + data.hum + "%)" + "</li>" ); }); if (timer == null) { timer = window.setInterval("timer1()", 1000); } }); function timer1() { socket.emit("socket_evt_mqtt", JSON.stringify({})); console.log("---------"); } </script> </head> <body> <h2>socket 이용한 DHT22(온도:습도) 모니터링 서비스</h2> <div id="msg"> <div id="mqtt_logs"> <ul class="mqttlist"></ul> </div> </div> <h3>socket 이용한 DHT22(온도:습도) 모니터링 서비스</h3> <div id="msg"> <div id="mqtt_logs"> <ul class="mqttlist2"></ul> </div> </div> </body> </html>
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
Release 는 무엇인가요?
강의를 잠깐 보면서 따라하다가 비주얼 스튜디오 맨위에 32비트 64비트 바꿔주는 아이콘 옆에 Debug라는 아이가 있길래 클릭 해 봤더니 밑에 Release 라는 아이도 있었습니다. Release는 무엇인가요?
-
미해결스프링 핵심 원리 - 기본편
@Configuration @Bean 질문입니다.
질문 1. 이전 섹션이였던 스프링 컨테이너와 스프링 빈 섹션 처음 부분 스프링 컨테이너 생성 과정에서 1 스프링 컨테이너 생성 2 스프링 빈 등록 이라고 되어 있는데 이번 강의 섹션 AppConfig@CGLIB 예상 코드 부분을 보면 @Bean이 붙은 메서드마다 이미 스프링 빈이 존재하면 존재하는 빈을 반환하고, 스프링 빈이 없으면생성해서 스프링 빈으로 등록하고 반환하는 코드가 동적으로 만들어진다. 라고 나와있습니다. 그러면 이전 섹션에서 말한 2 스프링 빈 등록은 자동적으로 해주는 것이 아니라 해당 메소드를 처음 호출할때 스프링 컨테이너에 등록해 주는것인가요? 질문2. 이전 섹션 초반 부분에서 스프링 빈을 등록하는 과정에서 빈 이름과 return 객체를 빈 객체로 등록한다고 나와 있습니다. 그러면 @Configuration과 상관 없이 해당 메소드를 호출할때마다 항상 같은 객체가 호출되야 하는 것이 아닌가요? 해당 과정들이 @Configuration이 있다고 가정했을때 이였나요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
여러 개의 쓰레드 풀을 특정 업무에 배정할 수도 있나요?
쓰레드 풀을 마련해 백엔드 was를 운영한다고 하셨는데,이 쓰레드 풀을 특정 기능별로, 요청별로 나눠 여러 쓰레드 풀을 만들어 둘 수도 있나요? 예를 들면 결제 요청들만 처리하는 쓰레드 풀 A와 회원 정보 관리 요청들만 처리하는 쓰레드 풀 B가 있는 것이죠!
-
미해결정혜경 판타스틱 자료구조 in C
reHeapUp while문
parent = child / 2; while (hp->heap[parent] > hp->heap[child]) { tmp = hp->heap[parent]; hp->heap[parent]=hp->heap[child] ; hp->heap[child] = tmp; child = parent; parent = child / 2; } 저는 이렇게 작성했는데 선생님과 답이 달라서 이것도 가능한지 궁금해 질문드립니다!
-
미해결비전공 기획자 및 관리자를 위한 IT 필수 지식
강의 자료 요청 드립니다
안녕하세요! 수강 시 참고하려고 하여 tys0421@naver.com 으로 강의 자료 보내주시면 감사하겠습니다 :)