목록Java (42)
겉바속촉
저장 객체에서 값을 추출하는 순서가 있습니다. page 👉 request 👉 session 👉 application 만약 키워드를 ${cnt}라고 해주었는데 우연찮게 모두 cnt를 사용하고 있다면..? 🤷♀️🤷♀️🤷♀️ 오류가 날 것 같지만 순서대로 찾기때문에 오류는 발생하지 않습니다. page에서 값을 찾아버리면 더이상 찾지 않고 못찾았다면 그 다음 순서인 request에서, session에서, application에서... 이런 방식으로 찾기 때문입니다. 아니면 한정사로 객체를 제한시켜주는 것도 가능!!! ${pageScope.cnt}
원래 알고있던 방식 : 저장 객체에서 값을 받아와서 출력 Controller View ✔ 데이터 가공 후 request에 저장 ✔ request.setAttribute("cnt", 30); ✔ 저장된 데이터 사용 ✔ request.getAttribute("cnt") 하지만 VIEW에서 가능한한 JAVA 코드 사용을 지양하여 만들어주어야합니다. 그럼 간단한 표현 방식이 필요하겠네요 바로 키값을 그대로 넣고 앞에 달러 기호 넣어주기 ${cnt} 만들어봤던 MVC의 VIEW에 추가로 값을 넣어볼게요 2022.06.15 - [IT 일기 (상반기)/JAVA] - JSP MVC 1 JSP MVC 1 MVC1 코드 형태 ✔ 입력과 제어를 담당 : Controller [자바코드] ✔ 출력 데이터 : Model [출력을..
MVC1 코드 형태 ✔ 입력과 제어를 담당 : Controller [자바코드] ✔ 출력 데이터 : Model [출력을 위한 변수] ✔ 출력 담당 : View [HTML 코드] 👉 입력 코드와 출력 코드를 분리하는 것이 포인트 👉 Model에 있는 변수로 Controller에서 제어 코드를 만들고 jsp는 그 코드를 통해 View를 보여주는 구조
jsp파일을 만들어 보면 다음과 같이 구성되어 있음 html과 비슷한 것을 확인할 수 있다. 이제 태그 사이에 값을 입력해서 출력해보면~ 잘 나오는 것을 확인할 수 있다. 여기서 메리트는 println과 같은 것을 쓸 필요없다는 것 그럼 반복문을 써서 여러 줄이 출력되게 하려면?? 어쩔 수 없이 코드를 넣어주어야 하는데 위처럼 넣어주면 출력하고자 하는 부분 뿐만 아니라 그것을 구현한 코드도 함께 출력이 되어버림 ddddl용~~ 그래서 를 꼭 해주어서 구분시켜야함. 그럼 다음과 같이 원하는 값만 출력이 됩니당
서블릿을 공부했으니 이제 JSP를 해보도록 하겠습니다:) jsp라는 확장자를 가진 파일을 요청받으면 제스퍼는 서블릿 코드를 만들어버립니다. WAS가 바로 제스퍼에게 넘겨서 서블릿을 만들게 한다고 생각하면 됩니다. JSP파일을 하나 만들어두고 난 뒤 이클립스에서 작성하고 있는 워크스페이스 폴더를 살펴볼게요 \workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\work\Catalina\localhost\ROOT\org\apache\jsp 저 경로로 들어가보면 만들어두었던 jsp의 Class파일과 Java 파일 두 개가 존재합니다. Jasper가 JSP 파일을 Class 파일(Servlet)로 컴파일 했기 때문입니다. HTML의 확장자를 바꿔 JSP ..
상태 유지 구현 배운 것들 모두 정리해볼게요:) 1. Application 2022.06.10 - [IT 일기 (상반기)/JAVA] - 상태 유지 구현 1. Application 객체 상태 유지 구현 1. Application 객체 지난 번에 살짝 알아봤던 상태 유지 구현하는 방법 중 하나 사용해보기 2022.06.10 - [IT 일기 (상반기)/JAVA] - 상태유지를 해야하는 경우 상태유지를 해야하는 경우 입력 폼은 한개뿐이고 값을 여러 2-juhyun-2.tistory.com 2. Session 2022.06.10 - [IT 일기 (상반기)/JAVA] - 상태 유지 구현 2. Session 객체 상태 유지 구현 2. Session 객체 상태 유지 구현 두번째로는 Session 객체!! Applica..
크롬창을 닫아버렸을 때.... 부라우저가 닫히면 저장되어있던 쿠키는 어떻게 될까요..? 따로 설정하지 않았다면 브라우저의 생존주기와 동일하게 가기 때문에 사라지게 됩니다 그래서 우리는 maxAge라는 옵션을 통해 브라우저와는 별개로 외부파일로 저장하는 것이 가능합니다. 다음 캡쳐화면을 보면 setMaxAge라고 하여 만료날짜를 설정할 수 있습니다 단위는 초!!!!! 다음과 같이 설정해주면 하루동안으로 설정한 것이죠 이제 진짜로 브라우저 창을 닫아도 쿠키값이 저장이 되는지 보도록 하겠습니다 우선 값을 넣어주고 쿠키를 찾아보니 다음과 같이 만료일자가 설정되어 있는 것을 볼 수 있습니다. 이제 모오오오오든 크롬창을 닫고 다시 켜볼게요 그리고 쿠키를 확인해보면 한개만 남아있는 것을 볼 수 있습니다:)
상태 유지 구현에 대해서 배우면서 3가지를 공부했습니다. 1. application 2. session 3. cookie 이번에는 cookie의 path옵션에 대해서 알아보려고 합니다:) 지난번에는 cookie에 대한 옵션을 하나도 지정해주지 않고 구현했었습니다. 2022.06.13 - [IT 일기 (상반기)/JAVA] - 상태 유지 구현 3. Cookie 상태 유지 구현 3. Cookie 상태 유지에 대해서 알아보고 있는데요:) 2022.06.10 - [IT 일기 (상반기)/JAVA] - 상태유지를 해야하는 경우 상태유지를 해야하는 경우 입력 폼은 한개뿐이고 값을 여러번 입력하는 경우 서버는 유저 2-juhyun-2.tistory.com 하지만 다음과 같이 옵션을 주었는데요 이것의 의미는 현재 루트로 ..
상태 유지에 대해서 알아보고 있는데요:) 2022.06.10 - [IT 일기 (상반기)/JAVA] - 상태유지를 해야하는 경우 상태유지를 해야하는 경우 입력 폼은 한개뿐이고 값을 여러번 입력하는 경우 서버는 유저가 입력했던 값을 기억하고 있어야겠죠?? 그럴때 쓰는 방법은 5가지 입니다. 도구 : 객체에 값을 담아두고 저장해두었다가 쓰는 경 2-juhyun-2.tistory.com 첫번째로 application 2022.06.10 - [IT 일기 (상반기)/JAVA] - 상태 유지 구현 1. Application 객체 상태 유지 구현 1. Application 객체 지난 번에 살짝 알아봤던 상태 유지 구현하는 방법 중 하나 사용해보기 2022.06.10 - [IT 일기 (상반기)/JAVA] - 상태유지를 ..