묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
matplotlib dataframe.plot()에서 x축이 모두 안보이는 경우
안녕하세요! matplotlib으로 데이터를 시각화할 때, 바그래프로 그리면 x축 10개가 모두 표기되는데라인 그래프로 그리는 경우 x축이 5개로 모두 표기 되지 않습니다~ 라인 그래프로 그려도 x축을 모두 표기하는 방법이 있을까요?
-
해결됨자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
solution 클래스 관련 질문드립니다.
강사님 안녕하세요!solution 클래스 작성 시 int n과 int[] arr 두 가지를 인자로 받을 때와 int[] arr 한 가지만 인자로 받을 때 결과는 같은데 차이점이 궁금해서 질문드립니다.public ArrayList<Integer> solution (int n, int[] arr)public ArrayList<Integer> solution (int[] arr)
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
ec2 npm install sharp error
ec2 ssh 접속하여 npm install을 하였는데 sharp 모듈이 설치가 안 되는 것 같습니다. node version도 요구 사항을 충족해주었는데 무엇이 문제인지 해결하지 못하고 있습니다.
-
미해결스프링 배치
블로그 정리
안녕하세요. 강사님 좋은 강의 감사합니다.다름이 아니라, 강의 보면서 블로그에 정리하려고 하는데 혹시 강의 기반으로 내용 정리해도 괜찮을까요?
-
미해결[2025년 출제기준] 웹디자인기능사 실기시험 완벽 가이드
확장에서 korean 검색 후 VS Code용 한국어 팩 설치하면 error 납니다.
집 PC에서 한국어 팩 설치가 가능한데 회사 PC에선 확장에서 korean 검색 후 VS Code용 한국어 팩 설치하면 error 납니다.어떻게 해야 설치가 가능합니까?
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
secret option required for session 에러와 localhost 에서 500 에러가 납니다.
secret 옵션이 추가되어 있음에도 secret option required for session 에러가 나고,개발자도구 f12로 봤을때 localhost 500 에러가 있으면HTML코드 내부에서 잘못 된 문제일까요>??
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
[해결법공유] W/System: Ignoring header X-Firebase-Locale because its value was null.
강의랑 똑같이 만들었는데 계속 위 문구로 계속 fail로 뜰 때 해결법 공유합니다. 단말기를 연결해서 쓰는 경우에 단말기가 인터넷에 연결되어있지 않으면 발생하는 에러라고하네요. 핸드폰 와이파이 켜니까 바로 해결됐습니다. https://jtuto.com/w-system-ignoring-header-x-firebase-locale-because-its-value-was-null-android-firebase/
-
미해결Python 부트캠프
소수점 출력 질문입니다.
안녕하세요?강의 중에 소수점 자리 표현 출력은 format형만 가르쳐 주셨는데 f용법으로는 소수점 자리 표현이 가능한지 궁금합니다
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
스케일링 방식 질문
안녕하세요. 강의 잘 듣고 있습니다 :)평가 실습 - 피마 인디언 당뇨병 예측 15분 58초에서 StandardScaler 를 사용해서 스케일링 작업을하시는데요. 스케일링 방식에는 z-score 변환과min_max 방식이 있는데 각각 어떤 경우에 사용되는 건가요?어떨 때는 z-score 변환으로 스케일링 하는 것이 좋고,어떨 때는 min_max 스케일링 방식이 좋은지 알고 싶습니다. 감사합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
debug오류가 있습니다
이렇게 오류가 뜨면서 인텔리j의 실행이 끝나는데 어떻게 해결해야하나요? 그래서인지 localhost:8080에 연결이 안됩니다ㅠㅠ//SpringConfigpackage hello.hellospring; import hello.hellospring.repository.JdbcMemberRepository; import hello.hellospring.repository.MemberRepository; import hello.hellospring.repository.MemoryMemberRepository; import hello.hellospring.service.MemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;import javax.sql.DataSource; // bean으로 등록하는 방법@Configuration public class SpringConfig { private DataSource dataSource; public SpringConfig(DataSource dataSource) { this.dataSource = dataSource; } // 생성자를 통해서 등록하는것이 생성자 주입 @Bean public MemberService memberService(){ return new MemberService(memberRepository()); } @Bean public MemberRepository memberRepository(){ // return new MemoryMemberRepository(); return new JdbcMemberRepository(dataSource); } }//Jdbcpackage hello.hellospring.repository; import hello.hellospring.domain.Member; import org.springframework.jdbc.datasource.DataSourceUtils; import javax.sql.DataSource; import java.sql.*; import java.util.ArrayList; import java.util.List; import java.util.Optional; public class JdbcMemberRepository implements MemberRepository { private final DataSource dataSource; public JdbcMemberRepository(DataSource dataSource) { this.dataSource = dataSource; } @Override public Member save(Member member) { String sql = "insert into member(name) values(?)"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); pstmt.setString(1, member.getName()); pstmt.executeUpdate(); rs = pstmt.getGeneratedKeys(); if (rs.next()) { member.setId(rs.getLong(1)); } else { throw new SQLException("id 조회 실패"); } return member; } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } @Override public Optional<Member> findById(Long id) { String sql = "select * from member where id = ?"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setLong(1, id); rs = pstmt.executeQuery(); if(rs.next()) { Member member = new Member(); member.setId(rs.getLong("id")); member.setName(rs.getString("name")); return Optional.of(member); } else { return Optional.empty(); } } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } @Override public List<Member> findAll() { String sql = "select * from member"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql); rs = pstmt.executeQuery(); List<Member> members = new ArrayList<>(); while(rs.next()) { Member member = new Member(); member.setId(rs.getLong("id")); member.setName(rs.getString("name")); members.add(member); } return members; } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } @Override public Optional<Member> findByName(String name) { String sql = "select * from member where name = ?"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setString(1, name); rs = pstmt.executeQuery(); if(rs.next()) { Member member = new Member(); member.setId(rs.getLong("id")); member.setName(rs.getString("name")); return Optional.of(member); } return Optional.empty(); } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } private Connection getConnection() { return DataSourceUtils.getConnection(dataSource); } private void close(Connection conn, PreparedStatement pstmt, ResultSet rs) { try { if (rs != null) { rs.close(); } } catch (SQLException e) { e.printStackTrace(); } try { if (pstmt != null) { pstmt.close(); } } catch (SQLException e) { e.printStackTrace(); } try { if (conn != null) { close(conn); } } catch (SQLException e) { e.printStackTrace(); } } private void close(Connection conn) throws SQLException { DataSourceUtils.releaseConnection(conn, dataSource); } }package hello.hellospring.repository; import hello.hellospring.domain.Member; import org.springframework.jdbc.datasource.DataSourceUtils; import javax.sql.DataSource; import java.sql.*; import java.util.ArrayList; import java.util.List; import java.util.Optional; public class JdbcMemberRepository implements MemberRepository { private final DataSource dataSource; public JdbcMemberRepository(DataSource dataSource) { this.dataSource = dataSource; } @Override public Member save(Member member) { String sql = "insert into member(name) values(?)"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); pstmt.setString(1, member.getName()); pstmt.executeUpdate(); rs = pstmt.getGeneratedKeys(); if (rs.next()) { member.setId(rs.getLong(1)); } else { throw new SQLException("id 조회 실패"); } return member; } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } @Override public Optional<Member> findById(Long id) { String sql = "select * from member where id = ?"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setLong(1, id); rs = pstmt.executeQuery(); if(rs.next()) { Member member = new Member(); member.setId(rs.getLong("id")); member.setName(rs.getString("name")); return Optional.of(member); } else { return Optional.empty(); } } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } @Override public List<Member> findAll() { String sql = "select * from member"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql); rs = pstmt.executeQuery(); List<Member> members = new ArrayList<>(); while(rs.next()) { Member member = new Member(); member.setId(rs.getLong("id")); member.setName(rs.getString("name")); members.add(member); } return members; } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } @Override public Optional<Member> findByName(String name) { String sql = "select * from member where name = ?"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { conn = getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setString(1, name); rs = pstmt.executeQuery(); if(rs.next()) { Member member = new Member(); member.setId(rs.getLong("id")); member.setName(rs.getString("name")); return Optional.of(member); } return Optional.empty(); } catch (Exception e) { throw new IllegalStateException(e); } finally { close(conn, pstmt, rs); } } private Connection getConnection() { return DataSourceUtils.getConnection(dataSource); } private void close(Connection conn, PreparedStatement pstmt, ResultSet rs) { try { if (rs != null) { rs.close(); } } catch (SQLException e) { e.printStackTrace(); } try { if (pstmt != null) { pstmt.close(); } } catch (SQLException e) { e.printStackTrace(); } try { if (conn != null) { close(conn); } } catch (SQLException e) { e.printStackTrace(); } } private void close(Connection conn) throws SQLException { DataSourceUtils.releaseConnection(conn, dataSource); } }
-
미해결네트워크, 그림으로 이해하자(2022ver.)
네트워크 전반적인 과정에 대해 문의드립니다.
안녕하세요. 강의가 큰 도움이 되었습니다. 강의를 다 듣고 네트워크의 전반적인 부분을 한번에 이해해보려고 하는데, 어려운 점이 있어서 문의드립니다. 클라이언트(웹브라우저)가 HTTP 메서드를 통해서 서버에 요청하는 경우, 어떻게 네트워크를 타는지 과정을 알아보고 있습니다. 일부는 웹 서칭을 했고, 일부는 전공 강의를 참고했습니다. 정리해보면 아래의 8단계를 거치는 것 같았습니다. 브라우저가 직접 메시지를 네트워크에 보낼 수는 없고, 운영체제에 의뢰해서 메시지를 전달한다.OS의 프로토콜 스택에서 메시지를 받고 수신처 주소 등의 제어정보를 덧붙인다.패킷을 LAN 어댑터(=랜카드)에 넘긴다.LAN 어댑터는 다음 Hop의 MAC주소를 붙인 프레임을 전기신호로 변환시킨다.신호를 LAN 케이블에 송출시킨다.전달된 프레임이 스위치를 거쳐서 라우터에 도착한다. 인터넷의 여러 라우터를 거쳐서 목적지 네트워크(웹 서버측의 랜)에 도달한다. 최종적으로 패킷이 물리적인 웹 서버에 도착한다. 웹 서버의 프로토콜 스택은 패킷을 추출하여 메시지를 복원하고 웹 서버 애플리케이션에 넘긴다.메시지를 받은 웹 서버 애플리케이션은 요청 메시지에 따른 데이터를 응답 메시지에 넣어 클라이언트로 회송한다. 몇 가지 질문이 있습니다. Q1) 1번에서 프로토콜 스택에서 '수신처 주소'를 덧붙인다고 했는데, 이는 IP 주소를 붙여서 IP 패킷을 만든다는 의미인가요? 아니면 MAC 주소를 말한다는 것인가요? Q2) LAN 어댑터와 랜카드가 같은 것인가요?Q3) 랜카드가 프레임을 전기신호로 변환하는 것은 이해하였는데, 랜카드에서 '다음 Hop의 MAC 주소'를 붙여서 프레임을 만드나요? 그리고 랜카드는 다음 Hop이 무엇인지, 다음 Hop의 MAC주소는 무엇인지 어떻게 알 수 있나요? ARP로 MAC주소를 받아온다고 배웠는데, ARP가 네트워크 계층에 속하면 라우터에서 MAC주소를 알아낼 수 있는거 아닌가요...? 랜카드에서는 같은 네트워크에 연결된 장치들의 MAC주소를 어떻게 알고있나요? Q4) 데이터가 -> 전기신호로 변환되는 것은 보내는 사람의 PC에서만, 전기신호가 -> 데이터로 변환되는 것은 받는 사람의 PC에서만 이뤄지는 것인가요? 그럼 라우터와 라우터 사이에서도 전기 신호로 통신해야 할텐데, 그 라우터들은 전기 신호의 의미(IP 주소 등)을 어떻게 이해하나요? Q5) 위의 과정에서 잘못된 점이 있다면 말씀해주시면 정말 감사하겠습니다! 감사합니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
getserversideProps 성능이슈
안녕하세요 제로초님, 실제 프로젝트에서 getserversideProps 를 주로 쓰고있는데 성능 이슈가 생겨서 질문드립니다.랜더링할 컴포넌트가 많아서인지 아니면 제가 최적화를 잘못해서인지 새페이지를 접근할때마다 접근시간이 꽤오래걸립니다. (프로덕션모드에서는 그나마 괜찮습니다만 느립니다)그래서 이전에 공지사항으로 보내주신 getStaticPath와 getStaticProps만 써서 Incremental Rendering 에 관해서 좀찾아봤는데 솔직히 감을 잡기가 너무어렵더라구요.혹시 도움이 될만한 자료나 싸이트가 있을까요?? 최대한 참고해서 해보도록하겠습니다. 좋은하루보내세요
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
런타임 오류 원인을 모르겠습니다.
import java.util.*; class Main { public static int solution(int count, int[][] array) { int answerRow = 0; int max = 0; for (int i = 0; i < count; i++) { int tmp = 0; for (int j = 0; j < count; j++) { for (int k = 0; k < 5; k++) { if (array[i][k] == array[j][k]) { tmp++; break; } } } if (tmp > max) { max = tmp; answerRow = i; } } return answerRow + 1; } public static void main(String[] args) { Scanner kb = new Scanner(System.in); int count = Integer.valueOf(kb.nextLine()); int[][] array = new int[count][5]; for (int i = 0; i < count; i++) { for (int j = 0; j < 5; j++) { array[i][j] = kb.nextInt(); } kb.nextLine(); } System.out.print(solution(count, array)); } }채점 사이트의 2번, 3번 케이스에서 런타임 오류가 나는데 원인을 모르겠습니다. 제 로컬에서는 런타임 오류가 나지 않고 2, 3번 모두 올바른 결과가 나옵니다. 혹시 원인을 알려주시면 정말 감사하겠습니다!
-
미해결스프링 프레임워크는 내 손에 [스프1탄]
ajax 질문 있습니다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE html><html lang="en"><head> <title>Spring MVC02</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script> <script type="text/javascript"> $(document).ready(function()){ loadList(); }); function loadList(){ //서버와 통신 : 게시판 리스트 가져오기 $.ajax({ url : "boardList.do", type : "get", dataType : "json", success : makeView, error : function(){ alert("error"); } }); } function makeView(data){ alert(data); } </script></head><body> <div class="container"> <h2>Spring MVC02</h2> <div class="panel panel-default"> <div class="panel-heading">BOARD</div> <div class="panel-body">Panel Content</div> <div class="panel-footer">김성규</div> </div></div></body></html> 위와같이 선생님과 코드를 똑같이 만들었고 오류메시지도 출력되는게 없는데localhost:8081내용 : 이런 메세지창이 뜨지 않습니다따로 설정해야하는게 있는건가요?
-
미해결냉동코더의 알기 쉬운 Modern Android Development 입문
Practice9 자동 캐시 정리 구현하기에서 질문
ViewModel에서 saveCacheDeleteMdoe 와 getCacheDeleteMode 함수 두 가지를 구현하실 때 왜 하나는 viewModelScope을 사용하시고 하나는 withContext를 사용하신건지 궁금합니다!
-
미해결프로젝트로 배우는 Vue.js 3
40강 수강 중 에러가 떠서 질문 드립니다 !! ㅠㅠ
40강 이전까진 순조롭게 진행 중이였는데 구글링도 해보고 했는데도 해결이 잘 안 되서 질문 드립니다... ㅠㅠ수업 내용을 따라서 한 결과, 화면은 일단 이렇게 뜹니다 !!그래서 무엇이 문제일까 곰곰히 또 생각을 하며 영상을 몇번 돌려보았는데, Terminal 에 npm install vue-router@4 입력 시이렇게 뜨는게 혹시 문제가 되는건가요?? WARN 으로 도배가 되는군요... ㅠㅠㅠㅠ그리고 저와 비슷한 에러가 뜬 분의 질문 답변을 따라서이것도 try 해보았는데 안 되었습니다 !!도와주세요 ㅠㅠㅠㅠ
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
3분37초쯤
<tr th:each="member : ${members}"> <td th:text="${member.id}"></td> <td th:text="${member.name}"></td> <td th:text="${member.address?.city}"></td> <td th:text="${member.address?.street}"></td> <td th:text="${member.address?.zipcode}"></td> </tr> 여기서 ${member.id} 대신에 *{id}를 써도 되던데 그러면 후자로 써도 상관없는건가요?
-
미해결Flutter + Firebase로 넷플릭스 UI 클론 코딩하기 [무작정 플러터]
firebase 프로덕트 모드로 진행했는데, 홈화면이 안뜹니다... ㅜ
W/Firestore( 2223): (24.3.1) [Firestore]: Listen for Query(target=Query(movie order by name);limitType=LIMIT_TO_FIRST) failed: Status{code=PERMISSION_DENIED, description=Missing or insufficient permissions., cause=null} 이런 오류가 나는데 왜그러는걸까요??ㅠ궁금합니다~
-
미해결부트스트랩 5(Bootstrap 5) - 기초부터 웹 프로젝트 만들기
Post Content -2 질문
제일 마지막 부분 텔레그램과 이메일 아이콘 사이 점은 왜 생기는 건가요 다른 아이콘으로 바꿔도 있고me 줘서 공간을 띄어봐도 계속 있던데 없애는 방법 알고 싶습니다.
-
미해결Flutter 초급 - Http통신, 상태관리
화면새로고침 질문.
커뮤니티 앱을 만들고 있습니다. 그런데 막히는 부분이 있어서 질문드립니다.글작성 버튼 클릭 후 화면이동 후 목록화면에서 화면을 그릴때 새로운 데이터(DB)가 있으면 바로 그려서 보여줘야하는데 그러지못하고있습니다.상태관리를 하면 될거같은데 어떤식으로 해야할지모르겠습니다. RefreshIndicator( onRefresh: () async { setState(() => communityViewModel.onEvent(CommunityEvent.community_query())); await Future.delayed(Duration(seconds: 3)); },스크롤을 내렸을때 새로운데이터를 가져오는 것은 이런식으로 코드작성하니 새로운 데이터를 가져옵니다.