묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 오류가 안 뜨고 정상작동합니다
강의 8분 52초경에 findById 쿼리문 옆에 id를 입력하지 않아서 오류가 떠야하는데 저는 통합테스트를 똑같이 돌렸는데도 그냥 진행이 됩니다 왜 저는 오류가 안 뜰까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
26강 오류 질문
26강까지 내용을 모두 따라하고 실행하니 다음과 같은 오류가 뜹니다j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]o.s.boot.SpringApplication : Application run failed yml 설정도 잘 하고 mySql 버전도 맞는데 왜 오류가 날까요? ㅜㅜ
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
Kotlin: Unresolved reference: MappedSuperclass
실습 2 클래스 생성 3분 에아래 코드를 작성했는데@MappedSuperclassKotlin: Unresolved reference: MappedSuperclass오류가 떠요 "persistence" 이것도 안보여요import jakarta.persistence.MappedSuperclass build.gradle.kts 의존성은 아래처럼 되어 있어요 plugins { id("org.springframework.boot") version "3.2.3" id("io.spring.dependency-management") version "1.1.4" kotlin("jvm") version "1.9.22" kotlin("plugin.spring") version "1.9.22" } dependencies { implementation("org.springframework.boot:spring-boot-starter-thymeleaf") implementation("org.springframework.boot:spring-boot-starter-validation") implementation("org.springframework.boot:spring-boot-starter-web") implementation("com.fasterxml.jackson.module:jackson-module-kotlin") implementation("org.jetbrains.kotlin:kotlin-reflect") runtimeOnly("com.h2database:h2") runtimeOnly("com.mysql:mysql-connector-j") testImplementation("org.springframework.boot:spring-boot-starter-test") } 깃은https://github.com/justkjy/portfolio-justkim 입니다. 왜 못찾는다고 할까요? 추가 왜 JPA 관련 에러가 계속 나는걸까요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
id가 +1씩 증가 안하고 갑자기 34 35 로 뛰는 현상
이전 강의 따라 진행할때도 id가 1, 2, 34 이렇게 숫자가 갑자기 증가해서 실수한 줄 알고 테이블 드랍 후 진행했었는데 다음 강의 따라 진행하는 과정에서도 이 문제가 발생합니다! 이번 강의에서는 delete from member 로 테이블 데이터를 날리기 전부터 이 문제가 발생했고 무시하고 진행한 후 테스트하는 과정에서도 이렇게 숫자가 급격하게 증가해버리네요...어떤 부분에서 문제가 생긴걸까요...?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
생성 메서드 질문드립니다.
오늘 고민있어요부터 질문이 벌써 세 번째네요 ^^; 항상 친절히 답변주셔서 감사합니다. 강의에서 말씀하신 '생성 메서드'가 JPA 기본편의 '연관관계 편의 메서드' 같다는 생각이 듭니다. 물론 연관관계 편의 메서드처럼 하나의 메서드로 양방향 setter 역할을 해주는 건 아니지만, 좀 유사점이 있다고 보이는데 맞을까요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Order 테이블의 '전체 주문 가격 조회' 메서드의 위치
전체 주문 가격을 조회하는 메서드(getTotalPrice)가 Order 클래스에 위치하고 있습니다. 그런데 주문 상품과 그 수량에 대한 정보는 OrderItem에 있습니다. 따라서 해당 엔티티에 전체 주문 가격을 조회하는 로직이 있어야 자연스러울 것 같은데 강의에서는 Order에 위치하고 있습니다. 전체 주문 가격을 조회하는 메서드가 둘 중 어디에 있어도 상관 없는건가요, 아니면 강의에서처럼 Order 클래스에 있어야만 하는데 제가 놓친 것이 있을까요?
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
springSecurity
이미 질문남기신 분들이 많기에 해당 코드들을 따라서 실행하려고 해 보았으나 스프링 시큐리티 버젼이 올라감에 따라 새롭게 코드를 작성을 해보기 위해 문서를 참고해서 수정을 했습니다만 접속을 하려고 보니 HTTP ERROR 403 에러가 뜨면서 localhost접근이 막히더군요 혹시 고쳐야할 부분이 있을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원웹기능-홈/ Process finished with exit code 1
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]home.html까지 만들고 run을 했는데Action:Consider defining a bean of type 'hello.hellospring.domain.Member' in your configuration.Process finished with exit code 1 이런 오류가 뜹니다.domain.Member는 package hello.hellospring.domain; public class Member { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }입니다.
-
미해결실전! 스프링 데이터 JPA
JpaMetamodelEntityInformation 내부의 isNew 메서드에서 조건 분기 시 다음 조건은 무엇을 의미하나요?
public boolean isNew(T entity) { if (!this.versionAttribute.isEmpty() && !(Boolean)this.versionAttribute.map(Attribute::getJavaType).map(Class::isPrimitive).orElse(false)) { BeanWrapper wrapper = new DirectFieldAccessFallbackBeanWrapper(entity); return (Boolean)this.versionAttribute.map((it) -> { return wrapper.getPropertyValue(it.getName()) == null; }).orElse(true); } else { return super.isNew(entity); } } 조건문을 타지 않고 else 절로 넘어가면 super.isNew()를 호출하고, 상위 추상 클래스인 AbstractEntityInformation 클래스의 isNew() 메서드에서 Entity id 필드가 Null, 0L인지 판단하는 걸로 이해했습니다.강의 범위가 아니긴 하지만 JpaMetamodelEntityInformation 클래스의 isNew() 내에서 versionAttribute가 존재하는지 확인하는 부분은 어떤 것을 확인하는 것인지 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
h2 초기 실행 문제
The Web Console server could not be started. Possible cause: another server is already running at http://192.168.0.25:8082Root cause: Exception opening port "8082" (port may be in use), cause: "java.net.BindException: Address already in use: bind" [90061-224]Exception in thread "main" org.h2.jdbc.JdbcSQLNonTransientConnectionException: Exception opening port "8082" (port may be in use), cause: "java.net.BindException: Address already in use: bind" [90061-224]at org.h2.message.DbException.getJdbcSQLException(DbException.java:690)at org.h2.message.DbException.getJdbcSQLException(DbException.java:489)at org.h2.message.DbException.get(DbException.java:212)at org.h2.util.NetUtils.createServerSocketTry(NetUtils.java:211)at org.h2.util.NetUtils.createServerSocket(NetUtils.java:177)at org.h2.server.web.WebServer.start(WebServer.java:412)at org.h2.tools.Server.start(Server.java:548)at org.h2.tools.Console.runTool(Console.java:216)at org.h2.tools.Console.main(Console.java:72)Caused by: java.net.BindException: Address already in use: bindat java.base/sun.nio.ch.Net.bind0(Native Method)at java.base/sun.nio.ch.Net.bind(Net.java:565)at java.base/sun.nio.ch.Net.bind(Net.java:554)at java.base/sun.nio.ch.NioSocketImpl.bind(NioSocketImpl.java:636)at java.base/java.net.ServerSocket.bind(ServerSocket.java:391)at java.base/java.net.ServerSocket.<init>(ServerSocket.java:278)at java.base/java.net.ServerSocket.<init>(ServerSocket.java:171)at org.h2.util.NetUtils.createServerSocketTry(NetUtils.java:207)... 5 morecmd 에서 h2.bat 실행 시 이렇게 포트가 이미 사용중이라고 뜨는데요 포트 번호 바꿔서 사용해도 될까요? 8083 같은거로요!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
값을 안넘겨주면 똑같이 저도 에러가 나긴 하는데 왜 콘솔창에는 warn이 안뜰까요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]강의에서는 warn이 뜨고 name이 없다라는 콘솔문구가 뜨는데 저는 창을 들어가보면 에러는 똑같이 나는데 warn이 안뜨네여..
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
마지막 챕터 질문입니다.
홈 화면과 레이아웃14분에서 resource를 싱크로 나이즈 하는 장면이 나오는데 제화면에서 그버튼이 없는데 혹시 버전이 상승되서 없어진건가요?bootstrap.css 이 파일에서 Cannot resolve '--bs-icon-link-transform' custom property 이렇게 빨간 줄 뜨는데 어떻게 해야 하나요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
애플리케이션 아키텍처의 참조에 대한 궁금증
안녕하세요, 강의 잘 듣고 있습니다. 다름이 아니라 '애플리케이션 아키텍처' 강의를 듣다가 평소에 별 의식없이 해왔던 계층(컨트롤러, 서비스, 리포지토리)간 참조에 대해 궁금증이 생겨 질문드립니다. 일반적인 설계방식인 컨트롤러, 서비스, 리포지토리 계층으로 이어지는 아키텍처는 단방향으로 참조하는 것이 바람직한가요?컨트롤러 -> 서비스 -> 리포지토리 // 단방향으로만 참조하도록 해야하나요
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
수업시간에 선생님께서 보시는 베어 정리본은 어디서 볼 수 있나요?
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]수업시간에 선생님께서 보시는 베어 정리본은 어디서 볼 수 있나요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
플러그인을 찾을수 없다고 나옵니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]start.spring.io 에서 강의 와 다른 스프링부트 버전 3.2.3 으로 했고 packaging = jar ,java 버전 21 로 설정을 했습니다.인텔리 제이에서 실행 결과 id 'org.springframework.boot' version '3.2.3' id 'io.spring.dependency-management' version '1.1.4'두개의 플러그인을 찾을수 없다고 뜨는데 무슨 문제 일까요?
-
미해결스프링 시큐리티 OAuth2
granttype password
안녕하세요.password grant type 으로 인증서버를 구현하고 싶은데oauth2 authorization server 최신 버전인 1.1.5 에서는 deprecated 되어있어서 영상과 같이 0.3.1 버전으로 했는데 unsupported grant type 이라고 나옵니다.쓸 수 있는 방법이 있을까요? 다른 질문에서 답변으로 TokenEndpointConfigurer 에 있는 api 를 다루면 password 타입을 다룰 수 있다고 하신거같은데 맞을까요?!아니면 authorize_code 방식에서 로그인 페이지를 리다이렉트를 하지 않고 바로 처리할 수 있는 방법이 있을까요? 혹시 사내 서비스 여러개가 있을 때 로그인 기능만 빼서 로그인해주는 로그인 서버를 구축하려고 하는데 더 좋은 방법이있을까요? oauth2 방식 말구요!
-
미해결스프링 시큐리티 OAuth2
안녕하세요 강사님 질문 있습니다!
안녕하세요! 수업 강의 내용은 아니지만 연관이 있는 질문입니다! OAuth Client와 Resource server가 하나의 서버에 있어도 되나요?제가 토이 프로젝트를 구성하고 있습니다. 소셜 로그인 기능을 넣으려고 이것저것 설계하다 보니까 백엔드 서버에 OAuth2 Client와 Resource server 설정이 같이 있어야 하겠더라고요. Resource server 설정이 필요한 이유는, jwt 검증 때문입니다. 예를 들어 구글에서 발급받은 액세스 토큰을 프론트엔드로 반환해줄 거고, 프론트엔드(Nextjs)는 헤더에 access token과 함께 요청을 보내겠죠. 이때 백엔드 서버는 jwt 검증을 해야할 것입니다.수업에 이런 부분을 구두로 말씀하신 건 잘 모르겠는데, 저희 실습에서는 OAuth2 Client에서 Resource server로 요청해보는 건 있었지만 그 둘이 하나의 application.yml에 있는 실습을 하지 않았던 것 같아서요.chat gpt 유료 결제해서 쓰고 있어서 이 부분 가능하다고 답변을 듣긴 했는데 강사님이 맞다고 해주셔야 안심할 수 있을 것 같습니다. 만약..아니라고 하면 사실 많이 혼란스러울 것 같지만 간단한 가이드라도 부탁드려도 될까요..흐름이라도..문득 드는 생각은하나의 application.yml에 OAuth2 Client와 Resource 서버 설정을 다 넣는다OAuth2Client와 Resource 서버를 모듈을 분리한다. 이 경우에는 프론트에서 요청이 들어왔을 때 OAuth2 Client모듈이 Resource server 모듈에 자원을 요청한다(리소스 서버에서 검증까지) 둘 다 가능하다고 하면 지금 시간이 그리 여유있지 않아 1번으로 가고 싶긴 한데 이게 일반적인 방법인지 궁금합니다. p.s. 새로운 security 6 강의는 언제 올라오나요? 목이 빠졌습니다..ㅋㅋㅋ
-
미해결스프링 배치
예제소스가 전부 있는걸까요?
브런치가 몇개 중간에 비어있는거같은데 다른곳에서받는게있을까요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
OrderServiceTest에서 Rollback(false) annotation을 붙였을 때 에러가 나는 이유
[질문 내용]현재상황OrderServiceTest에서 상품주문()을 테스트 중입니다.테스트 중 에러가 나서 코드를 검토해보았는데,@Rollback(false) Annotation이 있었습니다.Rollback(false)자체가 테스트 결과에 직접적인 영향을 줄 수는 없다고 생각하여 무시했었습니다.그러나 Rollback(false) 어노테이션을 지웠더니 테스트가 정상적으로 작동하였습니다.궁금한 점구글링도 해보고, 강의도 다시 들어보았지만Rollback(false) 어노테이션이 상품주문 테스트 성공/실패에 어떠한 영향을 미치는지 궁금합니다.
-
미해결실전! 스프링 데이터 JPA
Merge 관련해서 질문드립니다.
안녕하세요 영한님, 정말 좋은강의 잘 듣고있습니다. Merge관련해서 질문이 하나있는데요..! 아래 두 method 모두 시작할때 persistence context가 비어있고 찾는 entity가 db에 있다고 가정할때 비슷한 (혹은 같은) flow로 진행될까요? 여기서 method parameter, Entity e,는 업데이트될 (id가 set되어있고 field가 업데이트 되어있는)객체입니다. @Transactional public void updateEntity(Entity e){ Entity foundEntity = em.find(Entity.class, e.getid()); foundEntity.setFieldOne("New Data"); }@Transactional public void updateEntity(Entity e){ em.merge(e); }Merge를 꼭 써야하는건 아니지만, 그냥 동작 메커니즘이 궁금해서 질문드립니다. Merge를 쓰는게 Update전에 항상 Select query로 db에서 객체를 조회하기때문에 쓰기를 지양하라고 하시는건가요, 아니면 merge를 쓸때 또 다른 downside가 있나요?