class MemberDAO
package model;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
//오라클 데이터 베이스에 연결하고 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){
e.printStackTrace();
}finally{
try{
//5.자원 반납
if(pstmt!=null)pstmt.close();
if(con!=null)con.close();
}catch(Exception e2){
e2.printStackTrace();
}
}
}
}
MemberJoinProc.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);
%>
오라클에 완료 ~
</div>
</div>
</div>
</div>
</body>
</html>
동영상 강좌와 다르게 모바일 적용이 가능한 반응형 부트스트랩을 사용하였다.
여기서는 jsp 를 배우는 강좌 이기 때문에 html 적 요소에는 비중있게 생각 하지 않아도 될 것이다.
소스 : https://github.com/braverokmc79/jsp_sin
유튜브 동영상 출처 :
강사 : 신형섭(잭임연구원)
저작권 : (주)소프트캠퍼스 http://www.softcampus.co.kr 더많은 무료 강의는 사이트에서 확인하실수 있습니다.















댓글 ( 4)
댓글 남기기