웹 서비스를 이용하는 클라이언트는 개인적인 컨텐츠를 소유한다. 그러므로 클라이언트는 서버에게 API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)를 요청했을 때, 서버는 요청한 클라이언트의 식별을 정확히 해야한다.
M - SQL(DAO 분리)
, DAO
, DTO
, Service
, LoginCase(Service 분리).java
V - login_form
, login_msg(check)
, login_check_modul.jsp
C - LoginController.java(servlet)
설계 할 때, VIEW부터 접근을 했었으나 개인적으로 MODEL부터 만드는게 수월했습니다.
- VIEW(Client) 🔜 Controller 🔜 Service(비교) 🔜 DAO(추출) 🔜 DB
- DB 🔜 DAO(추출) 🔜 Service(비교) 🔜 Controller 🔜 VIEW(Client)
먼저 INDEX
로 링크를 먼저 걸어준다. 그 후 login_form.jsp
디자이너한테 받아 login folder
에 넣어준다.
■ MODEL ( DTO )
DB에 저장된 컬럼을 보고, getter/setter 만들어준다.
■ MODEL ( SQL )
■ MODEL ( DAO )
getMember 👉 SQL & SET = DB 핸들링하는 역할
■ MODEL ( Service )
checkMember 👉 비즈니스로직에서 비교해준다.
getMemberS 👉 실제 맴버를 가져오고, 패스워드를 공백처리해준다. (보안성을 위해)
■ MODEL (LoginCase_Service)
여러 경우의 수 클래스를 가독성을 위해 만든다.
■ CONTROLLER
👉 form , check, out 메소드
👉 Client 요청을 request.getParameter("");값으로 받아주고, 공백을 처리해준다.
■ VIEW
👉 login_form, login_msg, login_check_modul을 JSP Element(기본 /고급)으로 HTML / JS와 함께 만들어준다.
Member m = new Member(seq, name, email, pwd, phone, rdate, udate); return m;
같은 로직이다. 변수에 담을게아니니까 이렇게안써줘도된다.
return new Member(seq, name, email, pwd, phone, rdate, udate);
객체를 만들어서 리턴하겠다는 의미