웹프로그래밍
-
아이디 찾기 결과 - 문자열 치환웹프로그래밍/기타 2018. 6. 12. 12:28
개인 정보 보호를 위해서 아이디 찾기 결과 페이지에서사용자 아이디의 일부를 " * "으로 치환하기 -오라클 DB에서 치환해서 가져오기 http://dongdongfather.tistory.com/36 REPLACE(문자열, 찾을문자, 대체할 문자) TRANSLATE(문자열, 찾을문자, 대체할 문자)※REPLACE와 차이점은 찾을문자와 대체할 문자를 순서에 맞춰서 바꿔준다. -자바 String 클래스의 substring() 메소드 이용하기 int idLength = findIdResult.length();if(5 < idLength) {m_id = findIdResult.substring(0,1) + "*" + findIdResult.substring(2,3) + "*" + findIdResult.subs..
-
웹 요청 처리에 대한 기본지식웹프로그래밍/기초 2018. 6. 10. 17:07
웹 요청 처리에 대한 기본지식 페이지 스코프: 페이지 스코프에 있는 객체는 각 페이지의 javax.servlet.jsp.PageContext에 저장되고, 객체를 생성한 JSP를 통해서만 접근할 수 있다. 클라이 언트에 응답을 보 내거나 페이지를 다른 자원에 포워딩하면 관련된 객체를 더 이상 사용하지 못하게 된다. JSP는 pageContext라는 객체 참조 값을 가지고 있다. 이러한 참조 값은 JSP 가 생성될 때 자동으로 생성되며, pageContext를 통해 페이지 단계의 객체를 담고 가져올 수 있다. 페이지 스코프 역시 getAttribute ( ) , setAttribute ( ) 메소드가 있으며 다른 스코프와 비슷한 역할을 수행한다. 요청 스코프: 서버는 클라이언트의 HTTP 요청이 있을 때 j..
-
세션(session)과 쿠키(cookie)웹프로그래밍/기초 2018. 6. 9. 17:58
세션(session)?웹 서버측에서 사용자 정보를 저장하기 위해 사용하는 객체.클라이언트의 정보를 저장할 수 있다. 쿠키와 차이점이 있다면, 세션은 웹 브라우저가 아니라 서버에 값이 저장된다는 점이다. 세션 ID컨테이너는 웹 브라우저마다 세션을 생성한다. 그리고 수 많은 웹브라우저의 세션을 구분하기 위해서웹 브라우저의 최초 요청 시 컨테이너는 유일한 세션 ID를 부여하고 응답으로 보낸다.이후 웹 브라우저의 요청시 세션 ID를 함께 보내서 해당하는 세션을 연결한다.기본적으로 세션 ID는 쿠키에 저장된다. 만약 웹 브라우저가 쿠키를 사용하지 않도록 설정 했다면 세션ID를 저장할 수 없다. URL-재작성쿠키를 사용할 수 없을 경우, 요청 URL마다 세션ID를 파라미터로 추가해주는 방법으로 JSP 같은 동적인 ..
-
스트럿츠2 - valueStack과 ModelDriven, Preparable 인터페이스 구현웹프로그래밍/struts 2018. 6. 4. 12:13
prepare, modelDriven이라는 인터셉터를 붙였으며 액션에서 Preparable, ModelDriven 인터페이스를 구현했다. 좀더 자세히 설명하자면 params 인터셉터는 액션의 프로퍼티를 채우는 것이 아니라 ValueStack 상단에 있는 오브젝트 부터 프로퍼티를 채운다. ValueStack은 일종의 스택인데 일반적인 스택처럼 스택의 상단에 오브젝트를 넣고 꺼내는 것이 아니라스택 상단 오브젝트의 프로퍼티를 세팅하고 읽는 스택이다. Struts2에서는 액션 인스턴스를 ValueStack의 최 상단에 넣는다. 따라서 params 인터셉터를 붙이면 액션의 프로퍼티가 세팅 되는 것이다. modelDriven 인터셉터는 ModelDriven 인터페이스를 구현한 액션에서 getModel() 메소드를 ..
-
ContextPath로 이미지의 URL 경로 작성웹프로그래밍/jsp 2018. 5. 31. 14:42
https://okky.kr/article/390786?note=1231406 -액션 클래스 메소드 안에 추가할 코드//파일 업로드 과정에서 원본파일 이름은 별도로 DB에 저장하고 파일 저장명(prof_image_save)으로 사용자가 업로드한 이미지를 별도로 저장한다. request.getContextPath() -> 프로젝트 폴더명profUpload-> 프로젝트 안에 본인이 설정한 업로드 파일을 보관하는 폴더 profpath = request.getContextPath()+"/profUpload/"+prof_image_save; ※업로드 폴더 안에 있는 이미지 파일을 Run as -> Run on server로 실행하면 웹상에서의 실행 경로를 알 수 있다. -뷰페이지(jsp)
-
스트럿츠2 - 파일 입출력웹프로그래밍/struts 2018. 5. 30. 22:19
일반파라미터를 전송할 때 사용하는 인코딩과파일을 업로드 할 때 사용하는 인코딩은 서 로 다르다. 앞서 HTTP의 데이터 전송 방식은 크게 GET 방식과 POST 방식 이 존재한다고 했었는데 이 두 방식의 차이는 파라미터 데이터를 요청 URL에 쿼리로 전송하느냐 아니면 스트림 으로 전송하느냐의 차이 였다. 스트림 기반의 전송 방식 인 POST 방식은 또 다시 다음의 두 가지 인코딩 방식에 따라서 전송하는 데이터 형식이 달라진다. 지금까지 살펴봤던 모든 예제들은 application/x-www form-urlencoded인코딩을 사용 해서 데이터를 전송했는데, 파일을 업로드 하기 위해서는 multipart/form-data 인코딩을 사용해야만 한다. 데이터를 multipart/form-data 인코딩 방식으..
-
스트럿츠2 - 인터셉터로 세션 로그인 체크웹프로그래밍/struts 2018. 5. 30. 12:18
참고 가능한 샘플 주소: http://sandeepbhardwaj.github.io/2010/12/01/struts2-with-login-interceptor.html -인터셉터 클래스로 세션의 로그인 정보를 확인하는 이유 일반적인 사용자 외에 직접 주소를 쳐서 접근 하는 사용자를 방지하기 위하여매번 해당되는 요청시 마다 login검사를 해줘야 하는 경우가 있다. 액션이 실행되기전 인터셉터로 세션의 아이디가 저장되어 있는지 확인하고저장 안되어있을 경우 로그인 페이지로 보낸다. 1. 로그인 처리 액션에서 아이디를 세션에 저장한다. public String execute() throws Exception {//사용자에게 입력 받은 정보와 같은 값이 DB 안에 존재하는지 확인한다.memberResult = (..
-
스트럿츠2 - 세션 로그인 설정웹프로그래밍/struts 2018. 5. 29. 22:10
http://invincure.tistory.com/entry/Struts%EC%97%90%EC%84%9C-%EB%A1%9C%EA%B7%B8%EC%9D%B8login-%EC%B2%98%EB%A6%AC%ED%95%98%EA%B8%B0-%EC%84%B8%EC%85%98sessin-%EC%96%BB%EC%96%B4%EC%99%80%EC%84%9C-sessio%EC%97%90-%EA%B0%92-%EC%A0%80%EC%9E%A5%ED%95%98%EA%B8%B0 Struts에서 로그인(login) 처리하기. -> 세션(sessin) 얻어와서 sessio에 값 저장하기 /* * struts2에서 세션사용하기 * 방법1) * - SessionAware를 implements 한다. * - Session메소드를 오버라이딩..