JSP

 

 

 

MemberJoinProc.jsp

					//회원 가입이 되었다면 회원 정보를 보여주는 페이지로 이동시켜
					response.sendRedirect("MemberList.jsp");

 

전체

<%@page import="model.MemberDAO"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<jsp:include page="Header.jsp" />
</head>
<body>
	<div class="container">
		<div class="row">
			<div class="col-sm-12 text-center">
				<div class="col-sm-3"></div>

				<div class="col-sm-6">

					<%
						request.setCharacterEncoding("UTF-8"); //post 전달 방식일 경우 한글 처리

						//취미 부분은 별도로 읽어들어 다시 빈 클래스에 저장
						String[] hobby = request.getParameterValues("hobby");
						//배열의 있는 내용을 하나의 스트림으로 젖아
						String texthobby = "";

						for (int i = 0; i < hobby.length; i++) {
							texthobby += hobby[i] + " ";
						}
					%>
					<!--  useBean 을 이용하여 한꺼번에 데이터를 받아옴 -->
					<jsp:useBean id="mbean" class="model.MemberBean">
						<jsp:setProperty name="mbean" property="*" />
						<!--  맵핑 시키시오 -->
					</jsp:useBean>


		<%
					mbean.setHobby(texthobby); //기존 취미는 주소번지가 저장되기에 위에 배열의 
													//내용을 하나의 스트림으로 저장한 변수를 다시입력				
			
					//데이터 베이스클래스 객체 생성
					MemberDAO dao=new MemberDAO();
					dao.insertMember(mbean);
													
					
					//회원 가입이 되었다면 회원 정보를 보여주는 페이지로 이동시켜
					response.sendRedirect("MemberList.jsp");
		
		%>

				</div>
			</div>
		</div>
	</div>


</body>
</html>


 

MemberList.jsp

<%@page import="model.MemberBean"%>
<%@page import="java.util.Vector"%>
<%@page import="model.MemberDAO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<jsp:include page="Header.jsp" />
</head>
<body>
	<!--  1.데이터 베이스에서 모든회원의 정보를 가져옴. 2. table 태그를 이용하여 화면에 정보를 출력 -->
	<%
		 MemberDAO mdao =new MemberDAO();
		 //회원들의 정보가 얼마나 저장되어있는지 모르기에 가변길이인 Vector를 이용하여 데이터를 저장해줌
		 Vector<MemberBean> vec =mdao.allSelectMember();
	
	%>

</body>
</html>

 

 

 

class MemberDAO

추가코드

	//모든회원의 정보를 리턴해주는 메소드 호출
	public Vector<MemberBean> allSelectMember(){
		Vector<MemberBean> v =new Vector<>();
		
		return v;
	}
	
	

 

package model;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.Vector;

//오라클 데이터 베이스에 연결하고 select, insert, update, delete 작업을 실행해주는 클래스입니다.
public class MemberDAO {
	
	//오라클에 접속하는 소스를 작성
	String id="system";//접속 아이디
	String pass="1111";
	String url="jdbc:oracle:thin:@localhost:1521:XE"; //접속 url
	
	Connection con; // 데이터베이스에 접근할수 있도록 설정
	PreparedStatement pstmt; //데이터 베이스에 쿼리를 실행시켜주는 객체
	ResultSet rs; //데이터베이스 테이블의 결과를 리턴받아 자바에 저장해주는 객체
	
	//데이터 베이스에 접근할 수 있도록 도와주는 메소드
	public void getCon(){
		try{
			//1.해당 데이터 베이스를 사용한다고 선언 (클래스를 등록 = 오라클용 사용 )
			Class.forName("oracle.jdbc.driver.OracleDriver");
			//2.해당 데이터 베이스에 접속
			con=DriverManager.getConnection(url, id, pass);	
		}catch(Exception e){
			e.printStackTrace();
		}
	}
	
	//데이터 베이스에 한사람의 회원 정보를 저장해주는 메소드
	public void insertMember(MemberBean mbean){
		
		try{
			getCon();
			//3. 접속후 쿼리준비하여 쿼리를 사용하도록 설정
			String sql ="insert into member values(?, ? , ? ,? ,? , ?, ?, ?)";
			//쿼리를 사용하도록 설정
			pstmt=con.prepareStatement(sql);//jsp 에서 쿼리를 사용하도록 설정
			//?에 맞게 데이터를 맵핑
		    pstmt.setString(1, mbean.getId());
			pstmt.setString(2, mbean.getPass1());
			pstmt.setString(3, mbean.getEmail());
			pstmt.setString(4, mbean.getTel());
			pstmt.setString(5, mbean.getHobby());
			pstmt.setString(6, mbean.getJob());
			pstmt.setString(7, mbean.getAge());
			pstmt.setString(8, mbean.getInfo());
			//4. 오라클에서 쿼리를 실행하시오
			pstmt.executeUpdate(); //insert, update, delete 사용하는 메소드
		}catch(Exception e){
			
			try{
				//5.자원 반납
				if(pstmt!=null)pstmt.close();
				if(con!=null)con.close();
			}catch(Exception e2){
				e2.printStackTrace();
			}	
		}
		
	}
	
	//모든회원의 정보를 리턴해주는 메소드 호출
	public Vector<MemberBean> allSelectMember(){
		Vector<MemberBean> v =new Vector<>();
		
		return v;
	}
	
	
	
}


 

 

 

 

동영상 강좌와 다르게  모바일 적용이 가능한 반응형 부트스트랩을 사용하였다.

여기서는  jsp 를 배우는 강좌 이기 때문에 html 적 요소에는 비중있게 생각 하지 않아도 될 것이다.

소스 :  https://github.com/braverokmc79/jsp_sin

 

 

유튜브 동영상 출처 :

소프트캠퍼스

강사 : 신형섭(잭임연구원)

저작권 : (주)소프트캠퍼스 http://www.softcampus.co.kr 더많은 무료 강의는 사이트에서 확인하실수 있습니다.

 

 

 

 

about author

PHRASE

Level 60  라이트

Do not put the cart before the horse. ( 본말을 전도하지 말라.)

댓글 ( 0)

댓글 남기기

작성