mini_project/회원가입, 로그인 구현하기 6

[spring] 인터셉터(interceptor)

인터셉터 인터셉터는 스프링 MVC 구조에 특화된 필터 기능을 제공한다고 이해하면 된다. 스프링 MVC를 사용할때, 필터 보다는 인터셉터를 사용하는것이 더 편리하다. **로그 찍는 인터셉터 예시 @Slf4j public class LogInterceptor implements HandlerInterceptor { public static final String LOG_ID = "logId"; @Override public boolean preHandle(HttpServletRequest, HttpServletResponse response, Object handler) throws Exception { String requestURI = request.getRequestURI(); String uuid =..

[servlet] 필터 (filter) 개념 / 흐름 / 예시

필터(filter) 필터는 서블릿이 지원하는 수문장이다. 필터 흐름 HTTP 요청 -> WAS -> 필터 -> 서블릿 -> 컨트롤러 필터 제한 로그인사용자 : HTTP 요청 -> WAS -> 필터 -> 서블릿 -> 컨트롤러 비로그인사용자 : HTTP 요청 -> WAS -> 필터 (적절하지 않은 요청이라 판단, 서블릿 호출 X) 필터 체인 필터는 체인으로 구성되는데, 중간에 필터를 자유롭게 추가할 수 있다. HTTP요청 -> WAS -> 필터1 -> 필터2 -> 필터3 -> 서블릿 -> 컨트롤러 코드로 보는 필터!!!!!! Q1 . 모든 요청을 로그로 남기는 필터를 개발. 필터 인터페이스를 구현하고 등록하면 서블릿 컨테이너가 필터를 싱글톤 객체로 생성하고 관리한다. 로그필터 LogFilter.java @S..

[servlet] 세션(session)생성 "HttpSession"

서블릿이 제공하는 "HttpSession" 1. 세션 생성 request.getSession(true) ● request.getSession(true) : 세션이 있으면 기존세션반환, 세션이 없으면 새로운 세션을 생성해서 반환. ● request.getSession(false) : 세션이 있으면 기존세션반환, 세션이 없으면 새로운 세션 생성 하지않고 null 반환. 기본값은 true이다. 2. 세션에 로그인 회원 정보 보관 session.setAttribute(SessionConst.LOGIN_MEMBER, loginMember); 코드로 확인하기 !!!! LoginForm.java import lombok.Data; import javax.validation.constraints.NotEmpty; @D..

[Spring] 세션(session)에 따른 컨트롤 "@SessionAttribute", 타임아웃 설정

SPRING에서의 세션(Session) 컨트롤 Spring은 @SessionAttribute 을 지원한다. ** 이 기능은 세션을 생성하지는 않음. @SessionAttribute(name="loginMember", required = false ) Member loginMember 이미 로그인 된 사용자를 찾을 때는 다음과 같이 사용하면 된다. @GetMapping("/") public String homeLogin( @SessionAttribute(name=SessionConst.LOGIN_MEMBER, required=false) Member loginMember , Model model ) { //세션에 회원데이터가 없으면 "로그인되지 않은 home" 으로 이동 if (loginMember == ..

로그인/로그아웃 구현하기_spring boot, jsp, javascript, mybatis 사용

/member/login /member/doLogin /member/doLogout 로그인 구현하기 MemberController.java @Controller public class MemberController { @Autowired private MemberService memberService; @RequestMapping("member/login") String showlogin(){ return "member/login"; } @RequestMapping("member/doLogin") String doLogin(HttpSession session, @RequestParam Map param, Model model) { Map rs = memberService.checkLoginAvailabl..

회원가입 구현하기_spring boot, jsp, javascript, mybatis 사용

회원가입 기능 구현 - /member/join MemberController.java @Controller public class MemberController { @Autowired private MemberService memberService; @RequestMapping("member/join") String showJoin(){ return "member/join"; } @RequestMapping("member/doJoin") String doJoin(@RequestParam Map param, Model model) { Map rs = memberService.join(param); String resultCode = (String) rs.get("resultCode"); if(resultC..