[MVC] Login을 구현해보자 !

lzhxxn·2021년 1월 7일
3
post-thumbnail

웹 서비스를 이용하는 클라이언트는 개인적인 컨텐츠를 소유한다. 그러므로 클라이언트는 서버에게 API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)를 요청했을 때, 서버는 요청한 클라이언트의 식별을 정확히 해야한다.

0. Login 설계도

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부터 만드는게 수월했습니다.

  1. VIEW(Client) 🔜 Controller 🔜 Service(비교) 🔜 DAO(추출) 🔜 DB
  2. DB 🔜 DAO(추출) 🔜 Service(비교) 🔜 Controller 🔜 VIEW(Client)

1. Login 패턴 접근방식

먼저 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와 함께 만들어준다.

🍯TIP

Member m = new Member(seq, name, email, pwd, phone, rdate, udate); return m;
같은 로직이다. 변수에 담을게아니니까 이렇게안써줘도된다.
return new Member(seq, name, email, pwd, phone, rdate, udate);
객체를 만들어서 리턴하겠다는 의미

profile
Junior ᴅᴇ́ᴠᴇʟᴏᴘᴘᴇᴜʀ

0개의 댓글