Servlet/JSP 7일차

0

JSP에서 오라클 DB와의 연동

  • 우선적으로 JDBC에서 했던 것처럼 JDBC driver을 library에 포함시켜줘야하는데 JDBC에서 했던 것처럼하면 안된다.

    위의 사진에서처럼 WEB-INF에 driver을 포함시켜줘야한다.

자세한 페이지 구현하기

목록 페이지와 자세한 페이지

  • 자세한 페이지란 목록 페이지에서 글을 누르면 나타나는 페이지를 뜻한다.
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%

int id = Integer.parseInt(request.getParameter("id"));

String driver = "oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@localhost:1521/xepdb1";
String user = "******";
String password = "*******";
String sql = "SELECT * FROM NOTICE WHERE ID=?";

Class.forName(driver);
Connection con = DriverManager.getConnection(url, user, password);
PreparedStatement st = con.prepareStatement(sql);
st.setInt(1, id);

ResultSet rs = st.executeQuery();

rs.next();
%>
  • 해당 .jsp 파일에 맨위에서 연결하고자하는 DB에 연결을 하고 그에 쿼리문을 작성한 뒤에 값을 가져오면된다.

JSP MVC Model 2

<복습>

  • MVC 패턴은 Model, View, Controller를 분리하여 유지보수를 용이하게 만들 수 있는 디자인 패턴이다.
    • Model(M): 내부 로직, 알고리즘 및 데이터, DB와의 상호작용 등을 담당
    • View(V): 사용자 인터페이스를 담당
    • Controller(C): 중계자 역할을 수행, 클라이언트의 요청을 처리하고 흐름제어를 담당.

MVC Model 1

  • model1은 View와 Controller를 JSP에서 모두 구현하는 구조를 가진다.

MVC Model 2

  • model2는 View와 Controller를 나눠서 구현하는 구조를 뜻한다.

  • 나눠서 개발하는 만큼 복잡도가 높아진다는 단점이 존재한다.

  • 나눠져 있기에 개별적인 유지관리가 가능하고 협업도 가능하게 된다.

  • Java 코드부분인 Servlet은 미리 컴파일해놓을 수 있으므로 실행면에서 장점이 있다.

  • 이 때 Control에서 처리한 부분을 저장하여 View로 넘기는 상태를 저장하는 공간이 필요한데 가장 적합한 것으로는 request이다.

52장~55장

  • 오늘의 한줄평-
    복습도 하자!!
    2022-07-13

0개의 댓글