자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
안녕하세요 선생님. 강의를 듣던 중 궁금한 점이 생겨서 이렇게 글을 남기게되었습니다. UserLoanHistory라는 Entitiy는 강의에서 말씀하셨듯이 User와 ManyToOne의 관계를 가져가는데, 이게 또 Book과의 관계를 보더라도 ManyToOne이 성립할수 있지 않나 싶습니다.(물론 UserLoanHistory의 변수로 pk인 bookId가 아닌 bookName을 쓰셔서 조금 다를수 있지만...) 따라서 user_loan_history 테이블을 설계할때 칼럼을 book_name이 아닌 book_id로 해서 만든다면 그게 좋은 선택일지 궁금합니다 만일 1번의 테이블 설계가 나쁘지 않은 방식이라면 UserLoanHistory Entity에 Book에 대해서도 ManyToOne을 무조건 해주는게 좋은지, 아니면 '유저'의 대출기록만 자주 쓰이고 '책'의 대출기록은 거의 조회되지않을거 같으면 굳이 ManyToOne을 해줄 필요가 없을지 궁금합니다.
안녕하세요, 허깅페이스에서 모델을 불러오다가 에러가 생겨서 질문 남깁니다! 강의상으로는 model_id='LGAI-EXAONE/EXAONE-3.0-7.8B-Instruct 를 사용하셨지만, 인증 문제 때문에 model_id='LGAI-EXAONE/EXAONE-3.5-7.8B-Instruct' 로 대체하여 사용중입니다 대체된 모델로 chat_model을 만들고 돌렸을 때, 위 이미지와 같은 에러가 나타납니다...혹시 transformer 관련 버전 호환문제일 수도 있을까요? 답변 부탁드립니다!
spring boot4 + 이클립스를 사용중입니다. src/test/resources 경로에 applicaion.yaml파일을 넣어도 인식을 못해서 3시간을 해맸습니다.. 구글링으로 java build path에서 설정 경로를 확인할 수 있다는 사실을 알게되었는데 src/test/java 경로로 설정이 되어있더군요. 여기 경로에 넣으니까 잘 작동됩니다. 어째서 src/test/resources 경로가 기본값이 아니였던걸까요..
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 영한님, 안녕하세요. 강의를 들으며 부족하다고 느껴졌던 기본기를 덕분에 잘 습득하고 있습니다! 타입 매개변수 제한 강의를 듣고 나서 궁금한 점이 생겨 Q&A를 남기게 되었습니다. 제네릭을 도입하고 타입 매개변수를 제한함으로써, 1. 코드의 재사용성 증가 2. 타입 안정성 보장 위 두 가지의 강력한 장점을 가진다는 부분을 잘 이해했습니다. 다만, 클라이언트 코드에서 인스턴스를 생성하는 과정에 타입 매개변수를 아래와 같이 Animal로 지정하게 된다면 개발자의 실수가 발생할 수 있는 부분이 있다고 생각합니다. AnimalHospitalV3<Animal> animalHospital = new AnimalHospitalV3<>(); animalHospital.set(new Dog("dog", 100)); Dog biggerAnimal = (Dog) animalHospital.bigger(new Cat("cat", 100)); 위와 같은 코드는 다형성만을 사용하여 개션한 코드와 같이 Java 컴파일러가 잡아주지 못하고, 런타임 시점에 오류가 발생하게 됩니다. (Animal 클래스를 추상 클래스, interface로 선언해도 타입 인자로 지정하는 것을 막지 못합니다.) 이런 상황일 때, 개발자의 실수를 최대한 방지할 수 있는 방법이 어떤 것이 있을지 궁금합니다. 항상 좋은 강의 만들어주셔서 감사합니다. 덕분에 잘 배우며 기본기를 다져가고 있습니다!
명령어에서 startDateTime, endDateTime 의 jobParameters 부재 코드에서 @StepScope 어노테이션과 startDateTime, endDateTime 의 jobParameters 파라미터 부재 1번은 다른 사람이 심지어 이전에 쓴 문제더라고 ? 아마 형이 반영 안한건 모아서 한번에 수정할 계획인거 같아 보이네. 2번의 경우에는 @StepScope 도 빠져서 JobParameter 를 입력해도 오류가 발생했어. 또한 해당 메소드의 파라미터 부분을 1번과 마찬가지로 jobparameter로 받아야 할 것으로 보여져. 읽다가 하나씩 돌려보는데, 오류 터져서 놀라가지고 시간을 좀 썼어, 형. 1번은 내가 이해하는데, 2번은 형 실수가 좀 큰듯.
기본기 부족한 n년차 개발자 입니다. 입문, 기본, 중급1까지 완강했고, 현재 중급2 수강중입니다. (최종목표는 자바, 스프링, 데이터베이스 대부분의 강의를 로드맵 따라 익혀가는 것입니다.) 컬렉션 프레임워크(ArrayList) 부분부터 좀 버거운 느낌이 있는데, 강의를 어설프게 이해하며 따라가고 있는 것 같아 문의드립니다. (사실 잘 이해 못하고 있는 걸지도...) 우선 강의 듣는 자세는 다음과 같습니다. 하나하나 따라치며 강의를 듣기에는 오래 걸리고 하다가 지쳐서 중도포기 할 것 같아 강의를 쭉 돌려본다는 생각으로 학습하고 있습니다. (1배속) IDE에서 소스코드 열고 강의 들으면서 중간중간 눈으로 이해하며 넘어가고 있음 (부분적으로만 아조 조금씩 따라 치고 있음) 강의자료 설명 부분은 어느정도 이해가 가는데 코드 작성 부분에서는 조금 버겁게 느껴짐 즉, 과연 내가 이 코드들을 작성할 수 있을까, 다음 강의들을 잘 따라갈 수 있을까 걱정되는 부분이 있음 어떻게 해야 잘 습득해갈 수 있을까요? 강의는 더할 나위 없이 만족하고 있습니다
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예/ 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 아니오 [질문 내용] 수정 또는 삭제시에 한번 find 메서드를 호출해서 select하여 데이터의 값을 영속성 컨텍스트에 올려놓은뒤에 수정 또는 삭제시에는 객체의 값만 바꾼후에 commit 을 통해 쿼리가 날라간다고 설명해주셨는데, 보통 수정또는 삭제시에 객체를 조회하지않고 바로 update 또는 delete 쿼리를 사용하는데 jpa를 사용하면 무조건 find 메서드를 통해 select후에 update 또는 delete작업을 해야되는건가요?
질문 가이드 읽고 삭제 후 오타제보 JobScope와 StepScope 사용 시 주의사항 ... 2. Step 빈에는 @StepScope와 @JobScope와를 사용하지 말라. -> @Step 빈에는 @StepScope 와 @JobScope 와 를 사용하지 말라 -> 말이 확실히 이상해
섹션2. LangChain의 주요RAG 컴포넌트 소개 과정에서 다음과 같은 메세지와 함께 진행되지 않습니다. 해결 부탁드립니다. "압축파일이 잘 해제되지 않을 때는 반디집 또는 알집 같은 압축 프로그램을 사용해보시기 바랍니다. 문제가 계속 발생할 경우에는 질문 게시판에 남겨주세요."
형 스프링부트 4에서는 jdbc starter 추가 안하면 안되던데 뭐지 ```build.gradle.kts description = "batch" dependencies { implementation("org.springframework.boot:spring-boot-starter-jdbc") implementation("org.springframework.boot:spring-boot-starter-batch") implementation("org.springframework.boot:spring-boot-h2console") runtimeOnly("com.h2database:h2") testImplementation("org.springframework.boot:spring-boot-starter-batch-test") } ``` implementation("org.springframework.boot:spring-boot-starter-jdbc") 위 처럼 의존성 명시적으로 처리해주기 전에는 아래 에러떳었어. Could not autowire. No beans of 'PlatformTransactionManager' type found.
안녕하세요 얄코님 객체지향 프로그래밍 섹션 수강 후 디자인 패턴 섹션을 수강하려 하는데 notion의 샘플 코드를 보면 Creational Patterns Structural Patterns Behavioral Patterns 으로 분류하여 나열해놓으셨는데, 강의 순서는 위의 분류와 상관없이 나열되어 있더라구요. 강의 순서에 의도가 있을까요? 별다른 의도가 없는 경우 위에서 분류된 패턴별로 강의를 들어볼까 하여 질문드립니다.
안녕하세요, 이번 강의를 통해 처음으로 헥사고날 아키텍처에 대해서 공부하고 있는 사람입니다. 헥사고날 아키텍쳐를 지키면서 배치, 시큐리티, 이벤트 처리 등등 다양한 기술을 어떻게 사용하나요? 제가 공부해본 바로는 1. 배치: 애플리케이션 계층에 배치를 통해 이루어질 api를 만들어두고, 어댑터 계층엔 배치(Job, Step, Writer, Reader등 )에 관한 설정들을 위치하게 한다. 2. 시큐리티: 전부 어댑터에 위치한다. 이벤트 처리: 이벤트는 도메인으로 간주하고 도메인 계층에 위치시키고, 이벤트 리스너는 어댑터 계층에 위치시킨다. 이벤트를 발행시키는 로직은 애플리케이션 계층에 위치하고, ApplicationEventPublisher 같은 경우는 추상화됐다고 판단하고 그냥 사용하거나, 혹은 인터페이스를 따로 만들어서 사용한다. 이정도인데 큰 흐름에서 제가 이해한 게 맞을까요? 특히 궁금한 건 "이벤트가 도메인으로 간주되어도 문제가 없는지" 입니다. (무조건 도메인이기 보다는 로직을 처리하기 위해 존재하는 dto로 볼 수도 있는 거 아닌가 싶어서요.) 다른 기술들을 헥사고날 아키텍쳐에 적용시킬 때 주의할만한 사항들도 따로 존재를 할까요?