묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
[16강] 확장함수 관련 질문입니다!
안녕하세요 강사님 확장함수 관련하여 질문이 있습니다. 강의 중에 확장함수는 원본 클래스의 private, protected 멤버 접근이 안된다.라고 말씀해주신 부분이 있습니다. 제가 확장함수를 이해하기로는 특정 클래스에 내가 사용할 특정 로직을 심는 함수라고 이해를 했습니다. 이렇게 이해를 하고 나니어짜피 외부에서는 확장함수로 추가할 원본 클래스의 private 혹은 protected 멤버에 접근이 불가능할텐데,확장함수는 원본 클래스의 private, protected 멤버 접근이 안된다. 내용은 어디에 어떻게 적용이 되는 것인지 이해가 잘 가지 않습니다. 혹시 어떠한 경우에 적용이 되는 내용인지 조금 더 구체적인 예시를 들어주실 수 있으실까요 ?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
22강 다차원 배열과 문자열 배열 j=0으로 선언되는 사유
22강 다차원 배열과 문자열 배열 j=0으로 선언되는 사유가 궁금합니다. 04:38 에 for 문 2개인데 첫번째 for문 탈출 후에두번째 for 문에서 j=2 상태에서 위 for문으로 올라갈때 j가 다시 j=0으로 선언되는 사유가 궁금합니다.
-
미해결스프링 시큐리티
메인 페이지로 접속해도 login url로 리다이렉트가 되지 않습니다..
@Configuration @EnableWebSecurity public class SecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.authorizeRequests() .antMatchers("/user").hasRole("USER") .anyRequest().permitAll(); http.formLogin(); } }@RestController public class SecurityController { @GetMapping("/") public String index() { return "home"; } @GetMapping("/user") public String user() { return "user"; } }
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
명령프롬프트 gradle builder 실행
경로 찾아서 gradle builder 하니 오류가 뜹니다.gradle clean builder 로 해도 오류가 뜨네요. 자바 경로를 찾을 수 없다고 뜨는 것 같은데...
-
미해결
spring-data-jpa 연습 중 순환참조 오류가 발생했습니다.
안녕하세요. 최근 spring-data-jpa 를 공부하다 이상한 순환 참조 오류를 발견했습니다.그런데 도통 납득이 되지 않아 여쭤보고자 질문 드립니다.spring-data-jpa 를 사용하기 전, 저는 주로 MyBatis 를 아래처럼 주로 사용했습니다.// 주로 mybatis interface 인 mapper 를 먼저 선언하고 @Mapper public interface MyBatisMapper {/* ... */} /* ------------ */ // DAO 객체에 주입해 사용하는 형태로 사용했습니다. @Repository public class MyBatisRepo { private final MyBatisMapper mapper; public MyBatisRepo(MyBatisMapper mapper) { this.mapper = mapper; } /* 생략 */ }그래서 JPA 에서도 이처럼 사용해 볼까 하는 마음에 연습하던 중, 순환참조 오류가 발생하였습니다. 아래는 spring-data-jpa 에서 오류가 발생한 코드입니다.TestEntity : 연습용 엔티티@Entity public class TestEntity { @Id private Long id; }DAO 인터페이스 : repository 규약public interface TestRepo { // 연습용이라 텅 비어있습니다. }JPA 인터페이스public interface JPATestRepo extends JpaRepository<TestEntity, Long> { // 연습용이라 텅 비어있습니다. }Repository 구현체@Repository public class JPATestRepoImpl implements TestRepo { private final JPATestRepo jpaRepo; public JPATestRepoImpl(JPATestRepo jpaRepo) { this.jpaRepo = jpaRepo; } // 연습용이라 이후 아무 내용도 없습니다. }실행시 발생하는 에러2024-10-19T19:46:00.760+09:00 WARN 66384 --- [testing] [ main] s.c.a.AnnotationConfigApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'JPATestRepoImpl' defined in file [/~~~/Desktop/Coding/testing/build/classes/java/main/core/testing/JPATestRepoImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'JPATestRepoImpl': Requested bean is currently in creation: Is there an unresolvable circular reference? 2024-10-19T19:46:00.761+09:00 INFO 66384 --- [testing] [ main] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default' 2024-10-19T19:46:00.762+09:00 INFO 66384 --- [testing] [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2024-10-19T19:46:00.807+09:00 INFO 66384 --- [testing] [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed. 2024-10-19T19:46:00.811+09:00 INFO 66384 --- [testing] [ main] .s.b.a.l.ConditionEvaluationReportLogger : Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. 2024-10-19T19:46:00.825+09:00 ERROR 66384 --- [testing] [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAILED TO START *************************** Description: The dependencies of some of the beans in the application context form a cycle: ┌──->──┐ | JPATestRepoImpl defined in file [/~~~/Desktop/Coding/testing/build/classes/java/main/core/testing/JPATestRepoImpl.class] └──<-──┘ Action: Relying upon circular references is discouraged and they are prohibited by default. Update your application to remove the dependency cycle between beans. As a last resort, it may be possible to break the cycle automatically by setting spring.main.allow-circular-references to true. Process finished with exit code 1 콘솔 에러에 따르면 JPATestRepoImpl 가 자기 자신을 의존해 순환참조가 발생한다고 합니다.하지만 JPATestRepoImpl 는 (코드에서 볼 수 있듯이) JPATestRepo 를 주입받을 뿐, 자기자신을 의존하고 있지 않습니다. 게다가 더 혼란스러운 점은 만약 JPATestRepoImpl 의 이름을 다른 것으로 바꾸면 (예를 들어 TestRepoJPAImpl) 거짓말처럼 순환 참조 오류가 없어집니다. 제가 추측하기로는 스프링이나 JPA 가 bean 이름을 헷갈려 발생하는 오류 같은데, 이를 헷갈려 하는 이유를 도통 모르겠습니다.당연히 컴퓨터 재시작, 프로젝트 clean, rebuild, 프로젝트 재생성해 시도해봤지만 모두 같은 현상이 나타납니다. 도대체 어떤 이유 때문에 이런 현상이 일어나는 걸까요...?Github repo : https://github.com/jbw9964/testing
-
미해결스프링 시큐리티 OAuth2
인증을 세션이 아닌 jwt로 할 경우 질문입니다.
현재 oauth2Login api를 사용해서 사용자 로그인 인증에 성공하면 인증객체가 세션에 저장되고, 이후 인가서버에 code 요청시 OAuth2AuthorizationEndpointFilter 에서도 securityContext에 저장돼있는 인증객체로 인해 인증성공으로 판단후 code를 발급합니다. 근데 세션 기반이 아닌, jwt 토큰을 받아서 검증후 인증을 처리하는 로직이라면 jwt 토큰을 검증하는 필터인 resource Server api의 필터가 OAuth2AuthorizationEndpointFilter 보다 뒤에 있기 때문에 인증객체가 없어서 코드발급을 안해줄텐데 이럴땐 어떻게 해야하나요? jwt토큰을 검증하고 인증객체를 만드는 필터를 OAuth2AuthorizationEndpointFilter 앞에 만든다고 쳐도 그러면 resource Server api의 필터와 똑같이 동작하는 필터가 생기는건데 좋은 방법인것 같진 않습니다. 어떻게 해야 하나요?
-
미해결스프링 시큐리티 OAuth2
Resouce owner 인증 전 단계 질문입니다.
클라이언트가 인가서버에게 인가코드를 요청하기 전에 사용자인증을 받기 위해 사용자 id, 비밀번호를 입력하는 단계가 먼저 거치고, 인증이 되면 인가서버에게 /oauth2/authorize url로 response_type=code ~~ 이런식의 정보를 포함해서 요청하게 되는데 그러면 사용자가 인증받을때 입력한 사용자 id, 비밀번호를 통해 인증처리를 하는건 인가서버에서 하는게 아닌건가요? 인가서버에서 하는거라면 입력한 사용자 id, 비밀번호는 어떤 필터에서 처리하는건가요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
스캐너 사용하는 문제풀이중 에러코드
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]스캐너 사용한 여러 문제풀이시 전부 같은 에러코드로 컴파일이 되지 않는데요.강사님이 쓰신 코드와 완전히 같은데도 말이죠.어떻게 해결 하나요?
-
미해결Do it! 알고리즘 코딩테스트 with JAVA
2018 연속된 자연수의 합 구하기 백준 사이트에서 메모리 초과 오류가 발생합니다.
이유가 뭘까요 ....?import java.util.Scanner;class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int count = 1; int startIndex = 1; int endIndex = 1; int sum = 1; int n = sc.nextInt(); while(endIndex != n) { if(sum == n){ count++ ; endIndex++ ; sum = sum + endIndex; } else if(sum > n) { sum = sum - startIndex; startIndex++ ; } else { endIndex++ ; sum = sum + endIndex; } System.out.print(count); } }}
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
Java기출변형
29:30마지막 세줄 System.out.println(result(1);System.out.println(result(2);System.out.println(result(3);은 왜 출력안하나요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
3회 대비영상 2번째 동영상 질문있어요.
int arr[2] = {++a, b++} printf(a,b) printf(arr[0],arr[1]);배열안에는 왜 b++의 값이 6으로 출력되지 않는가요? 배열에서 후위 연산자가 적용이 안된다고 보면 되는것일까요? (설명하신대로 배열에 적용 후 +1이 되기때문에 미적용?) 왜 자식클래스의 sharedMethod 호출됨이 출력되지..? 오류가 나야하는게 아닌가..? 10분동안 봤는데 이제보니 소문자의 parent였네요.. 낚시 제대로 당했습니다..ㅠㅠ 2번은 해결완료..!
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
32:14 질문있습니다!
안녕하세요.혹시 답을SELECT * FROM 제품WHERE 단가 < (SELECT AVG(단가) FROM 제품);으로 해도 상관 없을까요? 질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야어떤 강좌에서 질문하셨는지 알 수 있습니다.영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다.이미 다른 누군가가 질문을 한 이력이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다.학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다.제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다.시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산)질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
SQL 문제 답변 작성시 계행 준수해야할까요?
SQL 쿼리문 작성시 계행을 잘 지켜야하는지 궁금합니다
-
해결됨김영한의 실전 자바 - 기본편
this 사용에 관한 질문 드립니다.
[질문 내용]안녕하세요 항상 좋은 강의 감사드립니다.영한님께서는 this를 무조건 붙이는 방법론에 대해서 추천하시지 않는다고 하셨는데, 그럼 this의 사용을 피하기 위해 의도적으로 변수명을 다르게 지으시는지 여쭤보고 싶습니다. 코드는 깔끔해지겠지만 오히려 헷갈리는 상황이 발생할수도 있겠다는 생각이 들어 여쭤봅니다! 감사합니다!
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
업케스팅 질문입니다
20:57에서main함수 내에 parent.childMethod();를 넣는다면업케스팅된 상황에 자식에만 있는 것을 불러오는 것이라오류가 발생한다가 맞을까요??
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
이론 pdf 파일은 어디서 볼 수 있나요?
질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야어떤 강좌에서 질문하셨는지 알 수 있습니다.영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다.이미 다른 누군가가 질문을 한 이력이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다.학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다.제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다.시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산)질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
쉬프트연산자 관련 질문입니다
강의 커리큘럼 내 잘 안나오는 문법에서 설명해주신 쉬프트 연산자는a = 5 // 0101result = 5 << 1 // 1010이렇게 2진수의 자릿수는 안바뀌었는데기출문제 풀이는v3 = 11101v3 << 2 = 1110100 으로 왼쪽 자릿수가 지워지지않고 뒤에 00만 더 붙는 형식이어서 헷갈립니다. 2만큼 왼쪽 자릿수를 지우고 미는거라고 이해했었는데 자릿수가 유지되는 기준이 궁금합니다
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
질문
안녕하세요 강사님 7분 26초대에 밑에Parent obj = new Child() 가parent obj = new Parent()로 하면 Parent클래스의 show()를 실행해야하는게 맞을까요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
자식이 태어나면 부모를 호출한다??
5분에 나오는 문제에서 main 함수의 2번째 라인을 실행할 때,B의 생성자가 호출되면 A의 생성자도 자동으로 호출되어서 출력값이 XAABY가 되는 줄 알았는데 아니네요...자식이 태어날 때 부모가 태어나는 경우에 해당이 안 되는 건가요? 22분에 나오는 문제에서는 자식 클래스 기본 생성자 맨 윗줄에 this(20)을 명시적으로 호출했는데도 부모 기본 생성자를 먼저 호출하네요 무슨 차이인가요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
상속정리10문제강좌 5분41초
자식이 태어나기 전 부모가 무조건 태어나야한다고 했었는데,여기서는 이미 child(){ 안에 super();이라고하는 부모 생성자를 호출하고있어서 사실상 의미가 중복되어 한번만 태어나는 것인가요?아니면 (자식이 태어나기 전 부모가 무조건 태어나야한다고 )<- 이 말은 업캐스팅에서만 해당되나요?