inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

전체 테스트 vs asciidoctor 질문

미해결

Practical Testing: 실용적인 테스트 가이드

@DisplayName("챌린지를 생성한다.") @Test void createChallenge() { // given LocalDateTime startDateTime = LocalDateTime.of(2024, 11, 11, 10, 10, 30); Member member = createMember(); memberRepository.save(member); Category category = createCategory(); categoryRepository.save(category); ChallengeCreateServiceRequest request = ChallengeCreateServiceRequest.builder() .title("제목") .durationInWeeks(2) .weeklyGoalCount(3) .categoryId(category.getId()) .color("색상") .content("내용") .build(); // when ChallengeResponse challengeResponse = challengeService.createChallenge(member, request, startDateTime); // then assertThat(challengeResponse.getId()).isNotNull(); assertThat(challengeResponse.getCategory()) .extracting("id", "name") .contains(1L, "카테고리"); assertThat(challengeResponse.getRecord()).isNull(); assertThat(challengeResponse) .extracting("startDateTime", "totalGoalCount") .contains("2024-11-11 10:10:30", 6); } assertThat(challengeResponse.getCategory()) .extracting("id", "name") .contains(1L, "카테고리"); afterEach를 작성해서 deleteAllInBatch로 레포지토리들을 삭제하고 있습니다. 전체 테스트에서는 아무런 문제없이 통과하는데 asciidoctor을 돌리면은 이 카테고리 아이디가 4L로 기대된다고 나옵니다.. 전체 테스트와 asciidoctor와무슨 차이가 있는건가요 ? 도대체 이유를 모르겠습니다ㅠ 카테고리 레포지토리를 쓰는곳을 보면 1. CategoryControllerTest 2. ChallengeControllerTest 3. CategoryServiceTest 4. ChallengeServiceTest -> 실패 부분 입니다.. 근데 컨트롤러 테스트를 제외하고,, 서비스, 레포지토리 테스트에서 afterEach 메소드 사용 deleteAllInBatch로 초기화를 시켜주고 있습니다. 근데 왜 다음과 같이 나오는지 이해가 안갑니다.. 이게 전체 테스트는 잘되고 asciidoctor를 첫번째 돌릴때만 그렇고 두번째에는 또 성공합니다.. 근데 이게 문제가 ci/cd때 테스트를 실패하니까 build가 안된다는 점입니다 ㅠ.ㅠ

  • spring
  • tdd
  • jpa
  • mockito
  • 소프트웨어-테스트
  • junit5
Duo 댓글 1 좋아요 0 조회수 164

섹션 4 목록 처리(1)

해결됨

코드로 배우는 React 19 with 스프링부트 API서버

강의를 따라가서 modify 버튼을 누르니 http://localhost:3000/todo/modify/[object%20Object]?page=1&size=10 이렇게 나오더라구요 그래서 섹션2 맨 마지막 강의를 찾아보니 modifyPage.js가 아래와 같았습니다. import React from 'react'; function ModifyPage(props) { return ( <div className={'text-3xl font-extrabold'}> Todo Modify Page </div> ); } export default ModifyPage; 2장 pdf의 동적페이지 이동: 수정/삭제 처리 후 이동 에는 import { useNavigate } from "react-router-dom"; const ModifyPage = ({tno}) => { const navigate = useNavigate() const moveToRead = () => { navigate({pathname:`/todo/read/${tno}`}) } const moveToList = () => { navigate({pathname:`/todo/list`}) } return ( ); <div className="text-3xl font-extrabold"> Todo Modify Page </div> } export default ModifyPage; 이렇게 나와있구요 어떻게 수정해야될까요? 참고로 위에 코드로 수정하면 export 어쩌구 하면서 오류가 나네요.. 참고로 리스트 버튼을 누르면 http://localhost:3000/todo/list?page=1&size=10 잘 넘어갑니다.. 추가 위에 두번째 코드처럼 ModifyPage.js를 수정해도 결과는 동일하게 http://localhost:3000/todo/modify/[object%20Object]?page=1&size=10 이렇게 나오네요.. 어떤 부분을 봐야할까요? 쳇지피티에 물어보니 백틱 문제라고 하는데 백틱도 적용했지만 해결이 안되네요.. 해결했습니다.. onClick={() => moveToModify(todo.tno)} 이 부분이 문제였던 것 같습니다. !!!!!!!!!!!!!!!!!!! pdf와 강의가 다른 부분에 대한 답변만 부탁드리겠습니다!

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
별다방 댓글 1 좋아요 0 조회수 121

@Repository를 통해 프록시가 생성되려면

해결됨

스프링 DB 2편 - 데이터 접근 활용 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] "@Repository가 붙은 클래스는 예외 변환 AOP의 적용 대상이 된다."는 내용에 대해 더 궁금한 점이 있습니다. 테스트 코드의 @Transactional를 주석 처리하고, @Import로 설정도 수정해서, JPA 대신 MyBatis나 JdbcTemplate을 적용해 봐도 log.info("repository = {}", itemRepository.getClass()); 테스트의 이 코드를 실행하면 itemRepository가 프록시로 생성된다는 것을 확인할 수 있었습니다. JPA가 아니라 해도 @Repository가 적용되면 프록시 객체로 생성되는 것 같습니다. 그런데 이전 스프링 핵심 원리 기본 편 강의에서 사용했던 core 프로젝트에서도 한번 테스트해 봤는데 //@Component @Repository public class MemoryMemberRepository implements MemberRepository { . . . } class OrderServiceImplTest { @Test void createOrder() { MemoryMemberRepository memberRepository = new MemoryMemberRepository(); System.out.println(memberRepository.getClass()); . . . } } 이 테스트를 실행해 보면 memoryMemberRepository는 @Repository가 적용되어 있음에도 불구하고 프록시 객체로 생성되지 않는 것 같습니다. 이 이유가 무엇인가요? @Repository를 통해 프록시 객체를 만드는 기능은 JPA 라이브러리가 있어야(JPA를 사용하지 않고 MyBatis를 사용하더라도) 적용되는 건가요? +) 그런데 스프링 DB 1편 강의에서 사용한 프로젝트에서도 테스트해 봤는데, 여기선 JPA 라이브러리를 받지 않았는데도 @Repository를 통해 프록시 객체가 생성되는 것 같습니다. 물론 @Transactional도 주석 처리했습니다. @Slf4j @Repository public class MemberRepositoryV5 implements MemberRepository { private final JdbcTemplate template; . . . } @Test void AopCheck() { log.info("memberService class = {}", memberService.getClass()); log.info("memberRepository class = {}", memberRepository.getClass()); Assertions.assertThat(AopUtils.isAopProxy(memberService)).isTrue(); Assertions.assertThat(AopUtils.isAopProxy(memberRepository)).isFalse(); } @Transactional을 주석 처리했으므로 memberService는 프록시 객체가 아니고, @Repository가 적용된 memberRepository는 CGLIB 관련 내용이 출력됩니다. @Repository를 통해 프록시 객체가 생성되려면 어떤 조건이 필요한지 궁금합니다.

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
11 1 댓글 2 좋아요 0 조회수 186

섹션 2.2 직관에서 알고리즘 트레이딩까지 강의가 안보여요

해결됨

파이썬 주식 매매 봇으로 주식시장 자동사냥하기

'동영상을 준비중에 있습니다.' 라는 화면과 함께 강의 영상이 재생되지 않습니다. 아직 준비중인걸까요?

  • python
  • pandas
  • 차트분석
  • 퀀트
  • trading
Jimmy 댓글 2 좋아요 1 조회수 281

user service에서는 토큰 검증을 하지 않나요?

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

제가 작성한 user-service SecurityConfig 입니다 강의 내용과 최대한 유사하게 작성한거 같은데 GET /users에서 403이 발생하여 문의드립니다. gateway service에서 토큰 검증을 하여도 user service에서는 검증된 토큰인지 알 수 없으니 403이 발생하는게 맞는거 같은데 강의에서는 api가 제대로 동작하여 왜 그런지 궁금합니다 @RequiredArgsConstructor @Configuration public class SecurityConfig { //AuthenticationManager가 인자로 받을 AuthenticationConfiguraion 객체 생성자 주입 private final AuthenticationConfiguration authenticationConfiguration; private final JwtProvider jwtProvider; private static final String[] WHITE_LIST = {"/login", "/h2-console/**", "/health-check", "/welcome", "/join"}; @Bean public SecurityFilterChain config(HttpSecurity http) throws Exception { AuthenticationManager authenticationManager = authenticationManager(authenticationConfiguration); AuthenticationFilter authenticationFilter = new AuthenticationFilter( authenticationManager, jwtProvider); http.csrf(csrf -> csrf.disable()) //CSRF 보호를 비활성화. REST API 환경만 비활성화. Web Form 기반에서는 필요. .formLogin((auth) -> auth.disable()) // .httpBasic((auth) -> auth.disable()) .headers(header -> header.frameOptions( frameOptionsConfig -> frameOptionsConfig.disable()) ) //h2 console iframe을 사용하기 때문에 X-Frame-Options 헤더를 비활성화 .authorizeHttpRequests(auth -> auth.requestMatchers(WHITE_LIST).permitAll() .anyRequest() .authenticated() ) .authenticationManager(authenticationManager) .addFilterAt(authenticationFilter, UsernamePasswordAuthenticationFilter.class) .sessionManagement((session) -> session .sessionCreationPolicy(SessionCreationPolicy.STATELESS)); return http.build(); } //AuthenticationManager Bean 등록 @Bean public AuthenticationManager authenticationManager(AuthenticationConfiguration configuration) throws Exception { return configuration.getAuthenticationManager(); } @Bean public BCryptPasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); } }

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
  • rabbitmq
댓글 2 좋아요 1 조회수 282

Member와 Locker 테이블에 질문이 있습니다.

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 영상을 4분대까지 본 후 혼자 테스트를 해보고 있던 중 질문이 있습니다. Member 클래스에서 JoinColumn을 통해 name을 LOCKER_ID로 설정해주셨는데 이 LOCKER_ID는 어떤 것을 의미하나요? Locker 테이블의 id값이 그럼 @Column(name = "LOCKER_ID") 이렇게 되어있어야 하는 것 이라고 이해를 하고있습니다. 두 번째 질문으로 Member 클래스에서 JoinColumn을 지우고 Locker 테이블에서도 따로 @Column(name ="LOCKER_ID")를 설정해주지 않고 JpaMain 클래스에서 Locker locker = new Locker(); locker.setName("lockerA"); em.persist(locker); Member member = new Member(); member.setUsername("member1"); member.setLocker(locker); em.persist(member); Team team = new Team(); team.setName("teamA"); team.getMembers().add(member); em.persist(team); tx.commit(); 이렇게 실행을 해보았는데 어째서 Member 테이블에 LOCKER_ID 라는 이름으로 컬럼이 생기고 값이 들어가는지 궁금합니다. -> Member 클래스에서 locker변수에 @JoinColumn도 해주지 않았습니다. Member, Locker 클래스는 이렇습니다 ! @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "MEMBER_ID") private Long id; @Column(name = "USERNAME") private String username; @ManyToOne @JoinColumn(name = "TEAM_ID") private Team team; @OneToOne private Locker locker; public Locker getLocker() { return locker; } public void setLocker(Locker locker) { this.locker = locker; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Team getTeam() { return team; } public void setTeam(Team team) { this.team = team; team.getMembers().add(this); } } @Entity public class Locker { @Id @GeneratedValue private Long id; private String name; @OneToOne(mappedBy = "locker") private Member member; 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; } } 잘못 이해한 것이 있으면 설명 부탁드리겠습니다 ㅎㅎ

  • java
  • jpa
이동준 댓글 1 좋아요 0 조회수 160

외부 내부 트랜잭션 질문

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

이전 내용은 내부 트랜잭션이 외부 트랜잭션에 종속된다는 내용이였는데, 지금까지 테스트를 트랜잭션 매니저로 직접 생성해서 해주셨습니다. 그런데 실무에서는 트랜잭션 어노테이션을 많이 쓰는데 디폴트 트랜잭션은 기존 트랜잭션이 존재하면 그대로 이어 쓰는 걸로 알고 있습니다. 이 경우가 이어 쓰는 것임에도 논리적으로 외부 내부로 구분하는 건지, 아니면 다른 옵션의 예가 따로 있는 건지 궁금합니다. 정리하자면 기존 트랜잭션을 이어 쓰는 REQUIRED 옵션이 이제까지 설명해주신 내부가 외부에 종속되는 트랜잭션인지 아니면 다른 옵션이 있는 건지 궁금합니다.

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
댓글 1 좋아요 0 조회수 114

첨부파일(필드명없음.hwp)과 강의 본문 내용 상 불일치 확인 요청

해결됨

직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피

"2-6. 필드속성 수정하기" 중 현재 커서위치의 필드이름 수정하기 : SetCurFieldName 관련입니다. (아래 스크린샷 참고) 강의 본문을 보면, 첨부된 실습파일인 "필드명없음.hwp"이 누름틀은 네 개 들어가 있지만, 필드명이 정의되어 있지 않은 상태입니다. 라고 설명되어 있는데요. "필드명없음.hwp"를 다운로드 받아서 열어보면 강의 본문과 다릅니다. 즉, 필드 4개에 필드명이 모두 정의된 상태입니다. 또한, 강의 본문에는, "필드명없음.hwp" 상 내용이 이름 : 여기에 입력 성별 : 여기에 입력 생일 : 여기에 입력 취미 : 여기에 입력 이라고 기재되어 있지만, "필드명없음.hwp"를 열어보면 이름 : 이름 성별 : 성별 생일 : 성별 취미 : 성별 로 확인됩니다. 잘못 첨부하신 거라면, 첨부파일과 강의 본문 간 일치되도록 정정해 주시면 혼동을 방지하는데 큰 도움이 될 거 같습니다. 혹여나 "예시문서는 아래와 같습니다." 라고 기재하시면서 실습이 완료된 파일을 첨부해 주신 의도라면, 수강생의 입장에서는 해당 위치에 실습 진행 전 파일을 첨부해 주시는 게 더 이해에 더 매끄러울 거 같습니다. 아니면, 해당 첨부파일이 "실습이 완료된 이후의 상태"라는 언급을 해주시면 정확할 거 같습니다. 아울러, hwp.SetCurFieldName(Field="이름", Direction="이름입력", memo="이름메모") 코드를 실행할 때는, "필드명 정의되어 있지 않은 누름틀에서 캐릿이 깜빡이는 상태에서 위 코드를 실행"하면 된다는 설명을 한 줄 더 넣어주시면 어떤 설명을 하고 계신 건지 더 정확히 이해할 수 있을 거 같습니다. ※ 요 부분 실습해보고 말씀드리는 것입니다. 감사합니다.

  • python
  • 한컴오피스
  • 레벨업
learner 댓글 2 좋아요 1 조회수 117

강의 프로젝트는 Todo리스트 인가요 쇼핑몰 인가요?

미해결

코드로 배우는 React 19 with 스프링부트 API서버

안녕하세요 강사님. 현재 섹션5를 보고 있는데 프로젝트가 어떤 프로젝트인지 헷갈려서 질문 드립니다. 섹션 1,2,3 을 보면 투두리스트 인것 같은데 갑자기 섹션4부터는 product나 상품들도 나오고, 그 뒤 섹션들을 보면 장바구니도 나오고 하던데 최종적으로는 어떤게 만들어지는 건가요?

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
tjdwnsdks 댓글 2 좋아요 0 조회수 150

아나콘다 설치 실패

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

안녕하세요. 시험결과를 기다리는 동안 아나콘다를 사용해서 추가적으로 파이썬을 연습해 볼까 하고 있습니다만, 아나콘다 설치 실패가 나와서 혹시 이부분도 도움을 받을 수 있을까 하여 글을 남겨 봅니다. 추가적으로 말씀드리자면 사용자 파일에 있는 anaconda3파일을 휴지통에 넣었는데도 같은 에러가 발생하고 있습니다. 그리고 터미널을 통해서 rmdir을 통해서 파일을 지우려고 시도해봤는데도 잘 되지 않습니다. 저는 파이썬과 터미널 완전 입문자 입니다. 이것저것 해봐도 안되서 도움을 요청드립니다. (저는 mac유저 입니다) 요

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
juliejoo1207 댓글 2 좋아요 0 조회수 650

한글폰트 관련해서 문의드립니다.

미해결

파이썬 증권 데이터 수집과 분석으로 신호와 소음 찾기

안녕하세요 다른 쥬피터랩에서 실행하고 있는데요.. import koreanize_matplotlib 진행을 했는데도... import koreanize_matplotlib import matplotlib.pyplot as plt import seaborn as sns import pandas as pd from pandas.plotting import register_matplotlib_converters # 그래프에 retina display 적용 %config InlineBackend.figure_format = 'retina' register_matplotlib_converters() # Matplotlib에서 날짜 데이터를 처리하기 위한 변환기 등록 # 데이터 예시 (실제 사용 시 'data' DataFrame이 필요합니다) data = pd.DataFrame({ '등록일시': ['2023-01-01', '2023-02-01', '2023-03-01'], '참가업체수': [10, 15, 20] }) data['등록일시'] = pd.to _datetime(data['등록일시']) # '등록일시'를 기준으로 데이터 정렬 data_sorted = data.sort_values('등록일시') # 시간에 따른 '참가업체수' 선 그래프 그리기 plt.figure(figsize=(12, 6)) # 그래프 크기 설정 sns.lineplot(data=data_sorted, x='등록일시', y='참가업체수') # 선 그래프 생성 plt.title('시간에 따른 참가업체수 분석') # 그래프 제목 설정 plt.xlabel('날짜') # x축 라벨 설정 plt.ylabel('참가업체수') # y축 라벨 설정 plt.xticks(rotation=45) # x축 눈금 라벨 회전 plt.tight_layout() # 그래프 레이아웃 조정 # 그래프 표시 plt.show ( ) 이런 에러가 계속 나서요.. 혹시 어떻게 진행하면...될까요 ㅜㅜ

  • python
  • pandas
  • numpy
  • 웹-크롤링
  • seaborn
  • plotly
  • matplotlib
  • 웹-스크래핑
자유 free 댓글 2 좋아요 0 조회수 279

알고리즘

미해결

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

이것좀 풀어주세요 ㅜ

  • python
  • 코딩-테스트
connor10 댓글 1 좋아요 0 조회수 85

트랜잭션 질문드립니다.

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

안녕하세요. 앞서 전파기본 강의와 전파예제 강의를 듣고나서 이해가 되지않는 부분이 몇가지 있어서 질문드립니다. 1. 강의 자료중에, 트랜잭션매니저에 커밋하는것이 논리적인 커밋이라면, 실제커넥션에 커밋하는것을 물리 커밋이라고 할수있다 = 내부트랜잭션인 txManager.commit(inner)을 하는것이 논리적인 커밋이고, 외부트랜잭션인 txManager.commit(outer)을 하는것이 물리커밋이다. = 트랜잭션 매니저를 통해 txManager.commit(inner)를 하는것이 논리적인 커밋이고, 트랜잭션 매니저를 통해 txManager.commit(outer)를 하는것이 물리커밋이다. 이렇게 생각하는게 맞을까요?? 2. 1번 질문에 더해서, 트랜잭션 매니저를 통해서 txManager.commit()을 하는것이 논리적인 커밋이라면, 물리적인 커밋은 코드상 어떤것인가요? 외부트랜잭션도 txManager.commit()을 통해 커밋하는거같은데, 이렇게 외부트랜잭션을 커밋하는것이 논리적인 커밋임과 동시에 물리커밋인것인가요?? 3. 외부트랜잭션도 논리트랜잭션이고 내부트랜잭션도 논리트랜잭션인가요? 그래서 이 두가지를 묶어서 물리트랜잭션이라고 하는것인가요?? + 위 질문에 대해서 계속 찾아보면서 생각해봤는데, 이렇게 이해하면 될까요? 1. 내부트랜잭션이 트랜잭션 매니저를 통해서 커밋하는것이 논리적인 커밋이고, 외부트랜잭션이 트랜잭션매니저를 통해서 커밋하는것은 실제 DB커넥션에 커밋하는것이다. 외부트랜잭션의 커밋은 논리적커밋임과 동시에 물리커밋이다. 2. 외부트랜잭션을 커밋하는것은 논리적 커밋임과 동시에 물리커밋이다. 3. 외부트랜잭션과 내부트랜잭션 모두 논리트랜잭션이고, 논리트랜잭션을 묶어서 물리트랜잭션이라고한다.

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
오리쉐리 댓글 1 좋아요 0 조회수 120

오류가 자꾸 발생하네요

미해결

원고 생성기 프로그램 개발 강의 (Chatgpt api)

안녕하세요 1강 수강 중에 이전 글에 올리신 분들과 같은 오류가 발생하여 기존 openai를 삭제한 후 openai==0.28.1 버전을 설치까지 했는데도 오류가 발생하네요.. 확인부탁드립니다. 위에 import 와 api_key값은 빼고 캡쳐한 화면 첨부드립니다.

  • python
  • rest-api
  • chatgpt
  • aiprm
sangheon kim 댓글 1 좋아요 0 조회수 148

Slf4j log cannot find symbol 오류 해결방법

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

intelliJ 에서 Slf4j 추가한 상태에서 log.info (header); 부분에서 나는 오류 해결방법 java: cannot find symbol symbol: variable log

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
  • rabbitmq
이세진 댓글 2 좋아요 0 조회수 1133

5분대 설명하신 부분이 이해가 잘 안됩니다.

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 5분 지점에 member와 team을 분리해서 호출하기 위해 프록시를 사용한다라고 이해했는데 9분 53초대에서 보면 getUsername()을 호출했을 때 쿼리가 team까지 조인해서 가져옵니다. getTeam() 을 호출하지 않아도 조인으로 가져오는 거라면 굳이 프록시를 사용해야되는 것인지 의문점이 들었습니다. 제가 이해한 것이 맞는지 궁금합니다.

  • java
  • jpa
jaemoon 댓글 3 좋아요 0 조회수 177

트렌젝션 질문입니다

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

트렌젝션을 서비스 클래스에 걸면 이런 문제가 없을 거 같은데, 실무에서는 트렌젝션을 메서드 단위로 거나요?? 저 같은 경우 서비스 클래스에 트랜젝션 readonly를 걸고 create, update, delete 등이 필요한 로직에 트렌젝션을 따로 거는 편입니다.

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
gogoDevelop 댓글 2 좋아요 0 조회수 122

표 찾아가기 도와주세요...ㅠㅠ

해결됨

직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피

파이썬 pyhwpx 이용해서 개인 매크로를 만들고 있는데 .. 막히는 부분이 있어 문의드립니다 원하는 기능은 문서 내 모든 표를 저장하고 하나씩 순회하면서 매크로를 적용시키려합니다.. 근데 표 글자처럼 취급을 해제시키면 hwp.get_into_nth_table(Table_index) 이 코드로는 그 인덱스번호 표의 첫번째 셀로 가지 않았습니다.. hwp.move_to_ctrl(Table_list[Table_index]) hwp.find_ctrl() hwp.ShapeObjTableSelCell() 아니면 이렇게 컨트롤을 넣어서 해도 안으로 안갔습니다.. hwp.select_ctrl(Table_list[Table_index]) 이 함수 사용하니까 선택은 되는데 셀 전체 선택이 또 안되더라구요.ㅠㅠ 그리구 표 하나씩 넘길때마다 조판부호 같은게 켯다꺼지네용;; 글자처럼 취급하지 않은 표를 조작할 방법 알려주시면 감사하겠습니다.

  • python
  • 한컴오피스
이상민 댓글 3 좋아요 1 조회수 319

JPA save 때 동일 컬럼이 두 번 선언되는 현상이 있습니다.

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

두 개의 테이블을 OneToOne으로 연관관계를 설정하여 JPA 로 account와 authority테이블을 한 번에 save하는 로직을 강의 내용을 응용하여 개발하고 있습니다. save를 통해 저장하려고 하면 insert 구문에 LOGIN_ID가 두 번 지정되어 쿼리가 날아가는 현상이 있는데 어느 부분이 잘못된 것인지 도움 부탁드립니다.. (쿼리문 예시 insert into LOGIN_ACCOUNT (LOGIN_ID, ~~~, login_id) select SCOPE_IDENTITY() AS GENERATED_KEYS', ~~~, form에서 입력받은 실제 id값) 아래는 소스 내용의 일부입니다.

  • java
  • spring
  • spring-boot
  • jpa
gao9512 댓글 1 좋아요 0 조회수 108

섹션4 - 목록처리(2)에서 페이지를 두번 클릭해야 정보를 불러옵니다.

미해결

코드로 배우는 React 19 with 스프링부트 API서버

목록처리(2) 에서 refresh 까지 다 하고 하단에 페이지 넘버를 클릭하면 어떨때는 두번 눌러야 화면이 넘어가는 경우가 있습니다. 브라우저 개발자 도구의 콘솔탭에서 확인해보니 아래 이미지처럼 current가 각기 다르게 두번 불러오는데요(현재 2페이지에서 1페이지를 눌렀을때의 결과 입니다.) 리액트에서 두번 불러오는거에 대해서 언급하신게 있었는데 제가 놓친부분이 있는건지... 이렇게 되는 이유를 모르겠습니다. 혹시 몰라 압축파일로 제 구글 드라이브에 올려놓았습니다. ( https://drive.google.com/drive/folders/1TQxdqkRD8xvXIHzVoI5fp2hm_HZaE0aT ) 감사합니다.

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
tjdwnsdks 댓글 2 좋아요 0 조회수 128

인기 태그

인프런 TOP Writers

주간 인기글