Spring 18

[jsp]JSTL

※ JSTL(Java Server Pages Standard Tag Library) - 자주 사용하는 커스텀 태그(Custom Tag)의 표준 ▶ JSTL 환경설정 - javax.servlet-jsp.jstl-1.2.1.jar / javax.servlet.jsp.jstl-api-1.2.1.jar => 프로젝트 lib 에 넣기 - 태그 라이브러리 사용을 위해서는 JSP 페이지에 디렉티브를 작성해야한다 - prefix 속성 : uri 속성에 명시된 값 대신에 해당 페이지에서 prefix 속성값으로 명시된 값을 사용하겠다는 것 [1] core http://java.sun.com/jsp/jstl/core - 가장 기본 라이브러리 - 변수 선언하는것 - if문 , for문, URL 처리 등에 사용한다 ▷ choo..

Spring 2022.05.24

[jsp] 표현언어

※ 표현언어 - 자바의 표현식 을 대신한다고 생각하면 됨 - 표현 언어(Expression Language) : jsp 페이지에서 사용되는 자바 코드를 대신해서 액션 태그 엘리먼트의 속성에 값을 지정하는 역할을 함 - null 값을 가지는 변수에 대해 좀 더 관대하고, 데이터 형변 환을 조금 더 자동적으로 해줌 ㄴ null을 자동으로 공백으로 바꿔줌 - java EE8 : jsp2.3, servlet 4.0, EL 3.0, JSTL 1.2 모델2 ) request setattribute 저장 => 뷰(jsp)에서 getattribute ㄴ 표현언어로 이 과정을 간단하게 할 수 있다. ※ EL 표현식 - el 표현식에는 연산자 사용 가능, 내장객체 지원함 - vo.gettitle , vo.getname 이..

Spring 2022.05.22

[jsp] 모델2 기반의 MVC 패턴 게시판의 흐름

▶ do / Redirect - 완성된 페이지는 do. - 나와 전혀 상관없는 완성된 어떤 페이지로 갈 때 - 입력, 수정, 삭제 : 짝꿍이 없음. 이미 처리가 끝나고 확인페이지로만 간다 > 리다이렉트 메세지가 없으면 redirect ㄴ message.jsp : location.href 는 Redirect 이다. Redirect 는 ContextPath 가 필요함 => 이걸 아예 message 에 연결해서 보내줌 = > 절대참조를 하되 ContextPath 는 빼고 보낼 수 있음 ▶ jsp / Forward - 미완성은 jsp. - 미완성이니까 일을 시키려고 보내는 것. 너 이거 해 ! 미완성인 내 짝꿍한테 forward 로 보내서 합체를 함 - 조회(select)는 보통 짝꿍이 있으니까 forward ..

Spring 2022.05.22

회원가입

▶ 입력된 이메일, 전화번호 합쳐서 DB에 저장하기 - 파라미터로 email1,email2,email3 받아온 후에 아래과정을 통해 합쳐서 VO 에 넣으면 됨 VO 는 useBean으로 불러옴 String hp="", email=""; if(hp2!=null && !hp2.isEmpty() && hp3!=null && !hp3.isEmpty()){ hp=hp1+"-"+hp2+"-"+hp3; } if(email1!=null && !email1.isEmpty()){ if(email2.equals("etc")){ if(email3!=null && !email3.isEmpty()){ email=email1+"@"+email3; } }else{ email=email1+"@"+email2; } } ▷ DB에 저장한..

Spring 2022.05.19

[jsp] 모델2 기반의 MVC 패턴

※ 모델2 기반의 MVC 패턴 = > MVC 패턴 = 모델2 MVC 패턴(Model-View-Controller pattern) - 면접질문 - 전통적인 GUI 기반의 어플리케이션을 구현하기 위한 디자인 패턴 ▶ 모델1 - JSP 혼자 북치고장구치고 다 하는게 모델1 - 요청받고 응답하고 브라우저에 뿌려주는것 전부 JSP 가 함 - 뷰와 컨트롤러가 같은 jsp 페이지 안에서 실행되어지고, jsp 로 요청하고 보여준다 => 로직처리와 결과처리를 전부 JSP 가 하는데, 이렇게 섞이는 것보다 모든지 분리해서 작업하는게 좋다 ▶ 모델2 - 컨트롤러가 요청을 받아서 모델에 의뢰해서결과를 받아오고, 그 결과를 뷰한테줘서 보여준다 - 컨트롤러는 가운데에서 중재하는 역할 - 서블릿이 사용자의 요청을 받아서 비즈니스 ..

Spring 2022.05.18

[jsp] 에러

※ 에러 jsp 에서의 에러 메시지 : 에러가 발생하면 그 에러가 어떠한 경로로 발생하게 되었는지 스택을 뒤집어서 그 경로를 추적하여 에러 메시지 표시 에러처리 : 원래의 에러 메시지 대신 사용자에게 익숙한 문구가 표시되도록 web.xml에서 에러를 코드별로 처리하도록 작성 404 - 사용자가 잘못된페이지 요청 500 - 서버에서 문제가있을 때 (코드오류) web.xml에서 태그안에 에러코드명을 쓴다 ▽ server.xml 이런 에러가 나면 이 페이지를 보여줘 404 //404에러가 나면 /herbmall/sandbox/errorTest/404code.jsp // 원래는 이렇게 절대참조로 써야하는데 /sandbox/errorTest/404code.jsp //web.xml 은 절대참조인데, CONTEXTP..

Spring 2022.05.17

[jsp] 쿠키 / 세션

※ 쿠키 상태가 없는 (stateless,connectless) 프로토콜을 위해 상태를 지속시키기 위한 방법 별로 중요하지않은 정보를 저장하는 용도 (중요정보는 쿠키거부기능이 들어있어서 저장되지않음) 임시파일이다. 4kb이하로 생성 (크게는 못함) 쿠키 - 클라이언트쪽에 저장 (보안이 안좋음) 세션 - 웹 서버쪽에 저장됨 (보안이 좋음) 중요한 정보는 여기 저장 ▶ 쿠키사용방법 쿠키클래스 객체를 생성해서 사용함 구성요소 = name value 쌍, (+유효기간,도메인등) setMaxAge(유효기간) : 꼭 설정 ! 초단위, 이 시간을 벗어난 쿠키는 사용기간이 만료된 쿠키 response.addCookie(cookie) = 쿠키가 생성됨. 여러개 담을 수 있다 저장할때 response 읽어올때는 reque..

Spring 2022.05.16

[jsp] 내장객체, 액션태그,자바빈

※ 내장객체 - 별다른 선언과정과 객체 생성 없이 사용할 수 있는 9개의 객체들을 웹 컨테이너가 제공함 - 대표 : request, session, application, pageContext 내장 객체 속성(attribute)값을 저장하고 읽을 수 있는 메서드인 setAttribute(), getAttribute() 메서드를 제공함 setAttribute() : 주어진 key 속성의 값을 value로 지정한다 getAttribute(String key) : 주어진 key 속성의 값을 얻어낸다 request.setAttribute("msg", "성공!"); String msg=(String)request.getAttribute("msg"); session.setAttribute("userid", "hon..

Spring 2022.05.13