묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[백문이불여일타] 데이터 분석을 위한 기초 SQL
Where 절에서 사용 방법
Where 절에서 is 또는 = 을 쓰는 기준과 뒤에 나오는 내용에도 언제 ' ' 를 쓰는지 정확하게 구분해주실 수 있으실까요?
-
미해결[초중급편] 안드로이드 데이팅 앱 만들기(Android Kotlin)
CardStackView 자동완성 질문
노션 보고 따라 했는데 이런식의 에러가 나와요 ......ㅠ
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
리스트가 배열인가요
리스트는 여러가지 데이터 타입을 담을 수 있다고 하셨고 0:28에서는 리스트를 다른 언어에서는 배열이라고 한다고 하셨어요.그런데 엄밀히 따지면 배열은 여러 자료형을 담을 수 없으니까 배열과는 다른 거 아닌가요?
-
해결됨[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
10.6 재질문…!
exports.apiLimiter = async (req, res, next) => { let user; if (res.locals.decoded) { user = await User.findOne({ where: { id: res.locals.decoded.id } }); } rateLimit({ widowMs: 60 * 1000, max: user?.type === "premium" ? 10 : 1, handler(req, res) { res.status(this.statusCode).json({ code: this.statusCode, message: "1분에 열 번만 요청 할 수 있습니다...", }); }, })(req, res, next); }; Api 프리미엄고객만 1분에 열번만요청할수있게 미들웨어 확장패턴으로만들었습니다 그런데 localhost:4000/myposts 접속해서 10 번이상새로고침해도 api가 제한이 안되고 제가작성한 게시글 목록만 뜹니다
-
해결됨실무자를 위한 구글애널리틱스(GA4+GTM) 활용법(25년 Update)
'GA4_비회원구매버튼클릭'이 Tags Not Fired에서 이동하지 않을 때 처리 방법
영상대로 변수, 트리거, 태그까지 설정해서 미리보기 했는데 'GA4_비회원구매버튼클릭'이 Tags Not Fired에서 Tags Fired로 이동하지 않습니다ㅠㅠ GA4 이벤트 상에서도 찍히는 게 없고요. 어떤 부분을 확인해야 할까요?
-
미해결[2025년 출제기준] 웹디자인기능사 실기시험 완벽 가이드
이미지 슬라이드가 1200*300으로 나오지 않고 정사각형으로 표현이 됩니다
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>A타입</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <div class="container"> <header> <div class="header-logo"></div> <div class="navi"> <ul class="menu"> <li> <a href="#none">sub-menu1</a> <div class="sub-menu"> <a href="#none">sub-menu1</a> <a href="#none">sub-menu1</a> <a href="#none">sub-menu1</a> <a href="#none">sub-menu1</a> </div> </li> <li> <a href="#none">sub-menu2</a> <div class="sub-menu"> <a href="#none">sub-menu2</a> <a href="#none">sub-menu2</a> <a href="#none">sub-menu2</a> <a href="#none">sub-menu2</a> </div> </li> <li> <a href="#none">sub-menu3</a> <div class="sub-menu"> <a href="#none">sub-menu3</a> <a href="#none">sub-menu3</a> <a href="#none">sub-menu3</a> <a href="#none">sub-menu3</a> </div> </li> <li> <a href="#none">sub-menu4</a> <div class="sub-menu"> <a href="#none">sub-menu4</a> <a href="#none">sub-menu4</a> <a href="#none">sub-menu4</a> <a href="#none">sub-menu4</a> </div> </li> </ul> </div> </header> <div class="slide"> <div> <a href="#none"><img src="images/slide-01.jpg" alt=""></a> <a href="#none"><img src="images/slide-02.jpg" alt=""></a> <a href="#none"><img src="images/slide-03.jpg" alt=""></a> </div> </div> <div class="items"> <div class="news"> <div class="tab-inner"> <div class="btn"> <a href="#none">공지사항</a> </div> <div class="tab1"> <a class="open-modal" href="#none"><em>공지사항공지사항공지사항공지사항공지사항</em> <b>2023.05.05</b></a> <a href="#none"><em>공지사항공지사항공지사항공지사항공지사항</em> <b>2023.05.05</b></a> <a href="#none"><em>공지사항공지사항공지사항공지사항공지사항</em> <b>2023.05.05</b></a> <a href="#none"><em>공지사항공지사항공지사항공지사항공지사항</em> <b>2023.05.05</b></a> </div> </div> </div> <div class="gallery"> <div class="btn"> 갤러리 </div> <div class="tab2"> <a href="#none"><img src="images/gallery-01.jpg" alt=""></a> <a href="#none"><img src="images/gallery-02.jpg" alt=""></a> <a href="#none"><img src="images/gallery-03.jpg" alt=""></a> </div> </div> <div class="shortcut"></div> </div> <footer> <div class="footer-logo"></div> <div class="copyright"></div> <div class="sns"></div> </footer> </div> <div class="modal"> <div class="modal-content"> <h2>스트리밍 서버 이전으로 서비스 장애</h2> <p>위 내용을 보시면 제법 큰 작업이었음을 알 수 있습니다. <br> 특히 문자셋의 변경에 따라 기존의 DB, data, 웹사이트 솔루션 등의 커스트마이징 등에 상당한 어려움이 있었고, <br> 이에 따른 일부 접속 오류가 있을 수 있었음에 양해를 구합니다.<br> 특히 인터넷익스플로러 11로 접속하셨을 경우 일부 문제은행 목차가 출력되지 않았을 수도 있습니다.<br><br> 서버 이전 작업으로 고객님들께 불편을 드려서 대단히 죄송합니다. 정상 운영되도록 최선을 다하겠습니다. 감사합니다.<br> </p> <a class="close-modal" href="#none">닫기</a> </div> </div> <script src="script/jquery-1.12.4.js"></script> <script src="script/custom.js"></script> </body> </html> @charset "utf-8"; body { color: #000; font-size:15px; background-color: #fff; margin:0; } a { text-decoration: none; color:inherit; } .container {width :1200px; border:1px solid #000; margin:auto;} header {height:100px; border:1px solid red; position:relative;} .slide {height:300px;} .items {height:250px;} footer {height:100px;} /* header */ header > div { height:100px; } .header-logo { border:1px solid #000; width:200px; float:left; } .navi { /* border:1px solid #000; */ width:600px; float:right; margin-right:20px; margin-top:55px; } .menu { } .menu li { list-style: none; float:left; width:25%; } .menu li > a { display: block; padding:5px; background-color: #fff; text-align: center; } .menu li:hover > a { background-color: #000; color: #fff; } .sub-menu { display: none; } .sub-menu a { display:block; padding:5px; background-color: #fff; text-align: center; } .sub-menu a:hover { background-color: #000; color:#fff; } /* slide */ .slide { position:relative; overflow:hidden; } .slide > div { font-size: 0; width:3600px; position:absolute; top:0; left:0; float: left; animation:slide 10s linear infinite; } @keyframes slide { 0% {left:0;} 30% {left:0;} 35% {left:-1200px;} 65% {left:-1200px;} 70% {left:-2400px;} 95% {left:-2400px;} 100% {left:0;} } /* items */ .items > div { height:250px; float:left; box-sizing: border-box; } .news { width:400px; border:1px solid #000; } .btn { display: inline-block; padding:5px; border: 1px solid #000; width:100px; text-align: center; } .tab1 {} .tab1 a {display:block; padding:5px;} .tab1 a em { width:70%; float:left; font-style:normal; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; } .tab1 a b { width:30%; float:right; } .gallery { width:400px; border:1px solid red; } .tab2 { text-align: center; } .tab2 a {} .tab2 img { width:120px; } .shortcut { width:400px; border:1px solid green; } /* footer */ footer > div { height:100px; float:left; box-sizing:border-box; } .footer-logo { width:200px; background-color: #000; } .copyright { width:800px; background-color: aqua; } .sns { width:200px; background-color: green; } /* modal */ .modal{ position:absolute; top:0; left:0; background-color: rgba(0, 0, 0, 0.5); width:100%; height:100%; display: none; } .modal-content { position:absolute; top:50%; left:50%; transform: translate(-50%,-50%); background-color: #fff; height:350px; } .modal-content a { display: block; padding:20px; float:right; border:1px solid #000; } 이미지슬라이드가 1200*300 이 아니라정사각형으로 나오는데 원인을 모르겠어서 문의합니다^^;;
-
미해결홍정모의 따라하며 배우는 C++
6:35 코드 질문
클래스 B 선언 부분에서, 생성자 선언후 빈{}는 무슨 용도인가요?? 아래 코드에서 17째줄 {} 입니다 #include <iostream>#include <string>#include <array>#include <limits>#include <vector>#include <algorithm>using namespace std;class B {private: int m_b;public: B(const int& m_b_in) : m_b(m_b_in) {}};class Something {private: int m_i; double m_d; char m_c; int m_arr[5]; B m_b;public: Something() : m_i(1), m_d(3.14), m_c('a'), m_arr{ 1, 2, 3, 4, 5 }, m_b(m_i-1) // 이게 member initializer. 물론 여기서 초기화 하고 20-22줄에서 다시 오버라이드도 가능 //m_i{1}, m_d{3.14}, m_c{'a'}로 하면 형변환이 안됨. 좀 더 엄격함. 자동으로 캐스팅이 안됨. { m_i = 2; m_d = 3.15; m_c = 'b'; } void print() { cout << m_i << " " << m_d << " " << m_c << " "; for (auto& e : m_arr) cout << e << " "; cout << endl; }};int main() { Something Some; Some.print(); return 0;}
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
@responsebody
영상7분쯤에서 "저런게 걸린다고"하셨는데,클래스레벨에 @Responsebody붙어있으면 괜찮은거 아닌가요?!?
-
해결됨스프링과 JPA 기반 웹 애플리케이션 개발
사진 수정이 계속 안 됩니다.
cdn 방식으로 cropper를 사용하는 중이고요. 자바스크립트를 여러번 검토 하였음에도 프로필 사진 변경 문제는 끝까지 해결되지 않았습니다.https://www.youtube.com/watch?v=k330LVo2yw8setting.profile.html<!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://thymeleaf.org/extras/spring-security"> <head th:fragment="head"> <meta charset="UTF-8"> <title>StudyOlle</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.4.1/dist/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.4.1/dist/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/jdenticon@3.2.0/dist/jdenticon.min.js" async integrity="sha384-yBhgDqxM50qJV5JPdayci8wCfooqvhFYbIKhv0hTtLvfeeyJMJCscRfFNKIxt43M" crossorigin="anonymous"> </script> <style> .container{ max-width:100%; } </style> </head> <nav th:fragment="main-nav" class="navbar navbar-expand-sm navbar-dark bg-dark"> <a class="navbar-brand" href="/" th:href="@{/}"> <img src="/images/logo_sm.png" width="30" height="30"> </a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav mr-auto"> <li class="nav-item"> <form th:action="@{/search/study}" class="form-inline" method="get"> <input class="form-control mr-sm-2" name="keyword" type="search" placeholder="스터디 찾기" aria-label="Search"> </form> </li> </ul> <ul class="navbar-nav justify-content-end"> <li class="nav-item" sec:authorize="isAnonymous()"> <a class="nav-link" th:href="@{/login}">로그인</a> </li> <li class="nav-item" sec:authorize="isAnonymous()"> <a class="nav-link" th:href="@{/sign-up}">가입</a> </li> <li class="nav-item" sec:authorize="isAuthenticated()"> <a class="nav-link" th:href="@{/notifications}"> <i class="fa fa-bell-o" aria-hidden="true"></i> </a> </li> <li class="nav-item" sec:authorize="isAuthenticated()"> <a class="nav-link btn btn-outline-primary" th:href="@{/notifications}"> <i class="fa fa-plus" aria-hidden="true"></i> 모임 개설 </a> </li> <li class="nav-item dropdown" sec:authorize="isAuthenticated()"> <a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <svg th:if="${#strings.isEmpty(account?.profileImage)}" th:data-jdenticon-value="${#authentication.name}" width="24" height="24" class="rounded border bg-light"></svg> <img th:if="${!#strings.isEmpty(account?.profileImage)}" th:src="${account.profileImage}" width="24" height="24" class="rounded border"/> </a> <div class="dropdown-menu dropdown-menu-sm-right" aria-labelledby="userDropdown"> <h6 class="dropdown-header"> <span sec:authentication="name">Username</span> </h6> <a class="dropdown-item" th:href="@{'/profile/' + ${#authentication.name}}">프로필</a> <a class="dropdown-item" >스터디</a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="#" th:href="@{'/settings/profile'}">설정</a> <form class="form-inline my-2 my-lg-0" action="#" th:action="@{/logout}" method="post"> <button class="dropdown-item" type="submit">로그아웃</button> </form> </div> </li> </ul> </div> </nav> <footer th:fragment="footer"> <div class="row justify-content-center"> <img class="mb-2" src="/images/logo_lang_kr.jpg" alt="" width="100"> <small class="d-block mb-3 text-muted">© 2023</small> </div> </footer> <div th:fragment="settings-menu (currentMenu)" class="list-group"> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'profile'}? active" href="#" th:href="@{/settings/profile}">프로필</a> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'password'}? active" href="#" th:href="@{/settings/password}">비밀번호</a> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'notification'}? active" href="#" th:href="@{/settings/notification}">알림</a> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'tags'}? active" href="#" th:href="@{/settings/tags}">관심 주제</a> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'zones'}? active" href="#" th:href="@{/settings/zones}">활동 지역</a> <a class="list-group-item list-group-item-action list-group-item-danger" th:classappend="${currentMenu == 'account'}? active" href="#" th:href="@{/settings/account}">계정</a> </div> <script type="application/javascript" th:fragment="form-validation"> (function () { 'use strict'; window.addEventListener('load', function () { // Fetch all the forms we want to apply custom Bootstrap validation styles to var forms = document.getElementsByClassName('needs-validation'); // Loop over them and prevent submission Array.prototype.filter.call(forms, function (form) { form.addEventListener('submit', function (event) { if (form.checkValidity() === false) { event.preventDefault(); event.stopPropagation(); } form.classList.add('was-validated') }, false) }) }, false) }()) </script> </html>fragments.html<!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org" xmlns:sec="http://thymeleaf.org/extras/spring-security"> <head th:fragment="head"> <meta charset="UTF-8"> <title>StudyOlle</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.4.1/dist/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.4.1/dist/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/jdenticon@3.2.0/dist/jdenticon.min.js" async integrity="sha384-yBhgDqxM50qJV5JPdayci8wCfooqvhFYbIKhv0hTtLvfeeyJMJCscRfFNKIxt43M" crossorigin="anonymous"> </script> <style> .container{ max-width:100%; } </style> </head> <nav th:fragment="main-nav" class="navbar navbar-expand-sm navbar-dark bg-dark"> <a class="navbar-brand" href="/" th:href="@{/}"> <img src="/images/logo_sm.png" width="30" height="30"> </a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav mr-auto"> <li class="nav-item"> <form th:action="@{/search/study}" class="form-inline" method="get"> <input class="form-control mr-sm-2" name="keyword" type="search" placeholder="스터디 찾기" aria-label="Search"> </form> </li> </ul> <ul class="navbar-nav justify-content-end"> <li class="nav-item" sec:authorize="isAnonymous()"> <a class="nav-link" th:href="@{/login}">로그인</a> </li> <li class="nav-item" sec:authorize="isAnonymous()"> <a class="nav-link" th:href="@{/sign-up}">가입</a> </li> <li class="nav-item" sec:authorize="isAuthenticated()"> <a class="nav-link" th:href="@{/notifications}"> <i class="fa fa-bell-o" aria-hidden="true"></i> </a> </li> <li class="nav-item" sec:authorize="isAuthenticated()"> <a class="nav-link btn btn-outline-primary" th:href="@{/notifications}"> <i class="fa fa-plus" aria-hidden="true"></i> 모임 개설 </a> </li> <li class="nav-item dropdown" sec:authorize="isAuthenticated()"> <a class="nav-link dropdown-toggle" href="#" id="userDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <svg th:if="${#strings.isEmpty(account?.profileImage)}" th:data-jdenticon-value="${#authentication.name}" width="24" height="24" class="rounded border bg-light"></svg> <img th:if="${!#strings.isEmpty(account?.profileImage)}" th:src="${account.profileImage}" width="24" height="24" class="rounded border"/> </a> <div class="dropdown-menu dropdown-menu-sm-right" aria-labelledby="userDropdown"> <h6 class="dropdown-header"> <span sec:authentication="name">Username</span> </h6> <a class="dropdown-item" th:href="@{'/profile/' + ${#authentication.name}}">프로필</a> <a class="dropdown-item" >스터디</a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="#" th:href="@{'/settings/profile'}">설정</a> <form class="form-inline my-2 my-lg-0" action="#" th:action="@{/logout}" method="post"> <button class="dropdown-item" type="submit">로그아웃</button> </form> </div> </li> </ul> </div> </nav> <footer th:fragment="footer"> <div class="row justify-content-center"> <img class="mb-2" src="/images/logo_lang_kr.jpg" alt="" width="100"> <small class="d-block mb-3 text-muted">© 2023</small> </div> </footer> <div th:fragment="settings-menu (currentMenu)" class="list-group"> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'profile'}? active" href="#" th:href="@{/settings/profile}">프로필</a> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'password'}? active" href="#" th:href="@{/settings/password}">비밀번호</a> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'notification'}? active" href="#" th:href="@{/settings/notification}">알림</a> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'tags'}? active" href="#" th:href="@{/settings/tags}">관심 주제</a> <a class="list-group-item list-group-item-action" th:classappend="${currentMenu == 'zones'}? active" href="#" th:href="@{/settings/zones}">활동 지역</a> <a class="list-group-item list-group-item-action list-group-item-danger" th:classappend="${currentMenu == 'account'}? active" href="#" th:href="@{/settings/account}">계정</a> </div> <script type="application/javascript" th:fragment="form-validation"> (function () { 'use strict'; window.addEventListener('load', function () { // Fetch all the forms we want to apply custom Bootstrap validation styles to var forms = document.getElementsByClassName('needs-validation'); // Loop over them and prevent submission Array.prototype.filter.call(forms, function (form) { form.addEventListener('submit', function (event) { if (form.checkValidity() === false) { event.preventDefault(); event.stopPropagation(); } form.classList.add('was-validated') }, false) }) }, false) }()) </script> </html>SettingsController.java@Controller @RequiredArgsConstructor public class SettingsController { final static String SETTING_PROFILE_VIEW_NAME="settings/profile"; final static String SETTING_PROFILE_URL="/settings/profile"; private final AccountService accountService; @GetMapping(SETTING_PROFILE_URL) public String profileUpdateForm(@CurrentUser Account account, Model model){ model.addAttribute(account); model.addAttribute(new Profile(account)); return SETTING_PROFILE_VIEW_NAME; } @PostMapping(SETTING_PROFILE_URL) public String updateProfile(@CurrentUser Account account, @Valid Profile profile, Errors errors, Model model, RedirectAttributes attributes){ if(errors.hasErrors()){ model.addAttribute(account); return SETTING_PROFILE_VIEW_NAME; } accountService.updateProfile(account, profile); attributes.addFlashAttribute("message","프로필을 수정했습니다."); return "redirect:"+SETTING_PROFILE_URL; } }AccountService.javapublic void updateProfile(Account account, Profile profile){ account.setUrl(profile.getUrl()); account.setBio(profile.getBio()); account.setOccupation(profile.getOccupation()); account.setLocation(profile.getLocation()); account.setProfileImage(profile.getProfileImage()); accountRepository.save(account); }Profile.java@Data @NoArgsConstructor public class Profile { @Length(max = 35) private String bio; @Length(max = 50) private String url; @Length(max = 50) private String occupation; @Length(max = 50) private String location; private String profileImage; public Profile(Account account){ this.bio=account.getBio(); this.url=account.getUrl(); this.occupation=account.getOccupation(); this.location=account.getLocation(); this.profileImage=account.getProfileImage(); } }
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
new에 대해...
ArrayList<Student> list = new ArrayList<>(); list.add(new Student("유재석", "파이썬")); list.add(new Student("박명수", "자바")); list.add(new Student("김종국", "자바")); list.add(new Student("조세호", "C")); list.add(new Student("서장훈", "파이썬"));안녕하세요 프로그래밍 입문 일주일차입니다..강의 볼때마다 어쩔땐 new를 붙일때 있고 어쩔땐 new를 안붙이고 할때가 있는데 new가 뭔가요..???강의를 보면서 할때는 이해가 가는데혼자서 해볼려고 하면 머리 속이 새하얘지는데 계속 하다보면 나아 질까요..??
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
flutter설치 오류
파란 버튼을 이용해서 플러터 SDK를 다운로드 받았는데 flutter doctor을 실행해보니Flutter (the doctor check crashed)X Due to an error, the doctor check did not complete. If the error message below is not helpful, please let us knowabout this issue at https://github.com/flutter/flutter/issues.X Exception: Cannot find the executable for where. This can happen if the System32 folder (e.g.C:\Windows\System32 ) is removed from the PATH environment variable. Ensure that this is present and then tryagain after restarting the terminal and/or IDE.라는 오류가 뜹니다. 이건 어떻게 해결해야 하는건가요? 그리고 또 안드로이드 스튜디오에선 [!] Android Studio (version 2022.1) X Unable to find bundled Java version. 라는 오류가 뜨는데 해결을 어떻게 해야하나요?
-
미해결ARM Cortex-M 프로세서 프로그래밍
s319_RISC 강의 질문입니다.
컴파일 오류가 발생하여 수업질문 내용을 참고해 b _exit1 nop .space 1 ->작은 숫자로 낮췄습니다.하지만 여전히에러가 발생하는데 해결할 방법을 부탁드립니다.감사합니다.
-
해결됨Django REST Framework 핵심사항
유저 1명이 1개의 게시글에 좋아요를 누를 경우
안녕하세요 선생님 강의 매우 재밌게 듣고 있습니다.커리큘럼 3-3 숫자만 보내고 싶을 때를 수강 하고 난 후, 게시글은 1명의 유저가 1개의 좋아요를 보내고 이미 보냈다면 취소가 되어야 될 것 같다는 생각에 코드를 수정 하고 있었는데요.사실, 모델링 부분에서 건들지 않으면 위 사항은 자바스크립트의 로컬스토리지나 세션의 개념이 아니고서야 처리가 안될 것 같다는 생각이 드는데, 선생님은 어떻게 생각 하시나요?만약 모델링을 수정 하고, 위 기능을 고려 한다면 이렇게 접근 할 것 같습니다.좋아요 체크 여부 Boolean 필드 생성해당 게시글에 좋아요를 누른 경우update 구문에서 좋아요 체크 여부를 True로 변경update 구문 내에서 조건 분기 추가좋아요 체크가 되어 있지 않다면 숫자 +1좋아요 체크가 되어 있다면 숫자 -1좋아요 숫자가 0이라면 0을 그대로 return이 부분은 PositiveInteger기 때문에 무시해도 되나요?제가 생각한 접근 방식을 보시고, 선생님의 노하우를 공유 해주셨으면 합니다 감사합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
리액트 프로젝트 생성
리액트 npx create-react-app [이름]으로 해서 프로젝트 생성해서 보면 index.html과 app.js를 같이 작성하는지 아니면 app.js만 하는지. 알고 싶습니다 src에 컴포넌트 폴더를 생성하면 파일 종류가 어떻게 되어 있는지 알고 싶습니다
-
미해결
querydsl 조회 쿼리 출력이 이상합니다.
Team Entity코드입니다.package study.QueryDslClass.entity; import jakarta.persistence.*; import lombok.*; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter @NoArgsConstructor(access = AccessLevel.PROTECTED) @ToString(of = {"id", "teamName"}) public class Team { @Id @GeneratedValue @Column(name = "team_id") private Long id; private String name; @OneToMany(mappedBy = "team") private List<Member> members = new ArrayList<>(); public Team(String name) { this.name = name; } } 테스트 코드입니다.@Test public void teamTest() throws Exception { List<Team> result = query.selectFrom(team) .fetch(); for (Team team1 : result) { System.out.println(team1); } }해당 테스트 코드 진행 시 team 객체의 id와 name이 출력 되어야 한다고 생각하는데 team의 id만 출력됩니다.출력 로그 입니다.2023-06-27T17:22:50.740+09:00 DEBUG 24340 --- [ main] org.hibernate.SQLselectt1_0.team_id,t1_0.namefromteam t1_02023-06-27T17:22:50.741+09:00 INFO 24340 --- [ main] p6spy : #1687854170741 | took 0ms | statement | connection 4| url jdbc:h2:tcp://localhost/~/querydslselect t1_0.team_id,t1_0.name from team t1_0select t1_0.team_id,t1_0.name from team t1_0;Team(id=1)Team(id=2)
-
미해결확률과 통계 기초
3.1 강의 질문입니다.
5:05 부분에서 f(x)의 codomain이 왜 R인지 모르겠습니다.f(x) = x^2에서 무엇을 기준으로 codomain이 결정되는건가요..x^2이 음수를 가지지 못하니까 Range가 subset of R인건 이해가 가는데 그러면 codomain을 결정하는건 x인가요? 근데 함수에서 이미 x는 0보다 크다고 범위를 지정했으면 codomain도 그순간 같이 subset of R이 되는게 아닌가요? 헷갈립니당... 중요한건 아닌것같은데 헷갈리니 괜히 메롱합니다..
-
미해결[핵집] 2025 빅데이터 분석기사(필기)_과목 1~2
기출문제에 대한 질문2입니다.
-기출문제 4회 20번에서... 빅데이터 저장소를 지칭하는 것은?의 답이 4번 NoSQL이라고 했는데요..NoSQL은 비정형DB를 의미하는 것이지 빅데이터 저장소를 지칭하는 것은 아닌 것 같은데요.. 의견 부탁드려요..
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
강의자료 부탁드립니다
강의자료 부탁드립니다 ss4825@naver.com입니다
-
미해결아두이노와 떠나는 사물인터넷 여행 - 아두이노 입문부터 IoT 중급까지!
엔트리 하드웨어 프로그램 오류
영상에서 처럼 엔트리 하드웨어를 통해 나노 보드를 연결하려고 했습니다. 드라이버 설치는 문제 없는데, 펌웨어 설치에서 하드웨어가 연결되지 않았다고 뜹니다.다른 usb 포트에 연결도 해봤고 전원을 껐다 키기도 했습니다.IDE에서 Blink 예제를 확인하였을 때는 문제없이 uploading 까지 진행되었습니다.
-
미해결실전! 스프링 데이터 JPA
부모 엔티티의 Respository 로 저장시 자식 엔티티의 영속성 전이 문제
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]김영한님 안녕하세요. JPA 사용중에 부모 엔티티의 Respository 로 저장시 자식 엔티티의 영속성 전이 문제가 있어 질문 남깁니다. 상황은 다음과 같습니다.게시판과 게시판의 댓글을 하나의 애그리거트로 보고 게시판(루트 애그리더트)을 통해 댓글을 작성하려고 합니다. 댓글의 게시판 칼럼을 세팅하고 게시판의 repository로 save 하게 되면 댓글이 영속성 상태가 되지 않습니다. 근데 게시판 내부에 있는 댓글 리스트에 추가된 신규 댓글을 영속성 상태입니다. (영속성 상태 여부는 id 값 존재 여부로 판단했습니다.) 위 캡쳐에서 board 의 commentList의 인덱스가 4인 BoardComment 를 보시면 id가 7로 세팅 되어 있지만, boardComment 의 id는 null 로 되어 있습니다. 그래서 물어보고 싶은건 다음과 같습니다.위 상황에서 boardComment 의 id 가 7(null 이 아닌)이 될 수 있는 방법댓글 조회/수정/삭제에서 DDD 를 적용했을때의 로직 DDD 에 맞게 루트 애그리거트를 통한 CRUD 를 만들려고 하다보니 이런 질문을 하게 되었습니다. 이 문제의 전체코드는 https://github.com/SongHae8640/community 이고, 위 테스트 코드는 https://github.com/SongHae8640/community/blob/master/src/test/java/com/example/community/domain/board/comment/BoardCommentTest.java 입니다. 확인 부탁드립니다.감사합니다.