나의 생각을 끄적이는 공간

블로그 이미지

Wooni0477

카테고리

  • 분류 전체보기 (118)
    • 프로그래밍 정리 (102)
      • Front (5)
      • Java (2)
      • JSP, Servlet, DB(oracle) (33)
      • JavaScript (0)
      • Spring (22)
      • Oracle (28)
      • Vue (1)
      • API (1)
      • err (5)
      • ERD (1)
      • etc.. (4)
    • BoostCourse (15)
      • HTML/CSS (7)
      • JavaScript (4)
      • JSP (4)
    • 공부 자료들.. (0)
    • 기타 (0)
    • --------------------------- (0)
    • 끄적이는공간.. (0)
      • 이벤트 (0)
      • 여행 (0)

    최근...

  • 포스트
  • 댓글
  • 트랙백
  • 더 보기

웹 프로그래밍 15(JSP,DB)-DAO, DTO

프로그래밍 정리/JSP, Servlet, DB(oracle) 2020. 1. 3. 14:19
반응형

웹 프로그래밍 15(JSP,DB)-DAO, DTO


​-DAO

데이터 베이스에 접속해서 데이터 추가, 삭제, 수정 등의 작업을 하는 클래스 입니다.

일반적인 JSP 혹은 Servlet 페이지내에 위의 로직을 함께 기술할 수 도 있지만, 유지보수 및 코드의 모듈화를 위해 별도의 DAO클래스를 만들어 사용 합니다.

​


-DTO

DAO클래스를 이용하여 데이터 베이스에서 데이터를 관리할 때 데이터를 일반적인 변수에 할당하여 작업 할수도 있지만, 해당 데이터의 클래스를 만들어 사용 합니다.

​

​

웹브라우저(클라이언트)와 서버간 통신이 자주 일어나 복잡하게 된다면

데이터값들을 원할하게 다루기가 힘들다.

그래서 나온게 DAO와 DTO이다.

관계를 따진다면

jsp 호출 <-> DTO 데이터 저장 및 관리 <-> DAO 데이터를 처리

이렇게 된다.

​

-실제 사용을 해보자

테이블 : member -시작하기전에 임의로 값을 넣어 놓아야한다.

JSP : select.jsp - 데이터를 출력한다.

java : DAOmember.java - 데이터를 처리한다. , DTOmember.java -데이터를 저장 및 관리한다.

​

-예제

ArrayList<객체>와 getter,setter를 사용할 것이다. 잊었다면 다시 복습하는것을 추천한다.

​

-select.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

<%@page import="com.java.connfull.DTOmember"%>

<%@page import="java.util.ArrayList"%>

<%@ page import="com.java.connfull.DAOmember"%>

<%@ page language="java" contentType="text/html; charset=EUC-KR"

pageEncoding="EUC-KR"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">

<title>Insert title here</title>

</head>

<body>

<%

DAOmember daom = new DAOmember();

ArrayList<DTOmember> arr = daom.memberSelect();

for(int i=0;i<arr.size() ;i++)

{

DTOmember dto = arr.get(i);

String name = dto.getName();

String id = dto.getId();

String pw = dto.getPw();

String phone = dto.getPhone();

out.print("이름 : " + name + "<br />" + "아이디 : " + id + "<br />" + "비밀번호 : " + pw + "<br />" + "휴대폰번호 : " + phone + "<br />");

}

%>

</body>

</html>

Colored by Color Scripter

​

-DAOmember.java

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

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

package com.java.connfull;

import java.sql.*;

import java.util.ArrayList;

import com.java.connfull.*;

public class DAOmember {

public DAOmember()

{

try {

Class.forName("oracle.jdbc.driver.OracleDriver");

}catch(Exception e)

{

e.printStackTrace();

}

}

public ArrayList<DTOmember> memberSelect()

{

Connection conn = null;

Statement st = null;

ResultSet re = null;

String query = "select * from member";

ArrayList<DTOmember> dtom = new ArrayList<DTOmember>();

String name,id,pw,phone;

try

{

conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:clouddb", "testid", "password");

st = conn.createStatement();

re = st.executeQuery(query);

while(re.next())

{

name = re.getString("name");

id = re.getString("id");

pw = re.getString("pw");

phone = re.getString("phone");

DTOmember temp = new DTOmember(name,id,pw,phone);

dtom.add(temp);

}

}

catch(Exception e)

{

e.getStackTrace();

}

finally

{

try

{

if(conn != null) conn.close();

if(st != null) st.close();

if(re != null) re.close();

}

catch(Exception e)

{

e.printStackTrace();

}

}

return dtom;

}

}

Colored by Color Scripter

​

-DTOmember.java

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

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

package com.java.connfull;

public class DTOmember {

String name;

String id;

String pw;

String phone;

public DTOmember(String name, String id, String pw, String phone)

{

this.name = name;

this.id = id;

this.pw = pw;

this.phone = phone;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getPw() {

return pw;

}

public void setPw(String pw) {

this.pw = pw;

}

public String getPhone() {

return phone;

}

public void setPhone(String phone) {

this.phone = phone;

}

}

Colored by Color Scripter

​

​

​

-출력


반응형
저작자표시 비영리 변경금지 (새창열림)

'프로그래밍 정리 > JSP, Servlet, DB(oracle)' 카테고리의 다른 글

웹 프로그래밍 17(JSP,DB)-커넥션 풀  (0) 2020.01.05
웹 프로그래밍 16(JSP,DB)-PreparedStatement  (0) 2020.01.05
웹 프로그래밍 14-3(JSP,DB,servlet)-가입, 로그인, 수정 페이지  (0) 2020.01.03
웹 프로그래밍 14-2(JSP,DB,servlet)-가입, 로그인, 수정 페이지  (0) 2020.01.03
웹 프로그래밍 14-1(JSP,DB,servlet)-가입, 로그인, 수정 페이지  (0) 2020.01.03
Posted by Wooni0477
방명록 : 관리자 : 글쓰기
Wooni0477's Blog is powered by daumkakao
Skin info material T Mark3 by 뭐하라
favicon

나의 생각을 끄적이는 공간

  • 태그
  • 링크 추가
  • 방명록

관리자 메뉴

  • 관리자 모드
  • 글쓰기
  • 분류 전체보기 (118)
    • 프로그래밍 정리 (102)
      • Front (5)
      • Java (2)
      • JSP, Servlet, DB(oracle) (33)
      • JavaScript (0)
      • Spring (22)
      • Oracle (28)
      • Vue (1)
      • API (1)
      • err (5)
      • ERD (1)
      • etc.. (4)
    • BoostCourse (15)
      • HTML/CSS (7)
      • JavaScript (4)
      • JSP (4)
    • 공부 자료들.. (0)
    • 기타 (0)
    • --------------------------- (0)
    • 끄적이는공간.. (0)
      • 이벤트 (0)
      • 여행 (0)

카테고리

PC화면 보기 티스토리 Daum

티스토리툴바