728x90
MVC
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>member/delete.jsp</title>
</head>
<body>
<h1>member/delete.jsp</h1>
<h1>회원 정보 삭제</h1>
<%
//main.jsp에서 delete.jsp로 이동할 때 아무값도 없이 이동
//연결정보를 저장하는 session 내장객체 안에 로그인표시("id","asdf") 저장
//session에서 로그인 표시값 가져오기 String id 변수저장
String id = (String)session.getAttribute("id");
%>
<form action="deletePro.me" method="post">
아이디 : <input type="text" name="id" value="<%=id %>" readonly><br
비밀번호 : <input type="password" name="pw"><br>
<input type="submit" value="회원정보삭제">
</form>
</body>
</html>
public class MemberController extends HttpServlet {
(...생략...)
//주소 매핑을 위한 메소드 정의
protected void doProcess(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
(...생략...)
if(sPath.equals("/delete.me")) {
System.out.println("가상주소 비교 /delete.me 일치");
//member/delete.jsp 주소 변경 없이 이동
RequestDispatcher dispatcher = request.getRequestDispatcher("member/delete.jsp");
dispatcher.forward(request, response);
}
if(sPath.equals("/deletePro.me")) {
System.out.println("가상주소 비교 /deletePro.me 일치");
//한글처리
request.setCharacterEncoding("utf-8");
//MemberService 객체생성
MemberService ms = new MemberService();
//boolean result = userCheck(request) 메소드 호출
ms.userCheck(request);
boolean result = ms.userCheck(request);
//아아디 비밀번호 일치
if(result == true) {
//리턴할 형 없음 deleteMember(request) 메소드 호출
ms.deleteMember(request);
//세션 초기화(로그아웃)
HttpSession session = request.getSession();
session.invalidate();
//main.me이동
response.sendRedirect("main.me");
} else {
//아이디, 비밀번호 틀림 => delete.me 이동
response.sendRedirect("delete.me");
}
}
}
}
public class MemberService {
(...생략...)
public void deleteMember(HttpServletRequest request) {
System.out.println("HttpServletRequest deleteMember()");
try {
//request에서 id 태그(파라미터)값을 가져와서 변수에 저장
String id = request.getParameter("id");
//자바파일 MemberDAO 객체 생성 기억장소 할당
MemberDAO memberDAO = new MemberDAO();
//deleteMember(id) 메소드 호출
memberDAO.deleteMember(id);
} catch (Exception e) {
e.printStackTrace();
}
}
}
<%@page import="com.itwill.dao.MemberDAO"%>
<%@page import="java.util.ArrayList"%>
<%@page import="com.itwillbs.domain.MemberDTO"%>
<%@page import="com.itwillbs.controller.MemberController"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>member/list.jsp</title>
</head>
<body>
<h1>member/list.jsp</h1>
<h1>회원 목록</h1>
<%
//로그인 표시 → 세션에서 "id"값을 가져와서 → String id 저장
String id = (String)session.getAttribute("id");
//로그인 표시값이 있으면 login.jsp이동, 있으면 로그인표시값이 "admin"이 아니면 main.jsp이동
if(id==null){
response.sendRedirect("login.me");
}else{
if(!id.equals("admin")){
response.sendRedirect("main.me");
}
}
//MemberDAO 객체생성
// MemberDAO memberDAO = new MemberDAO();
//ArrayList 자바 내장객체
//→ 배열(같은 기억장소를 여러 개 사용)에 단점(초기기억장소가 고정)울 보완한 자바 내장객체 배열
//→ 기억장소 10개 할당 → 데이터가 10개가 넘어가면 추가로 10개가 추가되어짐
//→ java.util.ArrayList
// ArrayList 데이터 개수 : .size()
// ArrayList 배열에 데이터 저장(순서대로 값이 저장) : .add(memberDTO 주소값)
// ArrayList 배열에 데이터 가져오기 : .get(순서)
//ArrayList<MemberDTO> 리턴할 형 getMemberList() 메소드 정의
//ArrayList<MemberDTO> memberList = getMemberList() 메소드 호출
// ArrayList<MemberDTO> memberList = memberDAO.getMemberList();
//request에서 값을 가지고 와서
ArrayList<MemberDTO> memberList = (ArrayList<MemberDTO>)request.getAttribute("memberList");
%>
<table border="1">
<tr><td>아이디</td><td>비밀번호</td><td>이름</td><td>가입날짜</td></tr>
<%
for(int i = 0; i < memberList.size(); i++){
%>
<tr><td><%=memberList.get(i).getId() %></td>
<td><%=memberList.get(i).getpw() %></td>
<td><%=memberList.get(i).getName() %></td>
<td><%=memberList.get(i).getDate() %></td></tr>
<%
}
%>
</table>
</body>
</html>
public class MemberService {
(...생략...)
//ArrayList<MemberDTO> memberList = getMemberList() 메소드
public ArrayList<MemberDTO> getMemberList(){
System.out.println("ArrayList<memberDTO> getMemberList()");
ArrayList<MemberDTO> memberList = null;
try {
//MemberDAO 객체생성
MemberDAO memberDAO = new MemberDAO();
//getMemberList() 메소드 호출
memberList = memberDAO.getMemberList();
} catch (Exception e) {
e.printStackTrace();
}
return memberList;
}
}
public class MemberController extends HttpServlet {
(...생략...)
//주소 매핑을 위한 메소드 정의
protected void doProcess(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("MemberController doProcess()");
(...생략...)
//※뽑을 때만 /를 붙힌다.
if(sPath.equals("/list.me")) {
System.out.println("가사주소 비교/ list.me");
request.setCharacterEncoding("utf-8");
//MemberService 객체 생성
MemberService ms = new MemberService();
//ArrayList<MemberDTO> 리턴할 형 memberList = getMemberList() 호출
ArrayList<MemberDTO> memberList = ms.getMemberList();
//request "memberList",memberList 값을 저장
request.setAttribute("memberList", memberList);
//주소 변경 없이 member/list.jsp 이동
RequestDispatcher dispatcher = request.getRequestDispatcher("member/list.jsp");
dispatcher.forward(request, response);
}
}
}
MemberController 정리
package com.itwillbs.controller;
import java.io.IOException;
import java.util.ArrayList;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.itwill.dao.MemberDAO;
import com.itwillbs.domain.MemberDTO;
import com.itwillbs.service.MemberService;
public class MemberController extends HttpServlet {
RequestDispatcher dispatcher = null;
MemberService ms = null;
//MemberController 파일을 servlet파일로 지정
//→ MemberController extends HttpServlet(자바내장객체(처리담당자) 상속
//→ 웹 애플리케이션 서버(처리담당서버)가 자동으로 서블릿 메소드 호출
//→ service(), doGet(), doPost(),... 자동으로 호출
//→ doGet(), doPost() 재정의(메소드 오버라이딩)해서 주소매핑 작업 처리
//메소드 오버라이딩(alt + shift + s → v)
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("MemberController doGet()"); //get방식일 때
//doProcess() 메소드 호출
doProcess(request, response);
}
@Override
protected void doPost(HttpServletRequest requset, HttpServletResponse response) throws ServletException, IOException {
System.out.println("MemberController doPost()"); //post방식일 때
//doProcess() 메소드 호출
doProcess(requset, response);
}
//주소 매핑을 위한 메소드 정의
protected void doProcess(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("MemberController doProcess()");
//가상주소 http://localhost:8080/MVCProject/insert.me
//가상주소 뽑아보기 : /insert.me
String sPath = request.getServletPath();
System.out.println("가상주소 뽑아오기 : " + sPath);
//주소 매핑 → 가상주소 비교 → 실제 페이지 연결
if(sPath.equals("/insert.me")) {
System.out.println("가상주소 비교 /insert.me 일치");
//실제페이지 member/insert.jsp 웹 방식 주소가 변경되면서 웹 이동(하이퍼링크)
// response.sendRedirect("member/insert.jsp");
//1) 실제페이지 member/insert.jsp 주소 변경 없이 이동(특이한 이동방식) → 화면만 바뀜.
//액션태그 <jsp:forward> 같은 이동 방식
//2) 이동할 때 request, response 값을 들고 이동
dispatcher = request.getRequestDispatcher("member/insert.jsp"); //객체생성을 new로 하지 않음
dispatcher.forward(request, response);
}
if(sPath.equals("/insertPro.me")) {
System.out.println("가상주소 비교 /insertPro.me 일치");
//패키지.클래스 com.itwillbs.service.MemberService
//리턴할 형 없이 insertMember(HttpServletRequest request) 메소드 정의
//MemberService 객체생성
ms = new MemberService();
//insertMember(request) 메소드 호출
ms.insertMember(request);
//로그인페이지로 이동
//가상주소 login.me 주소가 변경되면서 이동(하이퍼링크)
//주소가 바뀌고 화면이 바뀌는
response.sendRedirect("login.me");
}
//login.me 주소가 일치하면 member/login.jsp 주소변경없이 이동
if(sPath.equals("/login.me")) {
System.out.println("가상주소 비교 /login.me 일치");
dispatcher = request.getRequestDispatcher("member/login.jsp");
dispatcher.forward(request, response);
}
//loginPro.me 주소가 일치하면 MemberService 객체 생성
//리턴할 형은 looean userCheck(request) 메소드 호출
if(sPath.equals("/loginPro.me")) {
request.setCharacterEncoding("utf-8");
System.out.println("가상주소 비교 /loginPro.me 일치");
ms = new MemberService();
boolean result = ms.userCheck(request);
String id = request.getParameter("id");
if(result==true) {
//true일 경우 로그인 표시(세션값 "id",id) -> main.me이동
HttpSession session = request.getSession();
session.setAttribute("id", id);
response.sendRedirect("main.me");
} else {
//false일 경우 login.me로 이동
response.sendRedirect("login.me");
}
}
//main.me 주소가 일치하면 member/main.jsp 주소변경없이 이동
if(sPath.equals("/main.me")) {
System.out.println("가상주소 비교 /main.me 일치");
dispatcher = request.getRequestDispatcher("member/main.jsp");
dispatcher.forward(request, response);
}
//logout.me 주소가 일치 => session초기화(session 객체 생성) => main.me 이동
if(sPath.equals("/logout.me")) {
System.out.println("가상주소 비교 /logout.me");
HttpSession session = request.getSession();
session.invalidate();
response.sendRedirect("main.me");
}
// /info.me 주소가 일치
//=> session값(로그인 표시값) 가져오기 => String id 변수에 저장
//=> MemberService 객체 생성
//=> MemberDTO getMember(id) 메소드 호출
//=> request에 "MemberDTO",memberDTO 담아서
//=> member/info.jsp 주소 변경 없이 이동
if(sPath.equals("/info.me")) {
System.out.println("가상주소 비교 /info.me 일치");
//=> session값(로그인 표시값) 가져오기 => String id 변수에 저장
HttpSession session = request.getSession();
String id = (String)session.getAttribute("id");
//=> MemberService 객체 생성
MemberService mc = new MemberService();
//=> MemberDTO getMember(id) 메소드 호출
MemberDTO memberDTO = mc.getMember(id);
request.setAttribute("memberDTO", memberDTO);
//=> member/info.jsp 주소 변경 없이 이동
dispatcher = request.getRequestDispatcher("member/info.jsp");
dispatcher.forward(request, response);
}
if(sPath.equals("/update.me")) {
System.out.println("가상주소 비교 /update.me 일치");
//세션값 가져오기 => String id 변수에 저장
HttpSession session = request.getSession();
String id = (String)session.getAttribute("id");
//MemberService 객체생성
//리턴할형 MemberDTO memberDTO = getMember(id) 메소드 호출
MemberService mc = new MemberService();
//request에 "memberDTO",memberDTO에 담아서 이동
MemberDTO memberDTO = mc.getMember(id);
request.setAttribute("memberDTO", memberDTO);
//member/update.jsp 주소 변경없이 이동
dispatcher = request.getRequestDispatcher("member/update.jsp");
dispatcher.forward(request, response);
}
if(sPath.equals("/updatePro.me")) {
System.out.println("가상주소 비교 /updatePro.me 일치");
//request 한글처리
request.setCharacterEncoding("utf-8");
//=> MemberService 객체 생성
MemberService ms = new MemberService();
//boolean result = userCheck(request) 메소드 호출
ms.userCheck(request);
boolean result = ms.userCheck(request);
if(result==true) {
ms.updateMember(request);
response.sendRedirect("main.me");
} else {
response.sendRedirect("update.me");
}
}
if(sPath.equals("/delete.me")) {
System.out.println("가상주소 비교 /delete.me 일치");
//member/delete.jsp 주소 변경 없이 이동
dispatcher = request.getRequestDispatcher("member/delete.jsp");
dispatcher.forward(request, response);
}
if(sPath.equals("/deletePro.me")) {
System.out.println("가상주소 비교 /deletePro.me 일치");
//한글처리
request.setCharacterEncoding("utf-8");
//MemberService 객체생성
MemberService ms = new MemberService();
//boolean result = userCheck(request) 메소드 호출
ms.userCheck(request);
boolean result = ms.userCheck(request);
//아아디 비밀번호 일치
if(result == true) {
//리턴할 형 없음 deleteMember(request) 메소드 호출
ms.deleteMember(request);
//세션 초기화(로그아웃)
HttpSession session = request.getSession();
session.invalidate();
//main.me이동
response.sendRedirect("main.me");
} else {
//아이디, 비밀번호 틀림 => delete.me 이동
response.sendRedirect("delete.me");
}
}
//※뽑을 때만 /를 붙힌다.
if(sPath.equals("/list.me")) {
System.out.println("가사주소 비교/ list.me");
request.setCharacterEncoding("utf-8");
//MemberService 객체 생성
ms = new MemberService();
//ArrayList<MemberDTO> 리턴할 형 memberList = getMemberList() 호출
ArrayList<MemberDTO> memberList = ms.getMemberList();
//request "memberList",memberList 값을 저장
request.setAttribute("memberList", memberList);
//주소 변경 없이 member/list.jsp 이동
RequestDispatcher dispatcher = request.getRequestDispatcher("member/list.jsp");
dispatcher.forward(request, response);
}
}
}
MemberService 정리
package com.itwillbs.service;
import java.sql.Timestamp;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import com.itwill.dao.MemberDAO;
import com.itwillbs.domain.MemberDTO;
public class MemberService {
MemberDAO memberDAO = null;
public void insertMember(HttpServletRequest request) {
System.out.println("MemberService insertMember(HttpServletRequest request)");
//insertPro.jsp 내용 넣기
try {
request.setCharacterEncoding("utf-8");
String id = request.getParameter("id");
String pw = request.getParameter("pw");
String name = request.getParameter("name");
Timestamp date = new Timestamp(System.currentTimeMillis());
//MemberDTO 객체 생성 → 기억장소 할당
//패키지 com.itwillbs.domain.MemberDTO
MemberDTO memberDTO = new MemberDTO();
//멤버변수에 request에 가져온 값을 set 메서드 호출해서 저장
memberDTO.setId(id);
memberDTO.setpw(pw);
memberDTO.setName(name);
memberDTO.setDate(date);
// 패키지(폴더) member, 자바파일 MemberDAO 생성
//패키지 com.itwillbs.domain.MemberDAO
// insertMember() 메소드 정의
MemberDAO memberDAO = new MemberDAO();
memberDAO.insertMember(memberDTO);
} catch (Exception e) {
e.printStackTrace();
}
}
//loginPro.me 주소가 일치하면 MemberService 객체 생성
//리턴할 형은 looean userCheck(request) 메소드 호출
public boolean userCheck(HttpServletRequest request) {
boolean result = false;
System.out.println("HttpServletRequest userCheck()");
try {
//request에서 id, pw 태그(파라미터)값 가져와서 변수에 저장
String id = request.getParameter("id");
String pw = request.getParameter("pw");
//MemberDAO 객체 생성
memberDAO = new MemberDAO();
//userCheck메소드 호출
result = memberDAO.userCheck(id, pw);
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
//=> MemberDTO getMember(id) 메소드 호출
//=> request에 "MemberDTO",memberDTO 담아서
public MemberDTO getMember(String id) {
MemberDTO memberDTO = null;
System.out.println("MemberDTO getMember()");
try {
//MemberDAO 객체 생성
memberDAO = new MemberDAO();
//MemberDAO memberDAO = new MemberDAO()의 기억장소 주소.getMember(id)
memberDTO = memberDAO.getMember(id);
} catch (Exception e) {
e.printStackTrace();
}
return memberDTO;
}
//=> 리턴할 형 없음 updateMember(request) 메소드 호출
public void updateMember(HttpServletRequest request) {
System.out.println("HttpServletRequest updateMember()");
try {
//request에서 id, pass, name 태그(파라미터)값 가져와서 변수에 저장
String id = request.getParameter("id");
String pw = request.getParameter("pw");
String name = request.getParameter("name");
//MemberDAO 객체 생성
//userCheck메소드 호출
MemberDTO memberDTO = new MemberDTO();
memberDTO.setId(id);
memberDTO.setpw(pw);
memberDTO.setName(name);
//MemberDTO 객체 생성
memberDAO = new MemberDAO();
memberDAO.updateMember(memberDTO);
} catch (Exception e) {
e.printStackTrace();
}
}
public void deleteMember(HttpServletRequest request) {
System.out.println("HttpServletRequest deleteMember()");
try {
//request에서 id 태그(파라미터)값을 가져와서 변수에 저장
String id = request.getParameter("id");
//자바파일 MemberDAO 객체 생성 기억장소 할당
memberDAO = new MemberDAO();
//deleteMember(id) 메소드 호출
memberDAO.deleteMember(id);
} catch (Exception e) {
e.printStackTrace();
}
}
//ArrayList<MemberDTO> memberList = getMemberList() 메소드
public ArrayList<MemberDTO> getMemberList(){
System.out.println("ArrayList<memberDTO> getMemberList()");
ArrayList<MemberDTO> memberList = null;
try {
//MemberDAO 객체생성
memberDAO = new MemberDAO();
//getMemberList() 메소드 호출
memberList = memberDAO.getMemberList();
} catch (Exception e) {
e.printStackTrace();
}
return memberList;
}
}//클래스
MVC(JSTL)
JSTL(JSP Standard Tag Library) : if, for % 대신에 태그처럼 사용 -> 프로그램 설치(jar 파일 다운로드 후 붙여넣기)
- http://tomcat.apache.org 접속(Apache Tomcat - Taglibs - Download)
- Impl, Spec, EL, Compat jar 다운로드
- 다운로드 한 jar 파일을 src-webapp-WEB-INF-lib 넣기
Apache Tomcat® - Welcome!
The Apache Tomcat® software is an open source implementation of the Jakarta Servlet, Jakarta Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Annotations and Jakarta Authentication specifications. These specifications are part of the Jakarta
tomcat.apache.org
EL(Expression Language, 표현(출력) 언어)
- <%="하나의 내용을 출력%> → ${출력 내용}
- 연산자
. : 빈, 맵의 속성에 접근하기 위한 연산자
[] : 배열, 리스트의 요소 또는 빈 ,맵의 속성에 접근하기 위한 연산자
() : 연산의 우선 순위를 변경할 때 사용
empty : 값이 null이거나 비어있으면 true 반환 - 비교 연산자
==(eq) : 두 항이 문자, 숫자일 때 같으면 true, 틀리면 false 반환
!=(ne)
<(lt)
> (gt)
<=(le)
>=(ge) - 논리 연산자
&&(and)
||(or)
!(not) - 산술 연산자
+
-
*
/(div) - requestScope : Session 영역에 사용하는 내장 객체
core
기본적인 기능(컨트롤에 관계된 기능)들을 구현해 놓은 라이브러리
- 출력 태그 : <c:out>
- 변수 설정 : <c:set>
- 변수 삭제 : <c:remove>
- 예외 처리 : <c:catch>
- 조건 처리 : <c:if>, <c:choose> <c:when> <c:otherwise>
- 반복 처리 : <c:forEach>, <c:forTokens> for문과 StringTokenizer 객체 결합
- 페이지 처리 : <c:redirect>이동 , <c:url> 하이퍼링크 주소
fmt
국제화/형식화의 기능을 제공해주는 라이브러리. 다국어 내용처리, 날짜와 숫자 등을 처리하는 것
- 다국어 처리 : <fmt:requestEncoding>
- 날짜 포멧 : <fmt:formatData>
- 숫자 포멧 : <fmt.formatNumber>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>member/main.jsp</title>
</head>
<body>
<h1>member/main.jsp</h1>
<%
//p510~537
//p512
//EL (Expression Language, 표현 언어,출력 언어)
// <%="하나의 내용을 출력" % > => ${출력 내용} -> 좀 더 편하게 출력하기 위해 제공된 기능(프로그램 설치하지 않아도 동작함)
// p516 연산자 empty(값이 null이나 0이면 즉 비어있으면 true)
// / 또는 div, % 또는 mod, && 또는 and, || 또는 or, ! 또는 not
// == 또는 eq(문자든 숫자든), != 또는 ne, < 또는 lt, > 또는 gt, <= 또는 le, >= 또는 ge
// p513 내장객체 sessionScope : Session 영역에 사용하는 내장객체
//p519 JSTL(JSP Standard Tag Library) => if, for % 대신에 태그처럼 사용 -> 프로그램 설치
//p510 JSTL 프로그램 설치 http://tomcat.apache.org
//Apache Tomcat - Taglibs - Download
// Impl: taglibs-standard-impl-1.2.5.jar (pgp, sha512)
// Spec: taglibs-standard-spec-1.2.5.jar (pgp, sha512)
// EL:taglibs-standard-jstlel-1.2.5.jar (pgp, sha512)
// Compat:
// taglibs-standard-compat-1.2.5.jar (pgp, sha512)
// 다운로드 후 Project-src-main-webapp-web-inf-lib 넣기
// => core(if, for문,..), fmt(날짜, 숫자 포멧), xml, sql 종류
// => p519 core
// 설치된 것 가져오기 상단에 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" % >
// <c:out> : 출력, <c:set> : 변수 선언, <c:if>(else문이 없음), <c:choose><c:when><c:otherwise>(switch)
// <c:forEach> : for문, <c:forTokens> : 기준값을 기준으로 반복 ex)"사과;바나나;포도" ,;: 기준으로 반복
// <c:redirect> : 이동, <c:url> : 하이퍼링크 주소
// => p526 fmt
// 설치된 것 가져오기 상단<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" % >
// <fmt:requestEncoding> : 한글 처리, <fmt:formatData> : 날짜 포멧, <fmt:formatNumber> : 숫자 포멧
String id = (String)session.getAttribute("id");
// if(id == null){
// response.sendRedirect("login.me");
// }
%>
<%-- <c:if test="조건"> --%>
<c:if test="${ empty sessionScope.id}">
<c:redirect url="login.me" />
</c:if>
<%=id %> == ${sessionScope.id } 님 환영합니다.
<a href="logout.me">로그아웃</a><br>
<a href="info.me">회원 정보 조회</a><br>
<a href="update.me">회원 정보 수정</a><br>
<a href="delete.me">회원 정보 삭제</a><br>
<%
//로그인 한 사용자가 null이 아닌 경우
// if(id!=null){
// //로그인한 관리자가 "admin" → 일치하면 회원 목록이 보이게
// <%if(id.equals("admin")){
// <a href="list.me">회원 목록(관리자)</a><br>
%>
<%
// }
// }
%>
<c:if test="${ ! empty sessionScope.id}">
<c:if test="${ sessionScope.id == 'admin'}">
<a href="list.me">회원 목록</a>
</c:if>
</c:if><br>
<!-- 태그에 큰따옴표 열고 닫고되어 있으면 작은 따옴표로 감싸준다. -->
<a href="write.bo">글쓰기</a><br>
<a href="list.bo">글목록</a><br>
</body>
</html>
<%@page import="com.itwillbs.domain.MemberDTO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>member/info.jsp</title>
</head>
<body>
<h1>member/info.jsp</h1>
<h1>회원 정보 조회</h1>
<%
// String id = (String)session.getAttribute("id");
// //()클래스의 형 변환
// //main.jsp에서 info.jsp로 이동할 때 값을 들고오지 않음
// //연결정보를 저장하는 session 내장객체 안에 로그인표시("id","id값") 저장
// //session에서 로그인 표시값 가져오기 → String id 변수에 저장
// request.setCharacterEncoding("utf-8");
// //MemberDAO 객체 생성 -> 기억 장소 할당
// MemberDAO memberDAO = new MemberDAO();
// System.out.println("MemberDAO의 기억장소 주소 : " + memberDAO);
// //MemberDAO에 리턴할 형 MemberDTO getMember(String id) 메소드 정의
// //MemberDTO memberDTO = MemberDAO의 기억장소 주소.getMember(id) 메소드 호출
// MemberDTO memberDTO = memberDAO.getMember(id);
// //id가 일치했을 때 memberDTO에 id, pw, name, date가 저장해서 리턴,
// //그렇지 않을 경우 memberDTO에 비어있는 값 null이 리턴
// System.out.println("리턴 받은 MemberDTO의 바구니 기억장소 주소 : " + memberDTO);
MemberDTO memberDTO = (MemberDTO)request.getAttribute("memberDTO");
// if(memberDTO != null){
%>
<%-- 아이디 : <%=memberDTO.getId() %> <br> --%>
<%-- 비밀번호 : <%=memberDTO.getpw() %> <br> --%>
<%-- 이름 : <%=memberDTO.getName() %> <br> --%>
<%-- 가입날짜 : <%=memberDTO.getDate() %> <br> --%>
<%
// }else {
%>
<!-- 아이디 없음 -->
<%
//}
%>
<c:choose>
<c:when test="${! empty memberDTO }">
아이디 : <%=memberDTO.getId() %> <br>
비밀번호 : <%=memberDTO.getpw() %> <br>
이름 : <%=memberDTO.getName() %> <br>
가입날짜 : <%=memberDTO.getDate() %> <br>
</c:when>
<c:otherwise>
아이디 없음
</c:otherwise>
</c:choose>
<a href="main.me">main.me 이동</a>
</body>
</html>
<%@page import="com.itwillbs.domain.MemberDTO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>member/update.jsp</title>
</head>
<body>
<h1>member/update.jsp</h1>
<h1>회원 정보 수정</h1>
<!-- 비밀번호가 맞는지 안맞는지를 먼저 확인한 후 이름만 수정 -->
<%
// request.setCharacterEncoding("utf-8");
// String id = (String)session.getAttribute("id");
// //자바 파일 MemberDAO 객체 생성
// MemberDAO memberDAO = new MemberDAO();
// System.out.println("MemberDAO의 기억장소 주소 : " + memberDAO);
// //MemberDTO memberDTO = MemberDAO의 기억장소 주소 .getMember(id) 메소드 호출
// MemberDTO memberDTO = memberDAO.getMember(id);
// System.out.println("리턴 받은 MemberDTO의 바구니 기억장소 주소 : " + memberDTO);
MemberDTO memberDTO = (MemberDTO)request.getAttribute("memberDTO");
// if(memberDTO!=null){
%>
<!-- <form action="updatePro.me" method="post"> -->
<%-- 아이디 : <input type="text" name="id" value="<%=memberDTO.getId() %>" readonly><br> --%>
<!-- 비밀번호 : <input type="password" name="pw"> 비밀번호 입력 시 회원정보 수정<br> -->
<%-- 이름 : <input type="text" name="name" value="<%=memberDTO.getName() %>"><br> --%>
<%
// }
%>
<c:if test="${! empty memberDTO }">
<form action="updatePro.me" method="post">
아이디 : <input type="text" name="id" value="${memberDTO.id }" readonly><br>
비밀번호 : <input type="password" name="pw"> 비밀번호 입력 시 회원정보 수정<br>
이름 : <input type="text" name="name" value="${memberDTO.name }"><br>
<input type="submit" value="회원정보수정">
</form>
</c:if>
<c:if test="${empty memberDTO }">
아이디 없음
</c:if>
</body>
</html>
<%@page import="com.itwillbs.domain.MemberDTO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>member/info.jsp</title>
</head>
<body>
<h1>member/info.jsp</h1>
<h1>회원 정보 조회</h1>
<%
// String id = (String)session.getAttribute("id");
// //()클래스의 형 변환
// //main.jsp에서 info.jsp로 이동할 때 값을 들고오지 않음
// //연결정보를 저장하는 session 내장객체 안에 로그인표시("id","id값") 저장
// //session에서 로그인 표시값 가져오기 → String id 변수에 저장
// request.setCharacterEncoding("utf-8");
// //MemberDAO 객체 생성 -> 기억 장소 할당
// MemberDAO memberDAO = new MemberDAO();
// System.out.println("MemberDAO의 기억장소 주소 : " + memberDAO);
// //MemberDAO에 리턴할 형 MemberDTO getMember(String id) 메소드 정의
// //MemberDTO memberDTO = MemberDAO의 기억장소 주소.getMember(id) 메소드 호출
// MemberDTO memberDTO = memberDAO.getMember(id);
// //id가 일치했을 때 memberDTO에 id, pw, name, date가 저장해서 리턴,
// //그렇지 않을 경우 memberDTO에 비어있는 값 null이 리턴
// System.out.println("리턴 받은 MemberDTO의 바구니 기억장소 주소 : " + memberDTO);
MemberDTO memberDTO = (MemberDTO)request.getAttribute("memberDTO");
// if(memberDTO != null){
%>
<%-- 아이디 : <%=memberDTO.getId() %> <br> --%>
<%-- 비밀번호 : <%=memberDTO.getpw() %> <br> --%>
<%-- 이름 : <%=memberDTO.getName() %> <br> --%>
<%-- 가입날짜 : <%=memberDTO.getDate() %> <br> --%>
<%
// }else {
%>
<!-- 아이디 없음 -->
<%
//}
%>
<c:choose>
<c:when test="${! empty memberDTO }">
아이디 : ${memberDTO.id}<br>
비밀번호 : ${memberDTO.pw}<br>
이름 : ${memberDTO.name}<br>
가입날짜 : ${memberDTO.date}<br>
</c:when>
<c:otherwise>
아이디 없음
</c:otherwise>
</c:choose>
<a href="main.me">main.me 이동</a>
</body>
</html>
728x90
'KDT > WEB' 카테고리의 다른 글
240115 WEB - JSP23(MVC, JSTL) (0) | 2024.01.15 |
---|---|
240112 WEB - JSP22(MVC, JSTL) (0) | 2024.01.12 |
240109 WEB - JSP20(MVC) (0) | 2024.01.09 |
240104 WEB - JSP19(MVC) (0) | 2024.01.04 |
240102 WEB - JSP18(MVC, 커넥션풀) (0) | 2024.01.02 |