JSP&Servlet) bean
1. 빈
- 빈을 만든다는 것은 데이터 객체를 만들기 위한 클래스를 만드는 것입니다.
2. 빈 관련 액션 태그(useBean, setProperty, getProperty)
- useBean : 특정 Bean을 사용한다고 명시 할 때 사용합니다.
<jsp:useBean id="student" class="com.javalec.ex.student: scope="page"/>
-Scope
<bean.jsp>
3. JDBC
- JDBC 드라이버 로드( DriverManager ) -> 데이터베이스 연결( Connection ) -> SQL문( Statement ) -> 데이터베이스 연결 해제( ResultSet )
<memberData.jsp>
4. DAO, DTO
DAO(Data Access Object) : 데이터 베이스에 접속해서 데이터 추가, 삭제, 수정 등의 작업을 하는 클래스 입니다. 일반적인 JSP 혹은 Servlet 페이지 내에 위의 로직을 함께 기술할 수도 있지만, 유지보수 및 코드의 모듈화를 위해 별도의 DAO클래스를 만들어 사용합니다.
DTO(Data Transfer Object) : DAO 클래스를 이용하여 데이터 베이스에서 데이터를 관리할 때 데이터를 일반적인 변수에 할당하여 작업 할수도 있지만, 해당 데이터의 클래스를 만들어 사용합니다.
- 빈을 만든다는 것은 데이터 객체를 만들기 위한 클래스를 만드는 것입니다.
2. 빈 관련 액션 태그(useBean, setProperty, getProperty)
- useBean : 특정 Bean을 사용한다고 명시 할 때 사용합니다.
<jsp:useBean id="student" class="com.javalec.ex.student: scope="page"/>
-Scope
- page : 생성된 페이지 내에서만 사용 가능 합니다.
- request : 요청된 페이지 내에서만 사용 가능 합니다.
- session : 웹브라우저의 생명주기와 동일하게 사용 가능 합니다.
- application : 웹 어플리케이션 생명주기와 동일하게 사용 가능 합니다.
package com.example; public class Student { private String name; private int age; private int grade; private int studentNum; public String getName() { return name; } public int getAge() { return age; } public int getGrade() { return grade; } public int getStudentNum() { return studentNum; } public void setName(String name) { this.name = name; } public void setAge(int age) { this.age = age; } public void setGrade(int grade) { this.grade = grade; } public void setStudentNum(int studentNum) { this.studentNum = studentNum; } }
<bean.jsp>
<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="EUC-KR" %> <jsp:useBean id="student" class="com.example.Student" scope="page"/> <html> <head> <title>Title</title> </head> <body> <jsp:setProperty name="student" property="name" value="홍길동"/> <jsp:setProperty name="student" property="age" value="13"/> <jsp:setProperty name="student" property="grade" value="6" /> <jsp:setProperty name="student" property="studentNum" value="7"/> 이름 : <jsp:getProperty name="student" property="name"/> <br/> 나이 : <jsp:getProperty name="student" property="age"/><br/> 학년 : <jsp:getProperty name="student" property="grade"/><br/> 번호 : <jsp:getProperty name="student" property="studentNum"/><br/> </body> </html>
- JDBC 드라이버 로드( DriverManager ) -> 데이터베이스 연결( Connection ) -> SQL문( Statement ) -> 데이터베이스 연결 해제( ResultSet )
<memberData.jsp>
<%@ page import="java.sql.Statement" %> <%@ page import="java.sql.ResultSet" %> <%@ page import="java.sql.Connection" %> <%@ page import="java.sql.DriverManager" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%! Connection connection; Statement statement; ResultSet resultSet; String driver = "oracle.jdbc.driver.OracleDriver"; String url = "jdbc:oracle:thin:@localhost:1525:admin"; String uid = "admin"; String upw = "admin"; String query = "select * from member"; %> <html> <head> <title>Title</title> </head> <body> <% try{ Class.forName(driver); connection = DriverManager.getConnection(url, uid, upw); statement = connection.createStatement(); resultSet = statement.executeQuery(query); while(resultSet.next()){ String id = resultSet.getString("id"); String pw = resultSet.getString("pw"); String name = resultSet.getString("name"); String phone = resultSet.getString("phone"); out.println(id+"/"+pw+"/"+name+"/"+phone+"<br/>"); } }catch (Exception e){ e.printStackTrace(); } finally { try{ if(resultSet != null) resultSet.close(); if(statement != null) statement.close(); if(connection != null) connection.close(); }catch (Exception e){ e.printStackTrace(); } } %> </body> </html>
4. DAO, DTO
DAO(Data Access Object) : 데이터 베이스에 접속해서 데이터 추가, 삭제, 수정 등의 작업을 하는 클래스 입니다. 일반적인 JSP 혹은 Servlet 페이지 내에 위의 로직을 함께 기술할 수도 있지만, 유지보수 및 코드의 모듈화를 위해 별도의 DAO클래스를 만들어 사용합니다.
DTO(Data Transfer Object) : DAO 클래스를 이용하여 데이터 베이스에서 데이터를 관리할 때 데이터를 일반적인 변수에 할당하여 작업 할수도 있지만, 해당 데이터의 클래스를 만들어 사용합니다.
댓글 없음: