묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 데이터 jpa 강의에서 에러 질문이요
안녕하세요 스프링 데이터 jpa 부분을 수강하던중에 에러가 발생해서 질문합니다.. 구글링해봐도 해결책이 안나와서 질문합니다.. 기존 JPA 강의까지는 에러없이 잘 실행 되던 코드가 SpringDataJpaMemberRepository 인터페이스를 추가하고 SpringConfig를 추가했더니 에러가 발생하네요.. 우선 SpringConfig.java코드는 아래와 같습니다. package com.example.hellospring;import com.example.hellospring.repository.JdbcTemplateMemberRepository;import com.example.hellospring.repository.JpaMemberRepository;import com.example.hellospring.repository.MemberRepository;import com.example.hellospring.service.MemberService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import javax.persistence.EntityManager;import javax.persistence.PersistenceContext;import javax.sql.DataSource;@Configurationpublic class SpringConfig { // 스프링 데이터 jpa가 구현체를 만들어 놓은게 등록이됨 private final MemberRepository memberRepository; @Autowired // 생성자가 하나인경우는 생략해도됨, 그러나 명시하는게 좋을듯 public SpringConfig(MemberRepository memberRepository) { // 스프링 컨네이너에서 MemberRepository를 찾는다 근데 등록해 놓은게 ..SpringDataJpaMemberRepository this.memberRepository = memberRepository; } @Bean public MemberService memberService() { // memberService에다 의존관계 셋팅을 해줘야함 return new MemberService(memberRepository); }} 또한 SpringDataJpaMemberRepository 부분은 다음과 같습니다. package com.example.hellospring.repository;import com.example.hellospring.domain.Member;import org.springframework.data.jpa.repository.JpaRepository;import java.util.Optional;public interface SpringDataJpaMemberRepository extends JpaRepository<Member, Long>, MemberRepository { // 스프링 데이터 JPA가 JpaRepository 를 상속받고 있으면 // SpringDataJpaMemberRepository 를 스프링 빈으로 자동 등록해준다 (구현체로 만들어서 등록을 해준다.) // 이것을 SpringConfig에서 가져다 쓰면 된다. @Override Optional<Member> findByName(String name);} 기존 jpa강의 까지 회원가입과 중복_회원_예외 부분이 에러없이 성공적으로 실행 됐습니다. 그런데 아래와 같은 에러가 발생합니다. Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] Caused by: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment] Caused by: org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set 참고로 application.properties 부분과 build.gradle 부분은 직전강의까지 잘 실행되던 부분에서 수정한게 없습니다.. 혹시 몰라서 application.properties 부분과 build.gradle부분도 올리겠습니다. application.properties 부분입니다. spring.datasource.url=jdbc:h2:tcp://localhost/~/testspring.datasource.driver-class-name=org.h2.Driverspring.datasource.username=saspring.jpa.show-sql=truespring.jpa.hibernate.ddl-auto=none build.gradle 부분입니다. plugins { id 'org.springframework.boot' version '2.4.12' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java'}group = 'com.example'version = '0.0.1-SNAPSHOT'sourceCompatibility = '11'repositories { mavenCentral()}dependencies { implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web'// implementation 'org.springframework.boot:spring-boot-starter-jdbc' implementation 'org.springframework.boot:spring-boot-starter-data-jpa' runtimeOnly 'com.h2database:h2'// testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation('org.springframework.boot:spring-boot-starter-test') { exclude group: 'org.junit.vintage', module: 'junit-vintage-engine' }}test { useJUnitPlatform()} 감사합니다.
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
2일째 설치중입니다...
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 맛비님! 큰 맘먹고 강의를 들어보려 했지만.. Vivado 설치만 2일쨰 중이네요... 글들을 참고 하면서 세번쨰 진행중인데.. 꾹 참고 다시 해보기전에 질문 올려봅니다. 1. C드라이브에 용량이 부족하여 D드라이브로 설치 진행 했습니다. 첫번째는 GUI가 뜨길래 했지만 마지막 로딩에서 멈춰서 넘어가지 않았습니다 ㅠㅠ 2. 맛비님이 알려주는데로 해야 가능하구나 생각하고 wsl로 진행하던중 잘 넘어가다가 마지막에만 안되는 부분이 나왔습니다. 이렇게 잘 넘어가다가 이렇게 멈춰 있네요... GUI로 했을때도 마지막에서만 멈춰 있었습니다. 다른분들이 말씀해주신 libtinfo5, libncurses5를 설치를 해보고 다시 해보려하는데 제발 되었으면 좋겠네요! 중간에 제가 놓친부분이 있는지 확인 부탁드립니다! *참고 : 영상내용 모두다 그대로 진행했습니다. vi install_config.txt 에서 경로 /mnt/d/wsl/tools/Xilinx/ 로 잘 하고 마지막 0에서 1로 바꾸고 다시 vi 로 들어가서 저장확인까지 완료 했습니다!
-
미해결Vue.js 시작하기 - Age of Vue.js
Vue, React 이런 부류를 통칭해서 부르는 용어가 있는지요?
안녕하세요. Vue.js , React.js 처럼 이런 분류를 통칭해서 일반적으로 어떻게 부르는지 궁금합니다. 프론트엔드 프레임워크, SPA 등등 다양하게 용어를 쓰는 것 같은데 다른 분들에게 설명할 때 적합한 용어가 무엇인지 궁금하네요.
-
미해결[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
네비게이션에 슬라이드 다운이 되지 않습니다.
오타도 없는데 슬라이드다운이 되지 않습니다. 내일이 시험인데 자꾸 같은 부분이 안되서 속상한 마음입니다... 자주 질문 드려서 죄송합니다. 네비게이션 관련 질문은 이번만 하고 하지 않겠습니다. 감사합니다... <!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <title>산업대학교</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <div class="container"> <div class="header-inner"> <header> <div class="header-logo"> <a href="#none"><img src="images/logo-b4-header.png" alt="headerlogo"></a> </div> <div class="navi"> <ul class="menu"> <li> <a href="#none">대학소개</a> <div class="sub-menu"> <a href="#none">총장인사말</a> <a href="#none">학교소개</a> <a href="#none">홍보관</a> <a href="#none">캠퍼스안내</a> </div> </li> <li> <a href="#none">입학안내</a> <div class="sub-menu"> <a href="#none">수시모집</a> <a href="#none">정시모집</a> <a href="#none">편입학</a> <a href="#none">재외국민</a> </div> </li> <li> <a href="#none">정보서비스</a> <div class="sub-menu"> <a href="#none">대학정보알림</a> <a href="#none">정보공개</a> <a href="#none">정보서비스안내</a> </div> </li> <li> <a href="#none">커뮤니티</a> <div class="sub-menu"> <a href="#none">공지사항</a> <a href="#none">참여게시판</a> <a href="#none">자료실</a> </div> </li> </ul> <div class="sub-back"></div> </div> </header> </div> <div class="content-inner"> <div class="slide"> <div> <a href="#none"><img src="images/slide-b4-01.jpg" alt="slide1"></a> <a href="#none"><img src="images/slide-b4-02.jpg" alt="slide2"></a> <a href="#none"><img src="images/slide-b4-03.jpg" alt="slide3"></a> </div> </div> <div class="items"> <div class="news"> <div class="tab-inner"> <div class="btn"> <span>공지사항</span> </div> <div class="tab1"> <a href="#none">산업대학교 동문회장배 자선골프대회<b>2016-09-12</b></a> <a href="#none">개교 100주년 기념 야외 오페라 초청<b>2016-09-10</b></a> <a href="#none">동문회장 및 운영위원장 후보자 추천<b>2016-09-09</b></a> <a href="#none">진행위원회(정회원) 선발 결과<b>2016-09-07</b></a> <a href="#none">산업대학교 동문회 개최일 변경<b>2016-08-30</b></a> </div> </div> </div> <div class="gallery"> <div class="tab-inner"> <div class="btn"> <span>갤러리</span> </div> <div class="tab2"> <a href="#none"><img src="images/gallery-b4-01.jpg" alt="gallery1"></a> <a href="#none"><img src="images/gallery-b4-02.jpg" alt="gallery2"></a> <a href="#none"><img src="images/gallery-b4-03.jpg" alt="gallery3"></a> </div> </div> </div> <div class="banner"> <a href="#none"><img src="images/banner-b4-01.jpg" alt="banner"></a> </div> </div> <div class="footer-inner"> <footer> <div class="copyright"> <div></div> <div></div> </div> <div class="family-site"> <select> <option value=""></option> <option value=""></option> <option value=""></option> <option value=""></option> </select> </div> </footer> </div> </div> </div> <script src="script/jquery-1.12.4.js"></script> <script src="script/custom.js"></script> </body> </html> @charset "utf-8"; body { margin: 0; background-color: #fff; color: #333333; font-size: 15px; } a { color: #333333; text-decoration: none; } .container {} .header-inner { border: 1px solid red; } header { width: 1200px; margin: auto; height: 100px; position: relative; z-index: 10; } header div { /* border: 1px solid yellowgreen; */ height: 100px; } .header-logo { width: 200px; float: left; line-height: 130px; } .navi { width: 600px; float: right; } .content-inner {} .slide { border: 1px solid green; width: 1200px; margin: auto; } .slide > div { height: 300px; } .items { /* border: 1px solid red; */ width: 1200px; margin: auto; overflow: hidden; margin-top: 20px; } .items > div { /* border: 1px solid pink; */ height: 200px; float: left; box-sizing: border-box; } .news { width: 425px; } .gallery { width: 425px; } .banner { width: 350px; } .footer-inner { border: 1px solid red; } footer { width: 1200px; margin: auto; overflow: hidden; } footer > div { border: 1px solid blue; height: 100px; float: left; box-sizing: border-box; } .copyright { width: 1000px; } .copyright div { border: 1px solid green; height: 50px; } .family-site { width: 200px; height: 100px; } /* slide */ .slide { width: 1200px; height: 300px; position: relative; overflow: hidden; } .slide > div { width: 3600px; font-size: 0; position: absolute; top: 0; left: 0; 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; } } /* Navigation */ .menu { list-style: none; padding: 0; padding-top: 55px; } .menu li { float: left; box-sizing: border-box; width: 25%; text-align: center; } .menu li > a { border: 1px solid #000; display: block; padding: 5px; transition: 0.5s; } .menu li:hover > a { background-color: #000; color: #fff; } .sub-menu { border: 1px solid #000; display: none; } .sub-menu a { color: #fff; display: block; padding: 5px; transition: 0.5s; } .sub-menu a:hover { background-color: #fff; color:#000; } .sub-back { background-color: #000; width: 1200px; height: 150px; position: absolute; left: 0; top: 100%; z-index: -1; display: none; } /* news & gallery */ .tab-inner { width: 95%; margin: auto; } .btn {} .btn span { border: 1px solid #000; width: 100px; display: inline-block; padding: 5px; background-color: #fff; text-align: center; border-radius: 5px 5px 0 0; border-bottom: none; margin-bottom: -2px; } .tab1, .tab2 { border: 1px solid #000; padding: 0 15px; height: 160px; } .tab1 a { display: block; padding: 5px; border-bottom: 1px solid #000; } .tab1 a:last-child { border-bottom: none; } .tab1 a b { float: right; font-weight: normal; } .tab2 { text-align: center; } .tab2 img { width: 120px; padding-top: 25px; } .banner img { width: 95%; } // Navigation $('.menu li').mouseenter(function(){ $('.sub menu').stop().slideDown() })
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
두번째식에서
sum+=i 는 왜 출력이 오류가나나요?? int를 꼭 씌워주어야하는 이유가 있나요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
SetCanvas의 gameObject 질문 있습니다
위 사진이 [UI_Button] 클래스에서 base.Init()을 실행 base.Init()은 아래 사진 [UI_Popup]클래스의 Init() {SetCanvas(gameObject)} 인데 base.Init()을 실행했을때 SetCanvas의 gameObject가 UI_Popup이 아니라 UI_Button이던데 그 이유를 알 수 있을까요? base.Init()은 UI_Popup에서 실행됐고 UI_Popup의 gameObject는 자기 자신 아닌가요?
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
수업노트의 경로(path) 설명 링크가 어디에 있나요?
웹 화면 구현하기-2 에서, 수업 노트의 경로(path) 설명 링크를 확인하라고 되어있는데 어디에 있는지 모르겠어요.!
-
해결됨팝스타 공식 뮤비 제작 & 유튜브 2천만 뷰 크리에이터의 애니메이트 X 이모티콘 클래스
애니메이트에서 작업한 벡터를 일러스트레이터로..
안녕하세요 선생님 일러스트레이터에서 작업한 벡터 이미지를 애니메이트로 복사 붙여넣기 하면 잘 되는데요. 반대로 애니메이트에서 작업한걸 일러스트레이터에 복사 붙여넣기 하면 픽셀 이미지로 됩니다. 애니메이트에서 작업한 벡터이미지 그대로 일러스트레이터로 가져올수 있는 방법은 없나요?
-
미해결
비주얼 스튜디오 2022 C#에 class 가 안보여요
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. static void main 도 없고 바로 코드입력인데 class 에 코드입력 하려면 어디서 해야하나요
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
포스트맨에서 문제가 생겼습니다. ㅠㅠ
공부를 하다가 문제가 생겼습니다. 포스트맨에서 status가 400이 발생이 되었는데요.. 그러다가 보니 따라 할 수 없습니다. ㅠㅠ 어떻게 해야할까요? { "error": { "name": "usageLimitError", "header": "Unable to find mock", "message": "Your team plan allows 1000 mock server calls per month. Contact your team Admin to up your limit." } } status: 429한도를 올리라고 하는데 어떻게 해야 하는지 모르겠어요!
-
미해결모두를 위한 파이썬 : 필수 문법 배우기 Feat. 오픈소스 패키지 배포 (Inflearn Original)
ModuleNotFoundError: No module named 'PIL' 해결방법 문의드립니다.
오픈소스 참여-나만의 패지키 만들기(1) Chapter py_ad_4_2.py 파일에서 강의와 같은 코드 및 가상환경을 실행했음에도 불구하고 아래 사진처럼 가상환경에서 pip install image를 칠경우 에러가 뜨며, 코드 실행시 ModuleNotFoundError: No module named 'PIL'이라고 나옵니다. 어떻게 해결가능할까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
빌드하고 실행하기 관련 질문드립니다 (실무에서의 운영환경)
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용] 빌드하고 실행하기 강좌에서 제PC로 만든 결과물을 그냥 jar로 만들어서 그 jar를 그냥 실행해서 tomcat실행후 간단한 서비스를 할 수 있음을 배웠습니다. 스프링 개발환경 구축시 tomcat이 자동으로 설치되니 따로 설치가 없다는 것이 매우 편리했는데요 실무환경.. 즉 개인PC에서 개발후 클라우드나 아니면 자체리눅스서버가 있는 경우, 그 서버에도 tomcat등의 설치필요없이 단지 JDK만 설치하고 개발자가 만든 jar를 올려서 외부사용자 서비스까지 이어지고 있는지 궁금합니다. 즉, 빌드하고 실행하기가.. 이런 방법으로도 가능하다를 가르쳐주신건지, 실무에서도 jar만 올리는 방식으로 운영하는지 실무계시는 분들 답변 부탁드립니다. 감사합니다^^
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
efficientdet 학습시 'numpy.float64' object cannot be interpreted as an integer 오류
이포크 5번 수행하고 validation 결과 출력시 오류가 나옵니다. 해결방법이 궁금합니다.
-
미해결프론트엔드 개발환경의 이해와 실습 (webpack, babel, eslint..)
webpack 5에서 before 함수 안되시는분들 onBeforeSetupMiddleware로 변경됨
before함수 에러 나시는분들 업그레이드 되면서 onBeforeSetupMiddleware로 변경되었습니다. 참고하세요
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
output.pos += offset0; 에서 vec4가 vec3로 바뀐건가요?
t.offset = Vec4(0.75f, 0.f, 0.f, 0.f); 셰에더에서 pos는 vec3이고 offset0은 vec4 인데 자동으로 vec4가 vec3로 변환되어서 계산 되었다고 볼 수 있는 거죠??
-
미해결Vue로 Nodebird SNS 만들기
nuext.config.js 파일에 달라진 부분 질문드립니다.
@nuxtjs/axios 같은 경우엔 nuxt.config.js 파일에 moudles에 작성하고, @nuxtjs/vuetify 같은 경우엔 buildModules에 작성을하는데 각각 다른 부분에서 참조를 걸어주는 이유는 무엇인가요? (설치하는 부분에서 막혀서 한참을 찾아보다가 기존의 강의와 제로초님 깃헙의 소스와 다르다는 사실을 알고 고쳤네요.. 이부분은 따로 고지가 필요할 것 같습니다.)
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
Test 전체 실행에서 고객 중복 오류설명관련 문의드립니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]save를 통해서 저장할때 MemoryMemberRepository에서 ++sequence를 통해서 자체 id로 구분되어 저장되게 되어 있는데 왜 findByName()과 findAll()의 테스트에서 spirng1, spring2가 중복으로 오류가 나는건가요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
selectbox 질문드립니다.
강의 들으면서 프로젝트 간단한거 진행중인데요 여기다 질문을 올려도 되는지 잘 모르겠지만;;; 물어볼곳이 없어서요 <div class="container"> <label>수취국가: </label> <select name="countryCode" th:onchange="|location.href='@{/exchange-rate/{code}(code=${code})}'|"> <option th:each="code : ${T(toyproject.exchangerate.data.CountryCode).values()}" th:value="${code}" th:text="${code.displayCountryCode}" ></option> </select></div> selectbox 에서 선택을 변경할때마다 href 를 사용해서 선택된 값을 pathvariable 방식으로 넘기고 싶은데 방법이 없을까요?
-
미해결
selectbox 관련 질문입니다.
강의 들으면서 프로젝트 간단한거 진행중인데요 여기다 질문을 올려도 되는지 잘 모르겠지만;;; 물어볼곳이 없어서요 <div class="container"> <label>수취국가: </label> <select name="countryCode" th:onchange="|location.href='@{/exchange-rate/{code}(code=${code})}'|"> <option th:each="code : ${T(toyproject.exchangerate.data.CountryCode).values()}" th:value="${code}" th:text="${code.displayCountryCode}" ></option> </select></div> selectbox 에서 선택을 변경할때마다 href 를 사용해서 선택된 값을 pathvariable 방식으로 넘기고 싶은데 방법이 없을까요?
-
미해결팀 개발을 위한 Git, GitHub 입문
선생님, 질문이 있습니다.
선생님 안녕하세요:) 만약 Boxiting-cat이 강의 내용 처럼 Boxiting repository에 대한 push 를 할 수 있는 폴더인데 Boxing-oct가 로컬에서 먼저 생성되고, 그 안에 이미 파일이 여러가지가 존재한 다음에 git clone을 하게 되면 destination '.' is already exist ~ 이런 오류가 나오게 되는데요이 경우에는 먼저 clone을 한 뒤에 파일을 생성해야지 되는 것인가요? 정리를 하자면1. 선로컬파일생성 -> 후클론 은 안되고 2. 선클론 -> 후로컬파일생성 이 되어야 하는 것인가요? 감사합니다.