Wanna be a Programmer/Servlet & JSP 썸네일형 리스트형 Servlet & JSP day10 - 회원 정보 프로그램(회원등록) 회원정보관리 Application index.html ☞ folder : WebContent 하위 소스보기 회원관리 회원가입폼 register_form.html ☞ folder : WebContent 하위 ☞ 초기의 회원가입 페이지를 html을 이용하여 작성 소스보기 ID : Password : 이름 : 주민번호 : RegisterMemberServlet.java ☞ pacakge : member.servlet ☞ url-mapping : /register_member ☞ register_form.html 페이지를 통해 입력한 정보를 Orlcle Database와 연결하여 회원정보를 저장 ☞ 입력한 정보를 하나의 MemberDTO객체로 묶어 Binding 하여 디스패치 방식을 통해 register_suc.. 더보기 Servlet & JSP day9 - HttpSession HttpSession을 이용한 Session 관리 ☞ client의 상태값을 서버측에 저장하여 Session 관리 ☞ javax.servlet.http.HttpSession 객체를 이용하여 관리 ◎ 클라이언트의 상태값은 Attribute로 관리됨 ☞ 장점 ◎ 관리할 수 있는 상태값(클라이언트 데이터)의 종류나 크기나 개수의 제한이 없다. ◎ 서버에 저장되므로 cookie에 비해 보안상 유리 ☞ 단점 ◎ 서버에 부담 HttpSession 객체 생성 ☞ HttpServeltRequest객체.getSession() ◎ 기존 Session이 있으면 기존 Session객체를, 없으면 새로 생성하여 리턴 - ex) 주로 로그인 페이지에서 사용 ☞ HttpServletRequest객체.getSession(false).. 더보기 Servlet & JSP day8 - Session, Cookie Session 관리 ☞ HTTP 프로토콜은 stateless 한 특징을 가진다. ☞ Stateless - 상태유지를 못한다. -> 클라이언트의 데이터를 유지하지 못 함 Session ☞ 하나의 클라이언트가 프로그램을 시작해서 종료 할 때까지 ☞ 하나의 세션동안 여러번의 요청과 응답이 반복 될 수 있다. ☞ 하나의 세션동안 클라이언트의 데이터는 유지 되어야 한다. Session 관리 개념 ☞ HTTP프로토콜의 특징은 클라이언트의 상태를 유지 못하므로 CGI에서 지원 ☞ 방식 ◎ Cookie를 이용 ◎ Session을 이용 ◎ URLReWriting을 이용 Cookie를 이용한 Session 관리 ☞ 쿠키 ◎ 서버가 브라우저(Client)로 전송하는 text 데이터 ◎ 쿠키는 클라이언트의 정보를 유지하기 위.. 더보기 Servlet & JSP day8 - Multi-Thread 상황에서 Data 동기화 Multi-Thread 상황에서 Data 동기화(Synchronized) ☞ Local 변수 : X ☞ Instance 변수 : O ☞ Static 변수 : O Attribute ☞ Request Scope : X ☞ Session Scope : 이론적으로는 O, but 실제로는 X ☞ Application Scope : O 서블릿 입장에서 각각의 클라이언트는 service(), doGet(), doPost() 메서드를 통해 서블릿을 호출하는 다른 쓰레드이다. 서블릿이 단순히 요청을 읽고 응답을 반환하고 지역변수에 저장을 한다면, 각각의 쓰레드의 연결을 신경 쓸 필요가 없다. 그러나, 어떠한 정보가 비지역변수에 저장되면 각각의 클라이언트의 쓰레드가 서블릿의 비지역변수를 조작가능해진다. ex) 두 개의 요.. 더보기 Servlet & JSP day8 - 요청디스패치를 이용한 전체회원정보 조회 MemberService.java ☞ package : servlet.member.service ☞ 회원과 관련된 Business Logic을 처리하는 클래스 package servlet.member.service; import java.util.ArrayList; import servlet.member.dto.MemberDTO; public class MemberService { //회원과 관련된 Business Logic을 처리하는 클래스 public MemberDTO searchMemberById(String id) { //인수로 받은 ID로 회원정보를 찾아 주는 메소드 //회원 조회 로직 MemberDTO mto = new MemberDTO(id, "홍길동", 20, "남"); return mto.. 더보기 Servlet & JSP day7 - 요청디스패치(request dispatch)방식을 이용한 회원정보 조회 MemberService.java ☞ package : servlet.member.service ☞ 회원과 관련된 Business Logic을 처리하는 클래스 ☞ public MemberDTO searchMemberById(String id) - 인수로 받은 Id로 회원정보를 찾아주는 메소드 package servlet.member.service; import java.util.ArrayList; import servlet.member.dto.MemberDTO; public class MemberService { //회원과 관련된 Business Logic을 처리하는 클래스 public MemberDTO searchMemberById(String id) { //인수로 받은 ID로 회원정보를 찾아 주는 메.. 더보기 Servlet & JSP day7 - 리다이렉트방식(Redirect) 리다이렉트 (Redirect) 방식 ☞ 응답시 클라이언트에게 요청할 url을 알려주어 다시 요청하도록 하는 방식 ☞ 요청과 응답이 한번 더 일어난다. ☞ Request Scopre를 이용한 데이터(Attribute) 공유할 수 없다. ☞ HttpServletResponse 객체를 이용해 처리 response.sendRedirect("url"); - 서블릿이 Client의 요청을 다른 Component(html, jsp, 서블릿)로 옮기기 위한 방식 - Web Browser에서 요청을 옮길 Component로 다시 요청하게 방향을 재지정하는 방식 (중요한건 방향을 재지정하는 것이지 컴포넌트를 여는 것이 아니다.) ErrorPronServlet.java package servlet.redirect; impo.. 더보기 Servlet & JSP day7 - 요청디스패치방식(request dispatch) 요청 디스패치(Request Dispatch) 방식 ☞ Request(요청)이 살아있는 상태에서 수행을 이동시킨다. ☞ Request Scope를 이용해 데이터(Attribute)를 공유할 수 있다. RequestDispatcher rdp = request.getRequestDispatcher("url"); rdp.forword(request, response); - 위 그림처럼 작동되기 때문에 하나의 Request 안에서 이루어진다. (즉, 하나의 Request 객체만 사용한다는 뜻) - 하나의 Request 객체만 사용하기 때문에 Request Scope를 이용해 Attribute를 공유할 수 있다. ErrorPronServlet.java package servlet.dispatch; import j.. 더보기 Servlet & JSP - SevletContext를 이용한 회원 가입 페이지 작성 ServletContext를 이용한 회원 가입 페이지 작성 SaveRequestMemberListener.java ☞ package : servlet.member.listener ☞ ServletContextListener interface implements(구현) ☞ Application scope에 list-ArrayList객체를 binding package servlet.member.listener; import java.util.ArrayList; import javax.servlet.ServletContext; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import servlet.m.. 더보기 Servlet & JSP day6 - Event 모델, Attribute(속성) Event 모델 ☞ Event : 컴포넌트에 가해진 동작, 변화 1. 컴포넌트에서 Event가 발생하는 것을 감시하는 Container 2. 발생한 Event를 처리하는 동작을 가진 객체(Listener Class) - Event Handler : 발생한 Event 처리 동작(메소드) - Event Source : Event가 발생한 컴포넌트 ex) 버튼을 클릭하면 안녕이라고 출력한다. Event Source : 버튼 Event : 클릭 Event Handler : 안녕을 출력하는 동작 MyServletContextListener.java package servlet.listener; import javax.servlet.ServletContextEvent; import javax.servlet.Serv.. 더보기 이전 1 2 3 4 5 다음