docker-compose up 을 실행하면 아래와 같은 에러가 발생하고, nginx: [emerg] host not found in upstream "frontend:3000" in /etc/nginx/conf.d/default.conf:3 docker ps 를 해봤을 때, nginx와 mysql 이름으로된 컨테이너는 있는데 frontend, backend는 없는걸로 봐서 호스트나 포트를 못찾는게 맞는 것 같긴해요. 깃헙에 있는 파일들 비교했을 때는 틀린부분이 없는 것 같은데, 어떤부분을 확인해보는게 좋을지 알려주실 수 있나요 ? 구글링한 정보 를 적용해봐도 같은 에러가 나오네용..ㅠㅠ
JOINED 전략을 명시한 Item 클래스와 그런 Item 클래스를 상속한 Album, Book, Movie 클래스를 생성 후 코드를 다음과 같이 작성했습니다. EntityManagerFactory emf = Persistence.createEntityManagerFactory("hello"); //애플리케이션 전체 공유 (persistence.xml 참조) EntityManager em = emf.createEntityManager(); //한번 쓰고 버려야함, 쓰레드간 공유하지 않음 EntityTransaction tx = em.getTransaction(); //조회를 제외한 DML 작업시 필수로 사용 tx.begin(); try { Album album = new Album(); album.setName("album"); album.setPrice(10000); album.setArtist("artist"); em.persist(album); Book book = new Book(); book.setName("book"); book.setPrice(20000); book.setAuthor("author"); book.setIsbn("isbn"); em.persist(book); Movie movie = new Movie(); movie.setName("movie"); movie.setPrice(30000); movie.setDirector("director"); movie.setActor("actor"); em.persist(movie); em.flush(); em.clear(); //1번 String jpql = "select i from Item i where type(i) in (Book, Movie)"; List<Item> items = em.createQuery(jpql, Item.class).getResultList(); for (Item data : items) { System.out.println("data : " + data); } em.clear(); //2번 jpql = "select i from Item i where treat(i as Book).author = 'author'"; //SINGLE_TABLE에서는 되는데 JOINED에서는 안 먹힘 items = em.createQuery(jpql, Item.class).getResultList(); for (Item data : items) { System.out.println("data : " + data); } tx.commit(); } catch (Exception e) { e.printStackTrace(); tx.rollback(); } finally { em.close(); } emf.close(); 1번의 경우에는 다음과 같이 정상적으로 동작합니다. Hibernate: /* select i from Item i where type(i) in (Book, Movie) */ select i1_0.Id, i1_0.DTYPE, i1_0.name, i1_0.price, i1_1.artist, i1_2.author, i1_2.isbn, i1_3.actor, i1_3.director from Item i1_0 left join Album i1_1 on i1_0.Id=i1_1.Id left join Book i1_2 on i1_0.Id=i1_2.Id left join Movie i1_3 on i1_0.Id=i1_3.Id where i1_0.DTYPE in('B','M') data : Book(author=author, isbn=isbn) data : Movie(director=director, actor=actor) 그런데 2번의 경우에는 다음과 같은 현상이 발생하고 있습니다. Hibernate: /* select i from Item i where treat(i as Book).author = 'author' */ select i1_0.Id, i1_0.DTYPE, i1_0.name, i1_0.price, i1_1.artist, i1_2.author, i1_2.isbn, i1_3.actor, i1_3.director from Item i1_0 join Book i1_2 on i1_0.Id=i1_2.Id where i1_2.author='author' 존재하지 않는 i1_1과 i1_3을 참조있어서 오류가 나는데 왜 이런 현상이 발생하는지 궁금합니다. 그와 별개로 SINGLE_TABLE 전략을 사용했을 때 2번을 실행하면 저같은 경우에는 다음과 같은 쿼리가 실행됩니다. Hibernate: /* select i from Item i where treat(i as Book).author = 'author' */ select i1_0.Id, i1_0.DTYPE, i1_0.name, i1_0.price, i1_0.artist, i1_0.author, i1_0.isbn, i1_0.actor, i1_0.director from (select * from Item t where t.DTYPE='B') i1_0 where i1_0.author='author' 그런데 강사님께서 제공해주신 pdf 파일에 보면 원래는 쿼리가 다음과 같이 실행된다고 말씀해주셨는데 select i.* from Item i where i.DTYPE = ‘B’ and i.author = ‘kim’ 제가 sql 실행했을 때와 강사님이 적어주신 sql이 다른 이유가 제 생각에는 하이버네이트 버전차이때문일것 같긴한데 혹시 제 생각이 맞는지 질문드리고 싶습니다. ※ 저는 하이버네이트 6버전을 쓰고 있습니다.
안녕하세요 강사님! 강의 잘보고 있습니다. 강의시간 18:58에 sink 생성 후 status 확인 값에서 tasks.state 값이 failed라고 뜹니다. 그래서 connect 로그를 보면 아래와 같이 뜹니다. [2023-05-02 00:04:12,636] ERROR [my-order-sink-connect|task-0] WorkerSinkTask{id=my-order-sink-connect-0} Task threw an uncaught and unrecoverable exception. Task is being killed and will not recover until manually restarted (org.apache.kafka.connect.runtime.WorkerTask:196) org.apache.kafka.connect.errors.ConnectException: Tolerance exceeded in error handler at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execAndHandleError(RetryWithToleranceOperator.java:223) at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execute(RetryWithToleranceOperator.java:149) at org.apache.kafka.connect.runtime.WorkerSinkTask.convertAndTransformRecord(WorkerSinkTask.java:516) at org.apache.kafka.connect.runtime.WorkerSinkTask.convertMessages(WorkerSinkTask.java:493) at org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:332) at org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:234) at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:203) at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:189) at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:244) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: org.apache.kafka.connect.errors.DataException: JsonConverter with schemas.enable requires "schema" and "payload" fields and may not contain additional fields. If you are trying to deserialize plain JSON data, set schemas.enable=false in your converter configuration. at org.apache.kafka.connect.json.JsonConverter.toConnectData(JsonConverter.java:328) at org.apache.kafka.connect.storage.Converter.toConnectData(Converter.java:88) at org.apache.kafka.connect.runtime.WorkerSinkTask.lambda$convertAndTransformRecord$4(WorkerSinkTask.java:516) at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execAndRetry(RetryWithToleranceOperator.java:173) at org.apache.kafka.connect.runtime.errors.RetryWithToleranceOperator.execAndHandleError(RetryWithToleranceOperator.java:207) ... 13 more 구글링 해봐도 원하는 답변들이 없어 남겨봅니다.
#include <iostream> #include <string> using namespace std; int main() { // CASE 1 cout << "Your name?: "; string name; // std::string cin >> name; // NO white space; jack jack cout << "Age?: "; string age; cin >> age; // jack cout << "CASE 1 " << name << " & " << age << endl; cout << endl; // CASE 2 cout << "Your name?: "; string name2; // std::string std::getline(std::cin, name2); cout << "Age?: "; string age2; std::getline(std::cin, age2); cout << "CASE 2 " << name2 << " & " << age2 << endl; cout << endl; return 0; } >> Your name?: jack Age?: 1 CASE 1 jack & 1 Your name?: Age?: 2 CASE 2 & 2 안녕하세요, 위 코드를 입력하면 CASE1에서 엔터치면, CASE2에서 name2는 그냥 넘어가 age2와 같은 값을 갖게 되는 이유가 무엇인가요? 제가 추론하기로는, cin >> age에서, ">>" operator가 age의 string만 읽고 delimiter인 line breaker를 buffer로 가지고 있는 것 같습니다. 그래서 std::getline에서 delimiter(즉, remaining line breaker)를 읽는 것 같습니다. 그런데 name2는 어떻게 age2와 같은 값을 갖게 되는지 전혀 모르겠습니다.
안녕하세요. 강의를 듣고 포스트맨으로 파일을 올리고 있습니다. 영어파일명은 파일명이 정상적을 변환되는데 한글파일명은 파일명이 깨져서 변환됩니다. -물리적 파일명도 깨지고 디비에도 깨진파일명이 저장됩니다. 깨진파일명으로 크롬에서 불러오면 에러가 납니다. 한글파일명을 해결할수 있는 방법이 있을까요?
"[참고] 크롤링과 데이터베이스 - 크롤링 코드 작성 시작 (업데이트)" 5분10초에서, G마켓 내용이 일부 변동이 발생해서 인지 sub_category가 작동되지 않습니다. sub_categories = soup.select (' div.navi.group ul li a')이 부분이 작동 되지 않는 것 같은데 제가 웹크롤링이 초보라서 해결할수가 없네요 ㅠ
프로젝트를 하면서 궁금한 점이 생겨 질문드립니다. @AutoConfigureMockMvc와 @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.MOCK) 만 적용한 상태로 테스트 코드를 작성했습니다. 그리고 @Autowired를 통해 순수 EntityManager를 주입받아서 직접 영속성을 관리하는 레포지토리가 있습니다. 그런데 직접 EntityManager를 주입받은 Repository 빈은 테스트 주입 시 EntityManager가 없다는 오류가 발생합니다. 하지만 Spring Data JPA의 JpaRepository를 상속받은 인터페이스를 @Autowired로 주입받으면 이는 문제없이 테스트가 동작합니다. 혹시 어떤 차이점이 있는지 알 수 있을까요? @Repository public class UserRepository { @PersistenceContext private EntityManager em; public User save(final User user) { em.persist(user); return user; } public Optional<User> findByEmail(final String email) { List<User> users = em.createQuery("select u from User u where u.email=:email", User.class) .setParameter("email", email) .getResultList();return users.isEmpty() ? Optional.empty() : Optional.of(users.get(0)); } } public interface UserJpaRepository extends JpaRepository<User, Long> { public Optional<User> findByEmail(final String email); } @ActiveProfiles("test") @AutoConfigureMockMvc @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.MOCK) class AjaxEmailPasswordAuthenticationFilterTests extends DummyObject { @Autowired private ObjectMapper objectMapper; @Autowired private MockMvc mockMvc; @Autowired private UserJpaRepository userJpaRepository; @Autowired private PasswordEncoder passwordEncoder; @BeforeEach void setup() { userJpaRepository.save(User.builder() .email("test@gmail.com") .username("test") .password(passwordEncoder.encode("1234")).build()); } @DisplayName("이메일 기반 회원가입 유저 로그인") @Nested class LoginByEmailTests { @DisplayName("로그인 성공") @Test void success_test() throws Exception { //given String url = Endpoint.Api.LOGIN_WITH_EMAIL; EmailLoginUserRequestDto requestDto = EmailLoginUserRequestDto.builder() .email("test@gmail.com") .password("1234") .build(); //when ResultActions resultActions = mockMvc.perform( post(url) .contentType(MediaType.APPLICATION_JSON) .content(objectMapper.writeValueAsString(requestDto)) ); //then resultActions .andExpect(status().isOk()) .andExpect(jsonPath("$.id").exists()) .andExpect(jsonPath("$.redirectUrl").exists()); } } }
.items{ display : flex; } .items > div{ border: 1px solid green; height : 200px; } 강의에서는 위와 같이 스타일을 주셨는데, .items > div 에 들어갈 내용을 . item 에 넣어도 레이아웃이 똑같이 잡히더라구요. 혹시 . items > div 에 작성한 border 과 height를 . items 에 넣어도 괜찮은지 궁금합니다. ■ 질문 남기실 때 꼭! 참고해주세요. - 먼저 유사한 질문이 있었는지 검색해주세요. - 궁금한 부분이 있으시면 해당 강의의 타임라인 부분을 표시해주시면 좋습니다. - HTML, CSS, JQUERY 코드 소스를 텍스트 형태로 첨부해주시고 스크린샷도 첨부해주세요. - 다운로드가 필요한 파일은 해당 강의의 마지막 섹션에 모두 있습니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 테스트 범위 관련해서 궁금한 점이 있습니다. 영한님 강의 들어보면, 보통 controller-service-repository 구조인데, , 보통 service만 하시나요? controller, repository 다하시나요?
안녕 하세요 궁금한 사항이 있어서 문의드립니다. Debezium CDC source connector 강의 내용중 redo 로그에 commit되지 않은 데이터도 쓰여진다고 말씀해주셨는데요 저보다 당연히 잘 아시겠지만 제가 알기로는 commit하면 버퍼에 쌓이고 디스크에는 반영되지 않고 그 이후에 주기적으로 redo log에 쌓이는 것으로 알고 있습니다 즉 commit이 되어야 redo log에 쌓이는 걸로 알고 있는데 제가 잘못알고 있는걸까요? 감사합니다.
WLS에서 /dev/ttyS5 at 115200으로 환경이 잡힌 것 같고 JTAG 핀도 올바르게 연결 된 것 갔습니다. 그리고 build project도 완료했습니다. 그러나 Launch hardware를 클릭하면 다음사진과 같이 나옵니다. 무슨이유인지 알 수 있을까요?
안녕하세요. 강사님 열심히 따라해보고 있는데..여기서 막혀서 넘어가질 못하네요ㅜㅜ Vue Router 학습 : 게시판 UI 만들기 강의에서 게시글 목록을 뿌려줄 때 우리가 어떤 데이터를 조회했다고 가정하고 v-for를 돌면서 뿌려줘본다고 하고 따라하고 있는데, 몇번을 봐도 오타는 없는거 같은데...ㅠㅠ 그 전단계에서 목록이 5개 뜨는걸 확인한 후의 작업입니다. 뭐가 문제일까요???
안녕하세요 선생님, 수업 잘 듣고 있습니다. 문제 내용 중에 '첫 글자가 같은 5명의 선수를 비교' 해야 할 것 같은데, 이건 해설풀이 중에 어느부분에서 해석할 수 있을까요? 선수이름(s)을 받아서 앞쪽으로 당긴 다음에 더해간다, 나중에 'a'값을 더해서 원래 소문자를 구해서 출력한다, 까지는 이해하겠는데 문의드린 부분이 이해가 안가서요ㅜ 아니면 선생님 코드는 비교 안해도 값이 나오는 건가요..?
안녕하세요. 강의를 보고 있는 학생입니다. 현재 강의를 보고 간단한 앱을 만들고 있는데, 테스트 코드를 작성하면서 궁금한 점이 생겨서 질문을 남깁니다. 질문 given에서 테스트 데이터들을 준비할 때, sql문으로 준비하는 것이 맞는 건가요? (멤버를 db에 insert하거나 게시글을 insert 하는 것들) 아니면 test코드 내에서 엔티티를 만들어서 repository로 save하는 방식으로 하는 것이 맞는 건가요? 현재 약간 복잡한 서비스 클래스를 테스트 하느라 여러 테이블에 데이터를 많이 넣고 시작해야 하는데, 어떤 방식이 맞는 지 궁금합니다.
[질문 내용] 여기에 질문 내용을 남겨주세요. 회원가입과 회원 조회는 문제없이 되는데 상품등록은 작성은 되지만 db에 담기지도 않고 그래서 조회도 안됩니다 ㅠㅠ 상품등록 조회 영상 코드가 잘못인가 하고 복붙을 했는데도 안됩니다 ㅠㅠ 무엇이 문제일까요??ㅠㅠ] 제가 지금 야생형으로 따라 하고있어서 아무것도 몰라서 어느부분이 문제인지 알수없어서 남겨봅니다
@Configuration 없이, @Bean만 붙어있을 경우에 스프링 빈으로는 등록이 되지만, 스프링 컨테이너에는 들어가지 않아서 스프링 컨테이너에 의해 관리되지 않는 것이 맞나요? @Bean만 붙일 경우, 일단은 스프링 컨테이너에는 들어가게 되지만, @Configuration까지 붙은 경우 CGLIB 형태로 들어가게 되는 것인가요? @Configuration이 붙지 않으면, 빈으로 등록된 객체들이 스프링 컨테이너에 의해 관리되지 않는다라고 설명해주셔서, 빈으로는 등록되었지만 스프링 컨테이너에는 주입이 안된 것인지, 아니면 @Bean을 통해 빈으로 등록됨과 동시에 스프링 컨테이너에는 들어가지만, 그저 관리만 안되는 것인지 궁금합니다!