안녕하세요. 선생님 수업을 통해 크롤링까지는 성공했습니다. HTTP POST 요청으로 받아왔는데요. 다만 Response가 넥사크로에서 사용하는 "SSV"형식으로 왔습니다. SSV:UTF-8ErrorCode:string=0ErrorMsg:string=Dataset:ds_PageList_RowType_TAXNO:string(255)TAXIDX:string(255)MEMBNAM:string(255)TSDATE:string(255)TSTIME:string(255)ACQBID:string(255)CARD_NAME:string(255)HID:string(255)ACQHID:string(255)TERMID:string(255)MTRCNO:string(255)CDNO:string(255)AUTHNO:string(255)ISTMMON:string(255)CURRCODE:string(255)AMT1:bigdecimal(25)AMT2:bigdecimal(25)AMT3:bigdecimal(25)ACQDATE:string(255)DDCEDI:string(255)...... <생략> 이렇게 못생긴 데이터가 왔는데요. 이걸 json으로 파싱하고싶어서요. 이리저리 혼자서 아스키코드 찾아보고 US, RS 사용해서 어떻게든 파싱은 했는데, 제가 짠 로직이 맞나 싶어서요. (일단 작동은 되는데.. ) 혹시 선생님이라면 어떻게 하실까 싶어서요. 이런걸 잘 파싱하려면 알고리즘을 공부해야되는걸까요? 아! 그리고 깃헙에 혹시 라이브러리가 있나 찾아봤는데요. 안나오더라구요. 이게 제일 슬펐어요. 그나저나 저런거 만드는 사람들은 정말 괴물같네요.. 저런걸 도대체 어떻게 만드는 걸까요? (코드가 본문에 저렇게 붙여넣어지는 기능도 신기하네요.. 저런건 또 어떻게 만드나요?)
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] https://drive.google.com/file/d/1GmEDrs703xOvPzwZo3G7XQ8PomDtwyqn/view?usp=drive_link jpa로 회원가입 테스트를 하려고하는데 실패합니다.. properties의 ddl-auto를 create로 수정하는것으로 해결할수있지만 설정을 변경하는것은 아닌것같아서 질문드립니다. @Transactional이 원인인가 의심스럽습니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의 내용들을 보다 보면 '뷰'라는 용어가 View 클래스를 상속받은, 예를 들어 ThymeleafView 클래스의 객체 등을 뜻하는 것 같기도 하고, 가끔은 templates 디렉터리의 하위에 있는 hello.html 같은 뷰 템플릿들을 뷰라고 말씀하시는 것 같기도 했는데 맞나요? 제가 헷갈렸던 건지 모르겠네요.. 뷰라는 용어의 범위를 넓게 생각해도 될까요? 아래는 오타인 것 같아서 제보합니다. 6. 스프링 MVC - 기본 기능(v20231202).pdf 24페이지에 있는 @PathVariable 관련 내용인데 @RequestParam 코드가 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] https://drive.google.com/file/d/1p8Pzk72m4puS8geRyfhQr4N1LEmijVeI/view?usp=drive_link 멤버서비스인티그레이션테스트에서 오류가 발생합니다. 오류메시지는 org.springframework.transaction.TransactionSystemException: JDBC rollback failed Caused by: java.sql.SQLException: Connection is closed java.lang.IllegalStateException: java.sql.SQLException: Connection is closed 와 같이 발생합니다.
본 강의 마지막 편인 웹 페이지 만들기에서 잘 되다가 addForm(상품등록)부터 white page에러가 뜨면서 안들어가집니다. 강의를 보고 다시 확인도 해봤는데 같은 부분에서 오류가 나서 접속이 안됩니다. 에러로 보아 addForm에 문제가 있는 것 같은데 도무지 오류를 찾을 수가 없어 질문 남깁니다. 구글 드라이브에 파일 압축해서 올려놓았습니다. https://drive.google.com/file/d/1Sq8rgY-2ZwPEoD8KaAeIfdXAPPJ-9NsT/view?usp=drive_link
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 강의를 듣다가 용어에 혼동이 와서 용어 정리 좀 하고 싶은데요. 서블릿이라고 말하는 것은 SpringMVC에서 디스패처 서블릿을 의미하는 것이 맞나요? 서블릿 컨테이너가 나와서 헷갈렸는데 강의 내용으로 대략 유추해볼 때 WAS(톰캣)을 말하는 게 맞나요? 서블릿 컨텍스트, 애플리케이션 컨텍스트 이렇게 두 가지를 따로 말하던데 어떤 개념인가요? 혹시 위 내용들을 강의에서 다룬 곳을 아시거나 참고할 만한 문서가 있으면 알려주시면 감사하겠습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 다음과 같이 오류가 발생하는데 어떻게 해야하나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 프로젝트 다운설정 인텔리J 프로젝트 설정 오류 내용 : 아래 내용보다 길지만 첫줄과 마지막 줄만 첨부 합니다. 1. 초기 2. 마지막 제가 어떤 부분을 고쳐야 할까요? 자바 기본 배우고 바로 넘어왔는데 처음 부터 막히니 막막하네요..;;;
안녕하세요 백기선님 설명해주신 HTTP Method 중, PATCH의 Idempotent에 대한 궁금증이 생겨 질문을 드립니다. 영상과 노트에서는 PATCH method가 멱등성을 가진다고 설명해주셨는데, 다른 레퍼런스에서는 PATCH가 멱등성을 가지지 않는다는 설명이 있어서 어떤게 올바른지 알고 싶습니다. 감사합니다.
1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 아니오 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] "mvc 를 패턴 - 적용" 강의에서 회원 목록을 조회할 때 계속해서 에러가 발생해서 질문드립니다. MvcMemberListServlet.class @WebServlet(name = "mvcMemberListServlet", urlPatterns = "/servlet-mvc/members") public class MvcMemberListServlet extends HttpServlet { private MemberRepository memberRepository = MemberRepository.getInstance(); @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { List<Member> members = memberRepository.findAll(); System.out.println("메모리에 저장된 데이터: "); for (Member member : members) { System.out.println("member.username = " + member.getUsername()); System.out.println("member.age = " + member.getAge()); } request.setAttribute("members", members); String viewPath = "/WEB-INF/views/members.jsp"; RequestDispatcher dispatcher = request.getRequestDispatcher(viewPath); dispatcher.forward(request, response); } } - 회원을 등록하고 " http://localhost:8080/servlet-mvc/members " 경로로 들어간후에, 위 코드의 실행 결과를 확인하면 MemberRepository 에 정상적으로 데이터가 들어 간 것을 확인할 수 있었습니다. 그런데 아래의 에러와 함께 whitelabel page가 보이네요.. org.apache.jasper.JasperException: The absolute uri: [ http://java.sun.com/jsp/jstl/core ] cannot be resolved in either web.xml or the jar files deployed with this application org.apache.jasper.JasperException: The absolute uri: [ http://java.sun.com/jsp/jstl/core ] cannot be resolved in either web.xml or the jar files deployed with this application 위의 에러들에 관해서 구글링을 해보니까 jsp 파일에서 코드를 잘못 작성했을 확률이 높다고 합니다. 그런데 jsp 파일에는 큰 문제가 없어 보입니다 ㅠ <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <meta charset="UTF-8"> </head> <body> 성공 <ul> <li>id=${member.id}</li> <li>username=${member.username}</li> <li>age=${member.age}</li> </ul> <a href="/index.html">메인</a> </body> </html> 그리고 아래는 설정 파일입니다. plugins { id 'java' id 'war' id 'org.springframework.boot' version '3.2.2' id 'io.spring.dependency-management' version '1.1.4' } group = 'hello' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '17' } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' // providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' testImplementation 'org.springframework.boot:spring-boot-starter-test' //JSP 추가 시작 implementation 'org.apache.tomcat.embed:tomcat-embed-jasper' implementation 'javax.servlet:jstl' //JSP 추가 끝 } tasks.named('test') { useJUnitPlatform() } 다른 질문을 보니 implementation 'javax.servlet:jstl' 이 부분을 주석 처리하고 다시 해보라는 답변이 있길래 해봤더니 여전히 에러가 발생합니다. 참고로 메인 클래스에 어노테이션은 저렇게 구성되어 있습니다. 도움 주시면 감사하겠습니다... @ServletComponentScan @SpringBootApplication public class ServletApplication { public static void main(String[] args) { SpringApplication.run(ServletApplication.class, args); } }
A폼에서는 required만 사용하고, B폼에서는 더 구체적인 레벨의 required.item을 사용한다는 가정하에, errors.properties 에 required.item 메시지를 정의해두면 A, B폼 모두 구체적인 레벨의 메시지가 적용될 것이라고 생각합니다. 즉, 여러 단계 레벨의 메시지를 작성해놓더라도, 항상 가장 구체적인 레벨의 메시지만 사용되지 않을까하는 의문입니다. 그럼 결국, 폼에 따라 메시지를 다르게 사용하는 게 아니라 모두 구체적인 메시지를 사용하게 되는 것인데, 어떻게 실무에서는 이걸 다르게 적용되도록 구현하는지 궁금합니다.
단순 값에 의한 처리는 값이 일단 넘어오긴 하니까, bindingFailure 값을 false로 둔 것이고, 타입에 대한 처리는 내부에서 bindingFailure 값이 true로 전달된다고 이해하면 될까요? 이 타입에 대한 처리 코드는 따로 작성할 필요는 없는 건가요? (bindingFailure가 true인)
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 현재 실행이 안되고 있는 상태입니다. 무슨 문제인지 알고 싶습니다 ㅜㅜ 구글 드라이브 링크입니다. https://drive.google.com/drive/folders/15MQr82y4Qdcm4Cs7dZItZMa7rG_fJevw?usp=sharing
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] simplejdbcinsert를 여러 테이블에 적용해야 한다면 적용할 테이블 개수에 맞춰서 객체를 생성해줘야 할까요?