<select id="selectAllMember" resultMap="memberResultMap"> SELECT * FROM MEMBER_TBL </select> ////////////////////////////////////////////////회원ID 정보조회... <select id="selectOneMember" resultMap="memberResultMap"> SELECT * FROM MEMBER_TBL WHERE MEMBER_ID=#{memberId} <!-- 여기선 $아니고 #이다.. --> </select> ////////////////////////////////////////////////회원로그인조회... <select id="selectMemberLogin" resultMap="memberResultMap"> <!--session의 정보는 노출되므로 로그인시 최소정보만 가져와야 하기에 *이 아니다. --> SELECT MEMBER_ID,MEMBER_NAME,MEMBER_ADDRESS FROM MEMBER_TBL WHERE MEMBER_ID=#{memberId} AND MEMBER_PWD=#{memberPwd} <!-- 여기선 $아니고 #이다.. --> </select> ////////////////////////////////////////////////회원삭제탈퇴... <delete id="deleteMember"> DELETE FROM MEMBER_TBL WHERE MEMBER_ID=#{memberId} </delete> <!-- Mapped Statements collection does not contain value for MemberMepper.updateMember 에러남음..... MemberMepper.updateMember에 대한 값이 포함되어 있지 않습니다 --> 결국은 오타였음.........$&()%%$*(()))(^%^&())_욕이나온다....
즉 <jsp:include page="<%=variable%>" flush="true"/> 가 가능하다
② flush
-. true : 문서의 출력 결과를 항상 버퍼내에서 갱신 하라는 의미이다
3. 예제
a.jsp
...
<jsp:include page="b.jsp" flush="true"/>
...
a.jsp 결과에 b.jsp 가 실행된 결과가 include 된다
즉 따로따로 실행 된 후 그 결과(html)만을 가지고 include 한다
II. <%@ include %>
1. 설명
-. 서버측 include 라고 생각하면 된다
즉 소스 실행전에 include가 된다고 보자
-. 소스 실행전 포함됨으로 변수를 같이 사용할 수 있다
-. 동적으로 페이지 할당을 할 수가 없다
2. 속성
① file
-. 포함될 페이지를 명시한다
3. 예제
a.jsp
...
<%@ include file="b.jsp" %>
...
b.jsp 코드자체가 a.jsp에 포함된 후 실행된다.
jsp:include
<jsp:include page="/xxx.jsp" />
1. 요청시간에 처리
2. 별도의 파일로 요청 처리 흐름을 이동
3. 화면 레이아웃의 일부분을 모듈화 할 때 주로 사용된다.
@include
디렉티브
1. JSP파일을 자바 소스로 변환할 때 처리
2. 현재 파일에 삽입시킴
연결된 파일을 포함해서 같이 컴파일 한다.
include 지시어는 다른 JSP의 소스 코드를 해당 JSP에 그대로 포함시킨다
반면에 액션 태그의 <jsp:include> 태그는 다른 JSP의 소스 코드가 아니라,
다른 JSP의 실행 결과값을 해당 JSP 페이지에 포함시킨다.
또한, include는 주로 조각난 코드를 삽입을 하고자 할때 사용되고,
<jsp:include> 액션 태그는 페이지를 모듈화할때 사용된다.
즉 템플릿 페이지를 작성할때 사용된다.
<!-- 정적인 페이지 할 때 사용한다.> --> <%@ include file="/include/top.jsp" %> <hr></hr> index.jsp입니다.<br></br><br></br> <hr></hr> <%@ include file="/include/bottom.jsp" %>
1. registform.jsp에서 회원가입 정보를 입력받는다. form의 action = "/member/regist.do"값을 타고 간다.
2. 데이터는 MemberRegistController 1차 받는다. . request.getRequestDispatcher("/WEB-INF/views/member/registForm.jsp").forward(request,response); -registform.jsp 폴더 주소값 대소문자 정확히구분하여 입력해야함... . new MemberServiceImpl().registerMember(member); 으로 회원가입 정보를 보낸다.
3. MemberServiceImpl 클래스 메소드는 DB로 보낸다. . SqlSessionTemplate --JDBTemplate 역할을 복잡한 구문없이 처리하는데. 관련정보는 "mybatis-config.xml"에 있고 "mybatis-config.xml"이곳에 Query문을 기술한 mapper.dtd정보가 있음... . 즉 SqlSessionTemplate(mybatis-config.xml(mapper.dtd)) 묶여 가는 것임
4. MemberStoreLogic().registerMember(session, member); db와 연결정보와 Member회원정보를 insert 후 결과 값 result로 받음.
5. 다시 MemberServiceImpl클래스 registerMember메소드에서 result 결과 값을 받아서 이상이 없으면 commit/rollback을 한다.
6. MemberRegistController다시 돌아와서 가입완료 alert창 띄우고 PrintWriter를 닫는다.