묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 시큐리티
PSQLExeption 오류 나는데요 ?
처음 설치하면서 계정 생성하고 암호 입력하면 자동으로 db 생성 되지 않나요 ? 계정 ,비번 문제도 아닌거 같고, 폰트가 깨지는 거 보니 인코딩 문제일 수도 있겠는데 ...? 검색해도 안나오네요 ㅠ Postgres는 최신형입니다. -------------------------------------------------------- org.postgresql.util.PSQLException: Ä¡¸íÀû¿À·ù: "springboot" µ¥ÀÌÅͺ£À̽º ¾øÀ½ (pgjdbc: autodetected server-encoding to be ISO-8859-1, if the message is not readable, please check database logs and/or host, port, dbname, user, password, pg_hba.conf) at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2497) ~[postgresql-42.2.8.jar:42.2.8] at org.postgresql.core.v3.QueryExecutorImpl.readStartupMessages(QueryExecutorImpl.java:2618) ~[postgresql-42.2.8.jar:42.2.8] at org.postgresql.core.v3.QueryExecutorImpl.<init>(QueryExecutorImpl.java:135) ~[postgresql-42.2.8.jar:42.2.8] at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:250) ~[postgresql-42.2.8.jar:42.2.8] at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:49) ~[postgresql-42.2.8.jar:42.2.8] at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:195) ~[postgresql-42.2.8.jar:42.2.8] at org.postgresql.Driver.makeConnection(Driver.java:458) ~[postgresql-42.2.8.jar:42.2.8] at org.postgresql.Driver.connect(Driver.java:260) ~[postgresql-42.2.8.jar:42.2.8] at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[HikariCP-3.4.1.jar:na] at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:353) ~[HikariCP-3.4.1.jar:na] at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:201) ~[HikariCP-3.4.1.jar:na] at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:473) ~[HikariCP-3.4.1.jar:na] at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:562) ~[HikariCP-3.4.1.jar:na] at com.zaxxer.hikari.pool.HikariPool.<init>(HikariPool.java:115) ~[HikariCP-3.4.1.jar:na] at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) ~[HikariCP-3.4.1.jar:na]
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
강의중에 실무에 대한 궁금중이 있어서 질문합니다.
강의중에서 SimpleOrderDto 클래스 생성자에 인자로 entity를 받는데 중요하지 않은곳에서 중요한것을 받는건 상관 없다고 하셨는데..! 영한님도 실무에서 dto 생성자에 entity를 직접 받아서 사용하시나요??? 될수있으면 엔티티로 받지 말고 값을로 받아서 채우던가 , 다른 클래스(dto) 변환 해서 넘기는게 좋다는 이야기를 들은적이 있어서요 예를들어 public class CommonWrapper { @Getter public static class SelectMember { private Long id; private String writer; private String contents; private String mention; private SelectMember(Long id, String writer, String contents, String mention) { this.id = id; this.writer = writer; this.contents = contents; this.mention = mention; } public static SelectMember from (Member member) { return new SelectMember(member.getId(), member.getWriter(), member.getContents(),member.getMention()); } } 궁금해서 여쭈어봅니다!!
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
dto entity 변환은 어느 곳이 적절할까요?
1) dto -> entity 2) entity -> dto 각각의 변환은 어디가 적절할까요? 1번 2번 둘 다 controller 혹은 service 에서 하게 되는데 사람마다 스타일이 각각 다른 것 같습니다 영한님이 프로젝트에서 사용하시는 방법이 궁금합니다 (그리고 그것이 개인적으로 선호하는 방법인지도 알고 싶습니다 선호하는 것과 실제 프로젝트에서 사용하기 모호한 부분이 있을 수도 있기에 추가로 질문 드립니다) 영한님이 사용하시는 방법에 대한 이유도 알 수 있었으면 합니다 감사합니다
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
PC-IP 적용 후, Gateway 경유 GET/POST `/users` - 접근 시 모두 Access Denied 가 뜨는 원인을 알 수 있을까요?
몇번씩 강의를 돌려봐도 틀린곳이 보이질 않아서 여러 테스트를 해보았습니다. PC할당IP >>> MSA 직접 접근 시에는, 잘 작동하였는데 반해,Gateway 경유(localhost) 시, `/welcome` `health_check` `users` GET/POST 모두 차단 되더라구요.학습진행이 어렵게 되어 버렸어요..ㅠㅠㅠ. 강사님.고민끝에 유추되는 원인인데요,Gateway 서버의 IP 주소가 문제가 되어 이런현상이 생긴걸까요? MSA(user-service) 는 PC-IP 를 통한 접근만 허용할 것이고, Gateway 를 통한 접근 IP 는 localhost( 127.0.0.1) 로 되어있으니, MSA 는 Gateway 로 부터 오는 요청은 WebSecurity 설정으로 인해 차단된다 혹시 이런 논리일까요? 또는 이런 방식도 유추됩니다. .hasIpAddress("IP") 에 허용 IP 를 늘린다 혹시 몰라 프로젝트 압축파일 링크를 달았습니다 Link: `Users MicroService - Routes 테스트 까지 실습진행예제` 읽어주셔서 감사합니다.
-
해결됨실전! 스프링 데이터 JPA
질문 드립니다.
안녕하세요 강사님 업무를 하다가.. 궁금한 부분이 있어서 질문을 남기게 되었습니다. 질문드립니다. 질문1 Repository에서 @Query 어노테이션을 사용해서 nativeQuery = true 옵션을 주고 Entity 객체로 값을 반환을 받는데 네이티브 쿼리에서 추가한 연산한값 또는 rownum 같은 값을 Entity 객체로 받을수 있을까요? 구글링을 해보니까 안된다고 하는것 같아서요 Entity 객체에 @Transient 애노테이션을 붙여서 필드를 생성해 놓았지만 해당 애노테이션은 엔티티를 만들때 컬럼을 생성하지 않는 역할이라서 역시 안될것 같았지만 역시나 안되네요 혹시 다른 방법이 있을까 해서 질문 남깁니다 질문2 Spring Data Slice를 사용해서 페이징을 구현하려고 하는대요 커서의 개념으로 조회를 하려고 합니다. 그래서 PageRequest.of(0,3)으로 고정 해 놓고 id 값을 기준으로 3개씩 조회를 하려고 하였는데 (id < 입력 값) order by 정렬 기준으로 id를 사용할수가 없는 경우에는 혹시 다른 방법이 있을까요? (순차적으로 id 값이 정렬되어 있지 않은 경우) 그래서 rownum을 사용해서 조회를 하였는데 Entity 객체로 rownum이 반환이 안되더라구요;; 읽어 주셔서 감사합니다^^ Projections 이건 지금 처음 보았는데 안되면 Projections 고려해 바야겠습니다^^ 감사합니다.
-
미해결스프링 시큐리티
ConcurrentSessionControlAuthenticationStrategy 질문입니다!
현재 Ajax 방식 로그인을 위해 해당 강의에서 나온 방식으로 AbstractAuthenticationProcessingFilter를 상속받아 Filter를 커스텀하여 로그인 기능이 구현되어있습니다. 이후 동시세션 제어를 위해 securityConfig에서 아래 코드를 적용하였지만 http .sessionManagement() .maximumSessions(1); AuthenticationProcessingFilter를 커스텀하여 ConcurrentSessionControlAuthenticationStrategy이 적용되지 않는것 같은데 적용하는 방법을 알 수 있을까요?!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
getter setter 질문 드립니다.
static class Hello { private String name2; public String getName() { return name2; } public void setName(String name2) { this.name2 = name2; }}이렇게 변수 이름을 name2로 바꿔줘도 json으로 바뀌면 키 값이 name인데 이유가 뭔가요? 그런데 get, set 메서드 이름에도 2(getName2, setName2)를 붙여주면 키 값이 name2로 잘 나옵니다 이렇게 동작하는 이유가 뭔가요?
-
해결됨실전! 스프링 데이터 JPA
em.flush() 궁금한 게 있습니다.
12분 쯤 벌크연산에서 flush()를 날린 뒤에 벌크연산을 수행하니 db에는 41살, 영속성 컨텍스트에는 40살인 채로 남고 그 상태에서 명시적으로 em.flush()를 날리면 db에 40살이 찍히리라 예상 했는데... flush()할 때 단순히 DB와 동기화하는 게 아니라 변경 감지를 통해 쓰기 지연된 부분만 내보내는 것으로 이해했는데 비슷한가요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
강사님 QueryDSL이 안됩니다..
안녕하세요. 강사님 https://www.inflearn.com/questions/149157 여기 글이랑 같은 오류인데 강사님이 알려주신 링크 들어가니까 권한이 없다고 나오는데.. 방법을 모르겠습니다. ㅜ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
HelloSpringApplication 메인 메서드 동작시킬때
HelloSpringApplication 메인 메서드 동작시킬때, application이 실행되면서 서버가 도는 것 같습니다. 궁금한 점이 이때, 작성해둔 모든 컨트롤러, 서비스, 레파지토리, 도메인 등이 같이 가동되는 것인지 궁금합니다. 그리고 컨트롤러가 여러개 있으면 @Controller로 기재된 모든 컨트롤러가 MemberService, MemberRepository 또는 더 나아가 모든 서비스와 레파지토리와 연결되는건가요? 왜냐하면 10분에 나오는 영상에 helloController와 연결된 그림이 있습니다. MemberController와 연결 시켜주는 과정인줄 알았는데 helloController가 그림에 있길래 모든 Controller가 @Service라고 기재된 것과 연결된 것인지 궁금합니다. 사실 더 나아가 service와 repository도 전부 서로서로 연결되는 구조인지 궁금합니다..
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
mappedBy와 cascade를 함께 썼을 때
mappedBy로 설정된 컬렉션은 읽기만 가능한 줄 알고 있어서 cascade가 적용이 안되는 게 아닌가..? 싶었는데 컬렉션에 엔티티를 추가할 경우 엔티티도 영속화 해주지만 그 엔티티의 FK 값은 반영이 안되는 것 같은데 제가 제대로 이해한 게 맞을까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
"mvn spring-boot:run"은 구동에 문제없는데, 옵션을 주면 Build Fail 나는 원인을 알 수 있을까요?
알찬 강의 감사드립니다.초장에 막히는 부분이 있어 질문드려보아요. "mvn spring-boot:run"은 구동에 문제없는데, 옵션을 주면 Build Fail 나는 원인을 알 수 있을까요? > mvn spring-boot:run -Dspring-boot.run.jvmArguments='-Dserver.port=9003'[INFO] Scanning for projects...[INFO][INFO] ----------------------< com.example:user-service >----------------------[INFO] Building user-service 0.0.1-SNAPSHOT[INFO] --------------------------------[ jar ]---------------------------------[INFO] ------------------------------------------------------------------------[INFO] BUILD FAILURE[INFO] ------------------------------------------------------------------------[INFO] Total time: 0.296 s[INFO] Finished at: 2021-05-22T20:43:08+09:00[INFO] ------------------------------------------------------------------------[ERROR] Unknown lifecycle phase ".run.jvmArguments=-Dserver.port=9003". You must specify a valid lifecycle phase or a goal in the fo rmat <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are: val idate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test -sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-p ackage, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clea n, pre-site, site, post-site, site-deploy. -> [Help 1][ERROR][ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.[ERROR] Re-run Maven using the -X switch to enable full debug logging.[ERROR][ERROR] For more information about the errors and possible solutions, please read the following articles:[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/LifecyclePhaseNotFoundException 혹시몰라서인텔리제이 Maven 설정 캡쳐 받아보았습니다.
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
컬렉션에 대한 fetch join은 1개만 사용해야 한다에 대한 질문
안녕하세요 영한님. 간단한 질문을 드리고 싶어서 글 남기게 되었습니다. 강의 마지막에 "컬렉션(일대다 관계)에 대한 fetch join은 1개만 사용해야 한다. 2개 이상 붙이면 일대 다대 다 형태가 되어버리기 때문에... " 라고 설명해주셨습니다. 여기서 2개 이상 사용하는 케이스는 아래 두 케이스를 모두 포함하는 것인지 궁금합니다 :) - Order 클래스 내부에 일대다 관계에 대한 필드가 2개인 경우 - Order 클래스 내부에 일대다 관계에 대한 필드가 1개고, 그 필드의 객체 내부에 일대다 관계에 있는 필드가 존재하는 경우 문득 생긴 고민이라 적절한 예시가 생각나지 않네요ㅠㅠ 감사합니다!
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
RemoveRequestHeader 이유
안녕하세요 1. RemoveRequestHeader 를 쓰는 이유가 매번 새롭게 요청받기 위함이라고 하셨는데, 매번 새롭게 요청받아야하는 이유가 무엇일까요? 2. 또한 만약 RemoveRequestHeader 가 존재하지 않는다면 어떻게 될까요? 3. Front 에서 Refresh_token을 httpOnly cookie에 담아서 보내는데 이 경우에는 RemoveRequestHeader 를 사용하지 않고싶다면 쓰지 않아도 될까요? 그로 인해서 발생하는 문제는 무엇일까요?
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
jwt 토큰은 보통 어디에서 보관을 하나요?
안녕하세요 강의 재밌게 보고 있습니다. 제가 프론트엔드에는 무지하여 잘 모르겠는데 jwt 를 서버에서 반환해주면 프론트에서는 일반적으로 어디에 저장을 하다가 요청 보낼때 마다 재사용하나요? 로컬 스토리지나 쿠키 정도 밖에 떠오르는게 없는데 프론트엔드 현업에서 자주 사용하는 방식이 있나요?
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
gradlew dependencies
안녕하세요. 저는 windows10 사용자입니다.아래와 같이 인텔리제이 터미널 로컬에 입력하면 실패한다고 뜹니다.C:\study\jpashop>gradlew dependencies FAILURE: Build failed with an exception. * Where: Build file 'C:\study\jpashop\build.gradle' line: 39 * What went wrong: A problem occurred evaluating root project 'jpashop'. > Could not find method testImplementation() for arguments [org.junit.vintage:junit-vintage-engine, build_c5fjxfeq8g2hpdi6kd0zeexhk$_run_closure5@1757541f] on root project 'jpashop' o f type org.gradle.api.Project. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 1s =========================================다음은 환경정보입니다. C:\study\jpashop>gradlew -version ------------------------------------------------------------ Gradle 6.8.3 ------------------------------------------------------------ Build time: 2021-02-22 16:13:28 UTC Revision: 9e26b4a9ebb910eaa1b8da8ff8575e514bc61c78 Kotlin: 1.4.20 Groovy: 2.5.12 Ant: Apache Ant(TM) version 1.10.9 compiled on September 27 2020 JVM: 11.0.11 (Oracle Corporation 11.0.11+9-LTS-194) OS: Windows 10 10.0 amd64
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
8:30 ~8:36 IDENTITY 질문이있습니다.
13:30~13:36 select m from member m 여기서 select m 저 m자체가 where Member m 의 m호칭 똑같은건가요? 만약 select c from member c 이런식으로도 쓰일수 있는건가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
로그 글씨 색깔
빌드해서 실행해봤을 때 아래 로그 색깔이 저는 전부 검은색인데 강사님 화면은 색깔이 다 들어가있어서 질문 드립니다. 따로 설정이나 설치해야 하는 플러그인이 더 있는건가요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
안녕하세요 질문 드립니다. org.gradle.api.GradleScriptException: A problem occurred evaluating root project 에러가 발생합니다..
마지막 강의에서 queryDsl 설정을 적용했을때 .. 이런 에러가 발생합니다.. 제가 git에서 프로젝트를 올려놓고 프로젝트를 여러환경에서 받아서 그런게 아닐까 생각은 하는데 .. 어떻게 해결을 하면 좋을까요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
insert 쿼리가 log에 안찍혀요!
test를 실행할 때 insert 로그가 안찍혀요... @Rollback(false)를 설정 했을때는 찍힙니다. @Rollback(false)를 설정하지 않아도 찍히게 하고싶은데 어떻게 해야하나요!?? yml 복붙해서 넣어드립니다... spring: datasource: url: jdbc:h2:tcp://localhost/~/jpashop username: sa password: driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: create properties: hibernate: format_sql: truelogging.level: org.hibernate.SQL: debug org.hibernate.type: trace