JSP
-
Servlet-JSP MVC07 (2) - ajax로 JSON 다루기Web/Servlet-JSP 2023. 6. 26. 22:28
- 멤버 list.do에서 버튼을 만들어서 번튼을 누르면 회원 목록이 나오도록 고쳐보자. - 이때 버튼을 누르면 서버와 통신하여 member의 정보를 화면전환 없이 가져와야하므로 비동기 통신이 필요 1. List만들기 1.1 버튼 만들기 회원보기 Panel Body Panel Footer function memberList(){ $.ajax({ url : "", type : "GET", dataType : "json", success : resultList, error : function(){ alert("error");} }); } > 부스트 트랩을 이용하여 버튼을 만들었다. > 토글을 클릭하면, memberList()가 실행된다. - 서버와의 통신 결과 json을 응답으로 받는다. - 따라서 {[{m..
-
Servlet-JSP MVC07 (1) - Ajax를 활용한 id 중복확인Web/Servlet-JSP 2023. 6. 25. 23:23
- memberRegister.jsp에서 ID를 중복확인을 할 것이다. - 이때 비동기처리 기술인 Ajax를 활용하여 화면전환 없이 서버로부터 요청과 응답을 받을 것이다. 1. memberRegister.jsp에 id중복확인 버튼 추가 및 ajax 작성 function doublecheck(){ if($("#id").val() ==''){ alert("아이디를 입력하세요"); $("#id").focus(); return } var id=$("#id").val(); $.ajax({ url : "", type : "POST", data : {"id" : id}, success :dbCheck, //함수(callback함수) error: function(){alert("error");} }); } *el과 제..
-
Servlet-JSP MVC06 (3) - 기타 설정Web/Servlet-JSP 2023. 6. 24. 10:37
1. MemberContent.jsp화면을 수정했다. 상세화면 ${sessionScope.userName}님이 로그인 하셨습니다. 안녕하세요 번호: 아이디: 비밀번호: 이름: 나이: 이메일: 전화번호: 변경사항 1.1 로그인 유무에 따라 memberContent.jsp 상단에 뜨는 메세지를 다르게 하였다. ${sessionScope.userName}님이 로그인 하셨습니다. 안녕하세요 1.2 로그인 유무에 따라 수정하기 버튼을 띄우고, 로그인 id와 상세정보의 id가 같을 때만 수정하기 버튼이 활성화 되도록 변경하였다. 1.3 form태그의 submit을 javascript로 만들어서 form태그 밖에서 subimt할 수 있도록 하였다. > document.form1 -> 현재페이지.폼명 2. member..
-
Servlet-JSP MVC06 (2) - 로그아웃 처리와 여러설정Web/Servlet-JSP 2023. 6. 24. 09:56
- session을 이용한 로그아웃 처리를 해보자 - 또한 로그인 시에만 memberList page에서 자신의 정보만 삭제할 수 있고 타인의 정보는 삭제할 수 없도록 변경해보자. 1. 로그인 시 로그인 창 안뜨고, 유저명과 로그아웃 버튼 나오도록 변경하기 //로그인 화면 ${sessionScope.userName}님 반갑습니다. 로그아웃 로그인 시에 session에 userId를 검사하여 다음과 같이 변경한 것이다. > 로그인시 로그인창은 안뜨고, 로그아웃버튼과 유저명이 화면에 나타남 > 로그인 x시 로그인창이 뜸 2. 삭제버튼, 회원가입버튼, 회원가입 시 등록버튼 -리스트 삭제버튼 adisbled속성을 이용하여, 세션에 등록된 userId와 list Page에 등록된 id를 검사하여 로그인아이디와 l..
-
Servlet-JSP MVC06 (1) - Session을 이용한 로그인 처리Web/Servlet-JSP 2023. 6. 24. 09:05
- Sesstion을 이용하여 로그인 처리를 구현해보자. - 먼저 로그인을 위한 화면을 간단하게 만들어보자 회원관리 시스템 ID: Password: 로그인 ${sessionScope.userName}님 환영합니다. 로그아웃 -로그인 구현 1 유효성 check 로그인 로그인 버튼을 누르면, 먼저 유효성을 검사하도록 check()함수를 넣었다. return값이 true일때만 submit이 정상 작동할 것이다. function check(){ if($("#user_id").val() ==''){ alert("아이디를 입력하세요"); return false; } if($("#passward").val()==''){ alert("비밀번호를 입력하세요"); return false; } return true; } c..
-
Servlet-JSP MVC04 (2) - handlerMapping and viewResolverWeb/Servlet-JSP 2023. 6. 16. 11:40
- (1)번에서 만들었던 frontcontroller를 더 수정해보자. - frontcontroller의 역할을 다시한번 상기하자면, > 요청받기, 공통부분처리, pojo 메서드호출, view연결이다. - 이러한 역할들 중에 pojo를 호출하는 분기문을 handlerMapping을 적용하여 더 깔끔하게 정리해보도록하자. - 또한 viewresolver를 적용해보자. 1. HandlerMapping -사용자 요청과 이를 처리할 pojo를 맵핑시켜주는 역할을 담당한다. -이전에 분기문으로 사용자 요청을 확인하고, 이에 따라 적절한 pojo를 연결하는 작업을 frontcontroller내에서 했는데 이를 따로 떼어두는 것이다. public class HandlerMapping{ private HashMap m..
-
Servlet-JSP MVC04(1) - FrontController and POJOWeb/Servlet-JSP 2023. 6. 16. 10:10
1. FrontController - 지금까지는 클라이언트 요청을 처리하기 위해 여러 컨트롤러(서블릿)이 존재했다. - 컨트롤러가 많은 것은 유지보수를 어렵게 만든다. - 만약 컨트롤러가 클라이언트의 요청을 받을때 공통으로 처리해야하는 부분이 있다면, 모든 컨트롤러에 공통코드를 추가해야할 것이다. 이는 유지보수를 어렵게 만든다. - 따라서, 이러한 점을 보완하기 위해 클라이언트로부터 모든 요청을 먼저 받고, 공통부분을 처리한 뒤에 요청을 넘기는 역할을 하는 것이 FrontController이다. @WebServlet("*.do") public class FrontController extends HttpServlet { protected void service(HttpServletRequest reque..
-
Servlet-JSP MVC05 - JDBC to MybatisWeb/Servlet-JSP 2023. 6. 14. 17:58
이제 기존 JDBC를 Mybatis로 교체해보자. 1. SqlSessionFactory(Connection Pool) 객체 얻기 Mybatis의 중요한 특징 중 하나는 Connection Pool을 이용하여 DB 연결과 해제 시간을 줄여준다는 것이다. 다음과 같은 방법으로 Connection Pool을 얻을 수 있다. public class MemberDAO { private static SqlSessionFactory sqlSessionFactory; //Connection Pool을 가리킬 참조변수 //초기화 블럭 static { try { String resource = "kr/bit/mybatis/config.xml"; // 미리만들어둔 config.xml파일 (경로/로구분) InputStream..