nme.kr
Nav
Search
Edit
검색
가사
도서관
문학
사전
어학
역사
영화
클래식
프로그램
회화
html
keyboard
links
wiki
sidebar
전체 접힌 글 펴기 / 접기
문서 도구
문서 보기
이전 판
역링크
Fold/unfold all
문서 이름 바꾸기
사이트 도구
최근 바뀜
미디어 관리자
사이트맵
사용자 도구
관리
로그인
왼쪽 메뉴 편집
Plugin 관리
테마 디자인
카카오톡 링크 보내기
맨 위로
추적:
›
keyword
›
markdown
›
eclips
›
ide_program
›
vscode
현재 위치:
index
»
프로그램
»
java
»
ㄴhomework
»
book_source
»
ch20
이 문서는 읽기 전용입니다. 원본을 볼 수는 있지만 바꿀 수는 없습니다. 문제가 있다고 생각하면 관리자에게 문의하세요.
====== Ch.20 데이터베이스 ====== =====데이터베이스 개요===== =====데이터베이스 구조===== =====MariaDB 설치===== https://mariadb.org/download/?t=mariadb&p=mariadb&r=10.6.5&os=windows&cpu=x86_64&pkg=msi&m=yongbok =====기본 SQL===== =====자바 연결===== <code java> package chapter20; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class DBConnect { public static void main(String[] args) { // 데이터베이스 접속 객체 Connection conn = null; try { // MariaDB 드라이버 로드 Class.forName("org.mariadb.jdbc.Driver"); // 데이터베이스 접속 conn = DriverManager.getConnection( "jdbc:mariadb://localhost:3306/javadb", // Host "root", // 사용자 "java1234"); // 암호 } catch (ClassNotFoundException e) { System.out.println(e.getMessage()); } catch (SQLException e) { System.out.println(e.getMessage()); } finally { if (conn != null) try {conn.close();} catch(Exception e) {} } if (conn != null) { System.out.println("데이터베이스 접속"); } } } </code> =====데이터 조회 / 처리===== **MemberVO.java** <code java> package chapter20; public class MemberVO { private int memberno; // 회원번호 private String id; // 아이디 private String name; // 이름 public int getMemberno() { return memberno; } public void setMemberno(int memberno) { this.memberno = memberno; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } </code> **MemberDAO.java** <code java> package chapter20; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; public class MemberDAO { // 데이터베이스 접속 객체 Connection conn = null; Statement stmt = null; ResultSet rs = null; // 데이터베이스 접속 public MemberDAO() { try { // MariaDB 드라이버 로드 Class.forName("org.mariadb.jdbc.Driver"); // 데이터베이스 접속 conn = DriverManager.getConnection( "jdbc:mariadb://localhost:3306/javadb", // Host "root", // 사용자 "java1234"); // 암호 } catch (ClassNotFoundException e) { System.out.println(e.getMessage()); } catch (SQLException e) { System.out.println(e.getMessage()); } } // 데이터 입력 public int insert(MemberVO vo) { int result = 0; try { String sql = "INSERT INTO member (memberno, id, name) " + "VALUES ("+vo.getMemberno()+", '"+vo.getId()+"', '" + vo.getName()+"')"; stmt = conn.createStatement(); result = stmt.executeUpdate(sql); } catch (SQLException e) { System.out.println(e.getMessage()); } return result; } // 데이터 조회 public MemberVO selectOne(int memberno) { MemberVO vo = new MemberVO(); try { String sql = "SELECT * FROM member WHERE memberno="+memberno; stmt = conn.createStatement(); rs = stmt.executeQuery(sql); if (rs.next()) { vo.setMemberno(rs.getInt("memberno")); vo.setId(rs.getString("id")); vo.setName(rs.getString("name")); } } catch (SQLException e) { System.out.println(e.getMessage()); } return vo; } // 데이터 수정 public int update(MemberVO vo) { int result = 0; try { String sql = "UPDATE member SET id='" + vo.getId()+"', name='"+vo.getName()+"' " + "WHERE memberno="+vo.getMemberno(); stmt = conn.createStatement(); result = stmt.executeUpdate(sql); } catch (SQLException e) { System.out.println(e.getMessage()); } return result; } // 데이터 삭제 public int delete(int memberno) { int result = 0; try { String sql = "DELETE FROM member WHERE memberno="+memberno; stmt = conn.createStatement(); result = stmt.executeUpdate(sql); } catch (SQLException e) { System.out.println(e.getMessage()); } return result; } // 회원목록 public List<MemberVO> list() { List<MemberVO> list = new ArrayList<MemberVO>(); try { String sql = "SELECT * FROM member"; stmt = conn.createStatement(); rs = stmt.executeQuery(sql); while (rs.next()) { MemberVO vo = new MemberVO(); vo.setMemberno(rs.getInt("memberno")); vo.setId(rs.getString("id")); vo.setName(rs.getString("name")); list.add(vo); } } catch (SQLException e) { System.out.println(e.getMessage()); } return list; } // 자원 close() public void close() { if (conn != null) { try { conn.close(); } catch (SQLException e) {} } if (stmt != null) { try { stmt.close(); } catch (SQLException e) {} } if (rs != null) { try { rs.close(); } catch (SQLException e) {} } } } </code> **MemberMain.java** <code java> package chapter20; import java.util.List; public class MemberMain { public static void main(String[] args) { // 회원객체 생성 MemberVO vo = new MemberVO(); vo.setMemberno(2); vo.setId("hong"); vo.setName("홍길동"); // dao 객체 생성 MemberDAO dao = new MemberDAO(); // 회원 추가 int r = dao.insert(vo); if (r > 0) { System.out.println("회원 등록 성공"); } // 2번 회원 조회후 출력 MemberVO rvo = dao.selectOne(2); System.out.println("회원정보 출력"); System.out.println("회원번호 : "+rvo.getMemberno()); System.out.println("아이디 : "+rvo.getId()); System.out.println("이름 : "+rvo.getName()); // 회원정보 수정 vo.setName("고길동"); int r2 = dao.update(vo); if (r2 > 0) { System.out.println("회원 수정 성공"); } // 전체회원 목록 조회 System.out.println("회원목록 조회"); List<MemberVO> list = dao.list(); for (int i=0; i<list.size(); i++) { System.out.println("회원번호:"+list.get(i).getMemberno() +"\t아이디:"+list.get(i).getId() +"\t이름:"+list.get(i).getName()); } // 회원 삭제 int r3 = dao.delete(2); if (r3 > 0) { System.out.println("회원 삭제 성공"); } // 자원 해제 dao.close(); } } </code> ++++[실행결과]| <WRAP box> 회원 등록 성공\\ 회원정보 출력\\ 회원번호 : <color #7401DF>2</color>\\ 아이디 : hong\\ 이름 : 홍길동\\ 회원 수정 성공\\ 회원목록 조회\\ 회원번호:<color #7401DF>1</color> 아이디:kim 이름:김유신\\ 회원번호:<color #7401DF>2</color> 아이디:hong 이름:고길동\\ 회원 삭제 성공\\ </WRAP>++++