2019백업

8) Session에 넣어 전달하기

728x90

 

1. contoller에 있는 selectM 함수에서 HttpSession을 인자로 받고 Member_Dao에게 전달한다.

2. mapper.xml을 호출해서 sql 쿼리 결과를 받아온 것을 세팅

3. 인자로 받은 Hsession에 쿼리결과 값을 넣어준다.

4. JSP에서 받아온 결과를 출력할 떄는 ${sessionScope.m.m_id} 이와같이 sessionScope를 사용한다.

 

controller에서 인자로 사용되는 것들 https://joont92.github.io/spring/@Controller/

 

@Controller

여기서 말하는 @Controller란 빈 자동 스캔시 사용되는 스테레오 타입 애노테이션이 아니라, 애노테이션을 이용해 컨트롤러를 개발하는 방법을 말한다. 즉, AnnotationMethodHandlerAdapter가 실행하는 각 메서드들을 의미한다. 파라미터 개발자가 명시한 애노테이션과 파라미터 타입 등에 따라 AnnotationMethodHandler

joont92.github.io

 

controller.java

@ResponseBody
@RequestMapping(value = "/selectm", method = RequestMethod.POST)
public int selectM(Member m, HttpSession session) {
System.out.println("no의 값 :"+"'"+m.getM_no()+"'");
return memberdao.selectMember(m,session);
}

 

Member_Dao.java

public int selectMember(Member no, HttpSession Hsession) {
try {
Member m_info = sqlsession.selectOne(memberMapper.+"memberInfo",no); 
Hsession.setAttribute("m", m_info);
return 1;
} catch (Exception e) {
e.printStackTrace();
return 0;
// TODO: handle exception
}
}

 

selectm.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

 

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>selectm</title>

</head>

<h1>hihi</h1>

<body>

//세션 스코프를 통해 m으로 선언된 변수명에 m_id를 찾아서 출력

${sessionScope.m.m_id}님 안녕하세요. <br>

 

</body>

 

 

 

 

반응형