dev/Spring49 [Spring] 예외처리 페이지 예외처리방법 1. 일단 예외를 throw new Exception() 을통해서 예외를 발생시켜 보자. >> 해당 예외처리에 대한 조치가 없으므로, 이것은 서버에 대한 문제기 때문에 500대 에러가 발생했다. 2. 1번의 문제를 해결하기 위해 try-catch 문을 통해서 예외처리해보자 try-catch 문을 쉽게하기 위해서는 >> 블록지정 후 > 우클릭 > Surround With > try-catch를 통해서 쉽게 처리할 수 있따. >> 예외 처리후에는 404 에러가 발생한 것을 확인할 수 있는데 이는 리턴 타입이 void이기 때문에 해당 요청에 쓰인 페이지를 찾을수 없기 떄문에 404가 발생했다 즉 ex.jsp를 못찾았다는 의미 그렇다면 에러 처리를 하기 위해서 메서드마다 Try-Catch문을.. 2022. 6. 13. [Spring] Session session이란? >> 서로 관련된 요청-응답들을 하나로 묶은것 - 쿠키를 이용 >> Browser마다 개별 저장소(Session객체)를 서버에 제공 (1 : 1) >> Session은 서버에 저장된다. Browser에서 서버 요청을 하면 ------------------------------> 세션을 끝내는 방법 >> 자동종료 : Time Out >> 수동종료 : inValidate() 세션이 끝난 후 새로운 세션 ID 가 응답으로 보내짐. 그 후 에는 반복된다. 위의 과정이 =========================================================================================== 생성과정을 말하면 1. Browser에서 Server로 요청을 .. 2022. 6. 13. [Spring] Cookie 쿠키(Cookie)란? >> 클라이언트 식별 기술이다. >> 이름과 값의 쌍으로 구성된 작은 정보, 아스키 문자만 가능하다. >> 서버에서 생성 후 전송, 브라우저에 저장, 유효기간 이후 자동 삭제 >> 서버에 요청시 domain, path 가 일치하는 경우에만 자동전송 (하위경로 포함) name = value 생성 방법 Cookie cookie = new Cookie("id", "GoodBoy"); 2022. 6. 9. [Spring] redirect, forward 1. redirect 1) 요청 : /ch2/write.jsp -----> write.jsp // 브라우저가 자동으로 2) 으로 재요청을 실시한다 GET방식으로 (redirect는 GET방식임.) 2) 응답 : write.jsp 3) 요청 : /ch2/login.jsp 3) 응답 : login.jsp HTTP/1.1 302 //redirect 300번대의 요청 // 다른 URL로 재요청 Location : /ch2/login.jsp --- header O // body X content-Language : ~ Content-Length : ~ // redirect시에 2번의 요청이 들어 간것을 확인할 수 있다. 요청 주소창의 URL이 변경된다 재용청하는 것으로. 2. forward = 요청을 받아서 요청.. 2022. 6. 9. [Spring] GetMapping, PostMapping Controller로 데이터를 넘겨줄때 방식이 크게 2가지 방식이있는데 GET / POST 방식이다. GET방식의 경우는 데이터가 URL에 노출되므로 회원가입이나, 데이터보안이 필요할 경우 사용하지 않는다. Controller에서 GET방식으로 데이터를 받는 방법은 2가지가 있다. @RequestMapping 같은경우 default 값이 GET방식이고, method를 통해서 형식을 설정할수 있다. > * URL 맵핑시 주소가 같으면 안되며, method가 다르면 가능 * GetMapping/PostMapping 시에는 Class에 Mapping되어있는 주소 이후의 주소만 적어도된다 즉. ex) Class에 RequestMapping("register") 가 붙어있다면 ex) GetMapping("add".. 2022. 6. 9. [Spring] EL, JSTL EL 이란 ? >> Expression Language 의 약자로 JSP에서 EL을 통해 Attribute, Parameter를 통해 넘어오는 값을 편리하게 접근하여 사용할 수 있습니다. >> ${} 형식으로 나타내며 >> EL 을 사용하기 전에는 의 JSP 문법으로 으로 나타내던것을 간단하게 ${}으로 표현하고 있다. @ Attribute EL .java 에서 setAttribute("key", "value"); 를 통해서 값을 저장하면 JSP페이지 에서 ${key} 를 통해서 value 값을 출력할 수 있습니다. Attribute EL은 총 4구역으로 나뉘는데 1. pageContext 2. requset 3. Session 4. application 으로 나뉘어 집니다. 1. pageContext .. 2022. 6. 4. [Spring] 회원가입 페이지 >> 회원가입 페이지는 정적 리소스 이므로 webapp > resources 하단에 파일을 생성해준다. 해당 페이지를 호출 하려면 >> 하단의 경로로 호출 한다. >> 이때 resources 경로를 없앨수 있는데 이는 spring > servlet-context.xml 을 통해서 변경할 수 있다. >> root-context.xml은 Web과 관련없는 Spring 설정을 다룰때 사용한다. >> mapping 을 resources를 지워주고 /**로 설정한다 >> 그러면 다음부터 정적 리소스를 호출할때 resource를 넣어주지 않아도 된다. >> Form 태그 안에서 - 등 다양하게 있는데 Form 태그란 ? >> 문서 양식으로 데이터를 입력하여 controller로 전송할때 사용한다, >> - acti.. 2022. 6. 4. [Spring] Tomcat port 변경 >> Tomcat의 Port 변경은 server.xml 설정을 변경해줘야 한다. >> server.xml 은 2개가 있는데 >>1. 톰캣을 설치했을때의 경로에서 Tomcat 9.0>conf>server.xml 여기서 설정을 바꾸게 되면 톰캣 전체의 설정을 바꾸게 되는것이고, >>2. STS 의 Servers 파일에서 server.xml 을 바꾸게 되면,, 해당 STS 프로젝트 내에서 Tomcat 설정을 따로 지정하여 줄수 있다. 프로젝트 실행시 우선순위는 STS의 설정이 더 우선순위가 있다 (1실행 후 --> 2실행) 즉 늦게 실행된 설정이 적용이 된다. 따라서 프로젝트마다 설정을 다르게 하려면 STS 내에서 Server>server.xml에서 Connect port를 변경하자 2022. 6. 4. [Spring] ModelAttribute, BindingResult @ModelAttribute >>적용 대상을 Model의 속성으로 자동 추가해주는 애너테이션으로, 반환타입 또는 컨트롤러 매서드의 매개 변수로 사용 가능 >> 즉 Model m --> m.addAttribute() 해서 추가해주던것을 자동으로 해줌 >> 반환 타입 앞에서도 사용이 가능하다. >> http://localhost:8080/ch2/getYoilMVC5?year=2022&month=6&day=4 실행결과 >> model.addAttribute() 하지 않아도 model을 통해 전달되어 >> browser 에서 2022 // 6 // 4 // 토 가 출력되는 것을 확인 할 수 있다. 컨트롤러 매개변수 1. 기본형 @RequsetParam 4개의 표현식은 결과적으로 다 같은 말로 >> @ModelA.. 2022. 6. 4. [Spring] RequestParam @RequestMapping("/requestParam2") //public String main2(RequestParam(name="year" require=false) String year ) public String main2(String year) { // http://localhost/ch2/requestParam2 --> year=null // http://localhost/ch2/requestParam2?year --> year="" (빈문자열) return "yoil"; } 현재 주석 처리되어 있는 부분과 // 주석처리되어 있는 부분 아래는 같은 표현으로 (RequestParam(name="year" require=false) 이부분은 생략이 가능한 부분이다. name의 경우는 JSP에서 .. 2022. 6. 3. 이전 1 2 3 4 5 다음