분류 전체보기189 [Spring] Di 따라하기 2 class House{} class WoodHouse extends House{} class BrickHouse extends House{} class Window{} public class DiTest2 { Map map; public DiTest2() throws Exception{ // 지금 까지는 getObject(String key)라는 메서드를 통해서 // key 값을 받은 value에 해당하는 객체를 생성하여 리턴하였는데 // 이제부터는 Properties 파일에 정의되어 있는 모든 Class를 Map에 // 넣은 상태로 꺼내 쓰는 형식으로 만들어 보겠다. try { Properties p = new Properties(); p.load(new FileReader("HouseConfig.tx.. 2022. 6. 22. [Spring] Di 따라하기 1 class House{} class WoodHouse extends House{} class BrickHouse extends House{} class Window{} main{ // DI 따라하기 1단계 House h = new House(); //House 라는 객체를 사용하다가 WoodHouse 라는 객체를 //사용 하려면 2부분 모두 수정해야 한다. WoodHouse wh = new WoodHouse(); //이러면 비지니스 로직을 수정해야 하는데 //이를 수정하기 위해 다음 단계로는 다형성을 이용하게 된다. //그러면 1부분만 수정을 하면된다. House wh2 = new WoodHouse(); House wh3 = new BrickHouse(); System.out.println("h = " .. 2022. 6. 22. [Intellij] 자주쓰는 Intellij 단축키 Alt + 0~9 >>Alt + 1 : Project Explorer 열기 닫기 Shift + Shift >> 전체 검색창 열기 Alt + Enter >> 추가되지 않은 Import 추가 Ctrl + Alt + O >> 사용하지 않은 Import 삭제 Ctrl + d >> 한줄 복사 Ctrl + y >> 한줄 삭제 Ctrl + Alt + I >> 자동 들여쓰기 Ctrl + Alt + L >> 자동 들여쓰기 + 괄호 정리 Ctrl + Shift + Enter >> 자동완성 Alt + Insert >> 생성자 생성 sout >> System.out.println(); soutv >> 변수.soutv -> System.out.println("변수 : " + 변수); Ctrl + Shift + Up/Down >.. 2022. 6. 20. [Intellij] Intellij - import 방법 / 톰캣 log 깨짐 현상 복구 >> 1. Intellij 의 기본 Repository 는 사용자 이름 > IdeaProjects 에 프로젝트가 생성된다. >> 2. import 하고자 하는 파일을 선택하여 Ok 를 누르고 > Maven Project로 만들어야 한다. >>3. Configuration 추가하기 >> Tomcat 설정 >> Deployment > artifact 추가 > 프로젝트 선택 - war(압축된 상태로 배포) / war exploded (압축 풀린상태로 배포) >> 하단의 Application context 경로 설정 >> library 추가하기 >> encoding --> x-windows-949 변경후 한글깨짐 수정됨 >> STS 에서 EXPORT한 파일을 Intellij 에서 Import 해봤다. =====.. 2022. 6. 20. [Spring] Export / Import Spring 프로젝트 Export 방법 1> Export > General > Archive File > To archive File 경로 설정 후 finish' 2> 설정한 경로에 zip 파일 생성 Import 방법 1> Import > Existing Projects into Workspace 2> select archive File > zip 파일을 선택 2022. 6. 20. [Spring] form:form 태그 공부 form:form 태그란 >> Spring에서 제공해주는 태그라이브러리로 아래의 태그라이브러리를 import 해주면 된다. 사용방법으론. >> 아래와 같은 형태가 기본형태이다. >> "action 속성"을 명시하지 않으면 현재 페이지의 URL을 Action 속성값으로 가진다. >> method의 default는 POST 방식이다. ex) 현재 페이지의 URL이 " localhost/ch2/register/add " 인경우 POST 요청을 보내면 " localhost/ch2/register/add " 동일한 주소의 POST 방식으로 요청이 들어간다. /register/add 요청이 GET 방식일때는 윗부분에 맵핑되고. /register/add 요청이 POST 방식일떄는 아래부분에 맵핑이된다. 추가 적으로 .. 2022. 6. 19. [Spring] 데이터 검증 데이터 검증 >> 데이터 검증은 GET/POST 방식으로 요청이 온데이터를 >> WebDataBinder에서 ①타입변환이 끝난 후에 해당 데이터가 정당한 데이터 인지 확인하는 단계로 ②데이터 검증 단계를 거친다. 지금까지 데이터 검증은 Controller에서 직접 처리하는 방식을 사용했었다. 하지만 이것은 검증이라는 관심사를 분리하여 사용해 보겠다. 검증의 종류를 따지자면 많은 검증이 있겠지만 범위로 나눠보자 Controller 안에서 사용하는 검증(Valid) 또는 전 Controller에서사용하는 검증이 있다. 우선 Controller안에서 사용하는 검증에 대해서 알아보자 우선 검증(Valid) 관심사를 분리하기 위하여 검증을 위한 클래스를 생성해 준다. 검증을 위한 클래스는Validator inte.. 2022. 6. 18. [Spring] 데이터 변환 데이터 변환 >> Web 상에서 GET/POST 방식으로 Server 쪽으로 값을 보내게 되면 ①데이터 변환 ②데이터 검증 단계를 거치게 된다. >> 아래의 요청이 들어가면 URL?year=2022&month=6&day=18 >> ParameterMap 에 의해서 값들이 String으로 변환되고 >> WebDataBinder에 의하여 ①데이터 변환 ②데이터 검증 단계를 거쳐서 >> 변환하고자 하는 데이터 타입으로 변환되게 된다. >> 타입변환에 대해서 알아보자 ParameterMap 에서 타입변환될때 보통 String 타입과, Integer 타입으로의 변환은 Spring에서 자동으로 변환해주지만 >> Date 타입의 변환이라던지, 내가 원하는 형식으로 변환할 경우는 직접 타입을 변환해주어야 한다. 그렇지.. 2022. 6. 18. [Spring] Spring MVC vs RESTful 1. Spring MVC >> Client에게 요청이 들어오면 Dispatcher Servlet에 의해 해당 Controller에게 요청을 넘기고 Controller는 데이터를 가공하여 View를 Dispatcher Servlet에게 전달하면 이를 Client에게 전달하는 방식이다. 2. Restful >> Client 에게 요청이 들어오면 Dispatcher Servlet이 해당 컨트롤러 또는 RestController에게 전달하고 해당 컨트롤러에서 View를 리턴하는것이 아닌 데이터를 리턴한다. (JSON or XMl 형식) >> Controller를 사용할경우에는 해당 요청메서드에 @ResponseBody 어노테이션을 붙여야 한다. >> RestController는 Spring 4.x 버전부터 사용.. 2022. 6. 16. [Spring] 예외처리2 >> @ControllerAdvice 모든 컨트롤러에서 발생하는 에러처리를 하며, 만약 컨트롤러내 에러 처리하는 @ExceptionHandler이 있다면 가까운 @ExceptionHandler에서 처리가 된다. @ControllerAdvice("패키지 지정/ Default 전체") @ExceptionHandler("처리할 예외클래스 지정") @ResponseStatus(HttpStatus.~) >> 예외처리 매서드 앞에붙인다. >> 예외처리 코드를 바꿀때 사용한다. 200번 --> 400번대 혹은 500번대로 변경해주는것 >> 사용자 정의 예외클래스 만들때 앞에 붙일수 있다. 디폴트인 500번대를 -> 원하는 에러코드로 변경가능 >> web.xml 을 통해서 error 페이지 추가해주는 방법으로 Tomc.. 2022. 6. 14. 이전 1 ··· 6 7 8 9 10 11 12 ··· 19 다음