스프링의 정석

스프링의 정석

스프링의 정석 후기 - 강의 후기X, 패스트캠퍼스 후기

이 강의 얼리버드? 아무튼 처음에 오픈 할인해서 251,000원 주고 샀다. 강의 자체는 좋다. 자바의 정석이 잘 맞기도 하고 무료로 들어서 도움이 되고자 스프링 강의도 바로 샀다. 그런데 기분 나쁜게 후기를 보면 이 가격보다 한 10만원 싸게 산사람도 있다,,, 이럴거면 왜 오픈 할인해서 팔았는지 모르겠다. 오픈할 때 가격 오른다고 협박해놓고 싸게 파는게 말이 되는가? 핸드폰도 아니고 계속이 떨어지고 지금은 정가가 30만원이다. 물론 강의 자체는 좋다. 돈이 그렇게 아깝지는 않다. 그런데 스프링의 부트 사려고 하니까 좀 고민된다. 왜? 가격 통수맞을까봐,, 지금 글 쓰고 있는 시점도 협박한다 가격오른다고, 무슨 헬스장 보는거 같다. 회원님 내년에면 가격 오르세요~ 이러고서 내년가면 새해 할인 이벤트해서..

스프링의 정석/spring error

pom.xml에러 : Could not initialize class org.apache.maven.plugin.war.util.WebappStructureSerializer + plugin 추가 하는 방법

Maven - Update Project 후에 Could not initialize class org.apache.maven.plugin.war.util.WebappStructureSerializer 에러가 사라지질 않는다. maven-war-plugin 3.2.2 위를 넣으라는데 넣는 위치는 안에 넣어야 한다. plugin 모여있는 곳에 넣어야 함.

스프링의 정석/Ch. 03 Spring DI와 AOP

01. Spring DI 흉내내기(1)

1. 변경에 유리한 코드(1) - 다형성, factory method SportsCar에서 Truck로 변경하면 2번 고쳐써야 하지만 다형성에 의해 조상 타입의 참조변수로 바꾸면 변경 포인트가 1개로 줄어든다. 왼쪽 코드를 오른쪽으로 바꾸면 static Car getCar()는 기능을 제공하고 Car car = getCar();는 이 기능을 사용한다. 기능 제공 코드는 1개이지만 사용 코드는 n개가 될 수 있다. 왼쪽을 보면 사용하는 코드를 모두 바꿔야 하지만 오른쪽은 사용하는 코드는 바꾸지 않아도 된다. 사용하는 코드를 바꾸는게 아니라 기능을 제공하는 코드에서 SportsCar()를 Truck()으로 바꾸면 변경 포인트가 줄어든다. Properties는 config.txt파일을 읽어서 객체를 생성한다...

스프링의 정석/Ch. 02 Spring MVC

34. IntelliJ 사용법 익히기

1. 프로젝트 열기 File - Open에서 ch2_final 연다. 2. 단축키 Help - Keyboard Shortcuts PDF를 클릭하면 PDF파일로 단축키가 나온다. File - Settings에서 keympa을 입력하면 단축키를 수정할 수 있다. shift 두 번 클릭하면 검색 가능하다. 3. Edit 어느 상태에서 ESC키 입력하면 Ediotr 창으로 Focus 이동한다. 소스 파일에 space로 미리보기 사용할 수 있다. 4. switcher 다른 창이나 열려있는 파일로 이동하는 단축키는 ctrl+tab이다. ctrl을 누른 채로 tab또는 shift+tab(반대 방향)으로 이동할 수 있다. 5. Recent Files ctrl+E는 최근 수정한 Recent File과 Location을 ..

스프링의 정석/Ch. 02 Spring MVC

33. 프로젝트 export와 import

1. STS에서 프로젝트 추출 Export Archive File - Next> Browse를 클릭한다음 압축 파일이 저장될 폴더를 선택한다. 2. STS에서 프로젝트 import https://github.com/castello/spring_basic/blob/main/download/ch2_final.zip Import - Existing Projects into Workspace Select Archive file에서 Archive는 zip 파일이다. ch2_final 프로젝트 import 되었다. 3. IntelliJ에서 프로젝트 import ch2_final 압축을 푼다음 "C:\Users\name\IdeaProjects"경로에 복사해서 붙여넣는다. IntelliJ에서 ch2_final open..

스프링의 정석/Ch. 02 Spring MVC

32. IntelliJ 설치 - Windows

프로젝트를 생성한다. JDK 버전은 11이다. 프로젝트 파일은 사용자 아래 IdeaProject 폴더 아래에 생긴다. 프로젝트를 생성하면 위와 같은 화면이 뜬다. sout을 입력하면 System.out을 자동으로 완성한다. 실행하면 "Hello" 출력된다.

스프링의 정석/Ch. 02 Spring MVC

30. 데이터의 변환과 검증(1)

1. WebDataBinder URL 요청을 위와 같이 했을 때 Query String에 있는 year, month, day는 parameter Map 형태로 데이터가 담긴다. Controller에서 Mydate 매개 변수 타입으로 받으면 오른쪽 객체가 만들어진다. 요청할 때 넘어온 year, month, day를 binding할 때 중간에 WebDataBinde가 타입 변환, 데이터 검증 두 가지 역할을 한다. parameter Map 자료형은 String이고 Mydate 자료형은 int이므로 타입이 불일치 해서 형변환을 해야한다. 타입을 변환하고 결과는 BindingResult에 담고 에러가 발생하면 같이 저장한다. month는 1~12값을 가져야해서 타입을 변환한 다음에 데이터 검증을 한다. 문제가..

스프링의 정석/Ch. 02 Spring MVC

29. DispatcherServlet 파헤치기

1. DispatcherServlet이란? Controller의 공통 부분인 입력을 따로 빼낸 것이 DispatcherServlet이다. DispatcherServlet은 전처리이다. 각 서블릿이 공통적으로 처리해야 할 일을 해주는 것이 전처리라 생각하자. 2. Spring MVC의 요청 처리 과정 DispatcherServlet이 요청을 받고 Controller에게 요청의 결과로 view 이름을 받고, 이에 해당하는 jsp를 찾아 응답을 해주는 것이 MVC 요청 처리 과정이다. 하지만 중간에 생략된 것이 있다. HandlerMapping에 Key는 URL, Value는 메서드 형태로 mapping되어 있다. 요청으로 "ch2/register/add"가 들어오면 HandlerMapping이 URL에 해당..

스프링의 정석/Ch. 02 Spring MVC

27. 예외처리(1) - 실습

실습 코드 : https://github.com/castello/spring_basic/blob/main/ch2/error.jsp error.jsp, ExceptionController를 만든다. ExceptionController는 예외를 일부러 발생시킨다. com.fastcampus.ch2.ExceptionController.main(ExceptionController.java:10) 이렇게 예외가 발생했는데 처리를 안하면 톰캣이 500 error를 발생한다. Try/catch Block을 이용해서 예외처리를 해준다. 예외처리를 하니 404 error로 바뀐다. 반환 타입이 void이기 때문에 view를 mapping된 ex.jsp로 찾는다. 반환 타입을 수정하고 error.jsp가 출력되도록 바꾼다..

스프링의 정석/spring error

Exception in thread "main" java.lang.ClassNotFoundException

"com.fastcampus.ex2.Hello"에서 main 메서드를 찾지 못한다. 분명히 똑같이 따라 했는데,,, package명 잘못 적었다. ⭐ 오타에 주의하자!

돌맹이떼굴떼굴
'스프링의 정석' 카테고리의 글 목록