
1. Template
1) WebContent - view - template - sidebar.jsp 에 회원가입 링크 추가
6 | < p >< a href = "${pageContext.request.contextPath}/DispatcherServlet?command=registerPage" >회원가입</ a ></ p > |
2. View
1) WebContent - view - member - register.jsp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> < div class = "card" > < div class = "registerClient" > < h3 >회원가입</ h3 > < form method = "post" action = "DispatcherServlet" > < input type = "hidden" name = "command" value = "register" > < table > < tr > < td >아이디</ td >< td >< input type = "text" name = "clientId" ></ td > </ tr > < tr > < td >패스워드</ td >< td >< input type = "password" name = "clientPassword" ></ td > </ tr > < tr > < td >이름</ td >< td >< input type = "text" name = "clientName" ></ td > </ tr > < tr > < td >이메일</ td >< td >< input type = "email" name = "clientEmail" ></ td > </ tr > < tr > < td >휴대폰</ td >< td >< input type = "tel" name = "clientPhone" ></ td > </ tr > < tr > < td >주소</ td >< td >< input type = "text" name = "clientAddress" ></ td > </ tr > < tr > < td colspan = "2" >< input type = "submit" value = "등록" ></ td > </ tr > </ table > </ form > </ div > </ div > |
2) WebContent - view - member - register_result.jsp
123456<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<
script
>
alert("등록이 완료되었습니다.");
location.href="http://localhost:8080/webstudy-board/";
</
script
>
3. Model
1) src - mdoel.ClientDAO에 register 메소드 추가
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | //1. 회원등록 public void register(ClientDTO clientDTO) throws SQLException{ Connection con= null ; PreparedStatement pstmt= null ; try { con=getConnection(); String sql= "insert into client(clientId, clientPassword, clientName, clientEmail, clientPhone, clientAddress) values(?,?,?,?,?,?)" ; pstmt=con.prepareStatement(sql); pstmt.setString( 1 ,clientDTO.getClientId()); pstmt.setString( 2 ,clientDTO.getClientPassword()); pstmt.setString( 3 ,clientDTO.getClientName()); pstmt.setString( 4 ,clientDTO.getClientEmail()); pstmt.setString( 5 ,clientDTO.getClientPhone()); pstmt.setString( 6 ,clientDTO.getClientAddress()); pstmt.execute(); } finally { closeAll(pstmt,con); } } |
2) src - test.TestRegister.java (register 메소드를 테스트)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | package test; import java.sql.SQLException; import model.ClientDAO; import model.ClientDTO; public class TestRegister { public static void main(String[] args) { ClientDTO newClient= new ClientDTO( "test" , "test1234" , "테스트" , "test@test.com" , "010-0000-0000" , "서울시 종로구" ); try { ClientDAO.getInstance().register(newClient); System.out.println( "추가완료" ); } catch (SQLException e) { e.printStackTrace(); } } } |
4. Controller
1) src - controller.HandlerMapping.java에 registerPage와 register command 추가
15 16 17 18 | else if (command.equals( "registerPage" )) //회원가입 페이지 이동 c= new RegisterPageController(); else if (command.equals( "register" )) //회원가입 처리 c= new RegisterController(); |
2) src - controller.RegisterPageController.java 추가
1 2 3 4 5 6 7 8 9 10 11 12 | package controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class RegisterPageController implements Controller { @Override public String execute(HttpServletRequest request, HttpServletResponse response) throws Exception { request.setAttribute( "url" , "/view/member/register.jsp" ); return "/view/template/home.jsp" ; } } |
3) src - controller.ResgisterController.java 추가
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | package controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import model.ClientDAO; import model.ClientDTO; public class RegisterController implements Controller { @Override public String execute(HttpServletRequest request, HttpServletResponse response) throws Exception { String clientId=request.getParameter( "clientId" ); String clientPassword=request.getParameter( "clientPassword" ); String clientName=request.getParameter( "clientName" ); String clientEmail=request.getParameter( "clientEmail" ); String clientPhone=request.getParameter( "clientPhone" ); String clientAddress=request.getParameter( "clientAddress" ); ClientDAO.getInstance().register( new ClientDTO(clientId, clientPassword, clientName, clientEmail, clientPhone, clientAddress)); return "redirect:view/member/register_result.jsp" ; } } |
5.CSS
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | table { border-collapse : collapse ; width : 100% ; } th, td { text-align : left ; padding : 8px ; } tr:nth-child(even) { background-color : #f2f2f2 ;} input[type=submit] { width : 20% ; background-color : #4CAF50 ; color : white ; padding : 14px 20px ; margin : 8px 0 ; border : none ; border-radius: 4px ; cursor : pointer ; } input[type=submit]:hover { background-color : #45a049 ; } |
'1.JAVA Web Programming > [4주차] 게시판 만들기' 카테고리의 다른 글
게시판 - webstudy-board - 회원수정 (0) | 2019.08.11 |
---|---|
게시판 - webstudy-board - 로그인/로그아웃 (0) | 2019.08.11 |
게시판 - webstudy-board - Index 페이지 (0) | 2019.08.11 |
게시판 - webstudy-board - EL, JSTL (0) | 2019.08.07 |
게시판 - webstudy-board - controller,model (0) | 2019.08.05 |