Frog is cry

Lecture10_Practice 본문

JSP/실습

Lecture10_Practice

Frog is cry 2020. 8. 4. 17:41
package com.goodjobedu.basic;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class Test02 {
	//연습문제1.
	//jdbc를 사용하여 회원들의 정보를 저장할 Acoount 테이블을 생성하는 클래스를 만드세요.
	//다음과 같이 항목이 있어야 합니다.
	//> 이름
	//> 이메일
	//> 적립금
	//> 번호
	//> 가입날짜
	//또한, acc_seq라는 시퀀스도 생성하세요.

		public static void main(String[] args) {
		String id = "myjsp";
		String password = "jsppassword";
		String url = "jdbc:oracle:thin:@localhost:1521:xe";	// DB 위치
		String sql = "CREATE TABLE account( "
				+ "name VARCHAR2(20), "
				+ "no NUMBER, "
				+ "email VARCHAR2(20), "
				+ "point NUMBER,"
				+ " regdate DATE"
				+ ")";
		
		Connection con = null;	//final 구문을 실행 시키기 위해 위로 뻄
		PreparedStatement ps = null;
		
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			con = DriverManager.getConnection(url, id, password);
			ps = con.prepareStatement(sql);
			ps.execute();
			System.out.println("Account 테이블 생성 완료!");

			ps = con.prepareStatement("CREATE SEQUENCE acc_seq NOCACHE");
			ps.execute();
			System.out.println("acc_seq 시퀀스 생성 완료!");
			
		} catch (Exception e) {
			e.printStackTrace();
		} finally {	// 무조건 실행시켜라
			try {
				if(ps != null) {
				ps.close();	
				}
				if(ps != null) {
				con.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		
		
		}
	}

package com.goodjobedu.basic;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

//연습문제2.
//JDBC를 사용하여 Account 테이블에 3개의 레코드를 임의로 추가하는 Test03 클래스를 만드세요.
//단, 회원 번호는 acc_seq를 사용하세요.
public class Test03 {
	public static void main(String[] args) {
		String id = "myjsp";
		String password = "jsppassword";
		String url = "jdbc:oracle:thin:@localhost:1521:xe"; // DB 위치
		
		Connection con = null;
		PreparedStatement ps = null;
		
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			con = DriverManager.getConnection(url, id, password); // 통로 객체
			ps =  con.prepareStatement("INSERT INTO account VALUES( '홍길동', acc_seq.NEXTVAL, 'hong@gmail.com', 2000, SYSDATE )");
			ps.execute();	// 커밋이 자동으로 적용됨
			ps =  con.prepareStatement("INSERT INTO account VALUES( '고길동', acc_seq.NEXTVAL, 'gogo@gmail.com', 1500, SYSDATE )");
			ps.execute();
			ps =  con.prepareStatement("INSERT INTO account VALUES( '김피카츄', acc_seq.NEXTVAL, 'pikapika@gmail.com', 20000, TO_DATE('2018/04/20', 'YYYY/MM/DD'))");
			ps.execute();
			
			System.out.println("레코드 추가 완료!");

		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if(ps != null) {
					ps.close();
				}
				if(con != null) {
					con.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
		
		}
		
	}
}
package com.goodjobedu.basic;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;

public class Test04 {
//	연습문제3.
//	JDBC를 사용하여 이름, 이메일을 입력 받아 Account에 정보를 추가하는 Test04 클래스를 만드세요.
//	단, 회원 번호는 acc_seq를 사용하고, 적립금은 100원, 등록일자는 SYSDATE로 지정하세요.

	public static void main(String[] args) {
		String user = "myjsp";
		String password = "jsppassword";
		String url = "jdbc:oracle:thin:@localhost:1521:xe";
				
		Connection con = null;
		PreparedStatement ps = null;
		
		String name, email;
		Scanner sc = new Scanner(System.in);
		System.out.println("이름 : ");
		name = sc.next();
		System.out.println("이메일 :");
		email = sc.next();
		
		try {
			// 커넥션 준비
			Class.forName("oracle.jdbc.driver.OracleDriver");
			con = DriverManager.getConnection(url, user, password);
			// 쿼리문 준비
			ps = con.prepareStatement("INSERT INTO account VALUES('"+name+"',acc_seq.NEXTVAL,'"+email+"' ,1000 ,SYSDATE)");
			// 실행
			ps.execute();
			System.out.println("레코드 추가 완료!");
			
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if(ps != null) {
					ps.close();
				}
				if(con != null) {
					con.close();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		
		
	}
}

'JSP > 실습' 카테고리의 다른 글

Leture12_ResultSet  (0) 2020.08.05
Leture11_PreparedStatement  (0) 2020.08.05
Lecture09_Connection 연동  (0) 2020.08.04
Lecure08_학생 테이블 생성  (0) 2020.08.03
Lecture07_Sequence  (0) 2020.08.03
Comments