본문 바로가기
Java/비트교육센터 과제

[과제1] DAO와 DTO로 jsp에 내용 출력

by zenna 2022. 8. 18.
728x90
미해결 문제 : selectAll()로 내용 출력이 끝나면 어디서 conn과 stmt를 종료해줘야 하는가..
 jsp에서 끄기엔 conn을 가져오질 않았고
DAO에서 끄면 커서가 넘어오질 않는데..

SelectAll()

	public ResultSet selectAll() {
		try {
			stmt = conn.createStatement();
			rs = stmt.executeQuery(this.SELECT);
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return rs;
	}

출력하는 jsp

<body>
	<!-- ==  return Nothing!!!!! == -->
	<%
	// --------selectAll
	SaramDAO dao = new SaramDAO();
	ResultSet rs = dao.selectAll();
	while (rs.next()) {
		int id = rs.getInt("id");
		String name = rs.getString("name");
		out.println(id+" : "+name+"<br>");
	} // selectAll에서 연결을 꺼버리면 안됨
	
	%>
</body>

 

update()

	public void update(int id, String name, String phone, String email) {
		String sql = this.UPDATE;
		try {
			pstmt = conn.prepareStatement(sql);
			pstmt.setInt(4, id);
			pstmt.setString(1, name);
			pstmt.setString(2, phone);
			pstmt.setString(3, email);
			pstmt.executeUpdate();
			JdbcUtil.close(conn, pstmt, null);
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

jsp

<body>
	<%
	SaramDAO dao = new SaramDAO();
	//chaeeun 추가
	dao.update(2, "chaeeun", "010-01", "kk@na.xo")	;
    response.sendRedirect("TestJdbcUtil.jsp");
	%>
</body>

 

delete

	public void delete(String whatdelete) {
		try {
			Connection conn = JdbcUtil.getConnection();
			System.out.println("ddddddd : " + conn);
//    	  Connection conn = this.conn;
			String sql = this.DELETE;
			pstmt = conn.prepareStatement(sql);
			pstmt.setString(1, whatdelete);
//    	  pstmt.setInt(1, whatdelete);
			System.out.println("dddddddsq : " + pstmt.toString());

			int resul = pstmt.executeUpdate();
			if (resul > 0)
				System.out.println("z: delete sentence is done");
			JdbcUtil.close(conn, pstmt, null);
		} catch (SQLException e) {
			System.out.println("z: error in 50 line");
		}
	}

jsp

	<%
	SaramDAO dao = new SaramDAO();
	//saram 테이블에서 name이 test인 행 삭제
	String whatdelete = "Test";
	dao.delete(whatdelete);
	response.sendRedirect("TestJdbcUtil.jsp");
	%>

 

insert()

	public void insert(String name, String phone, String email) {
		try {
			String sql = this.INSERT;
			pstmt = conn.prepareStatement(sql);
//			pstmt = conn.prepareStatement(this.INSERT);
			pstmt.setString(1, name);
			pstmt.setString(2, phone);
			pstmt.setString(3, email);
			int resul = pstmt.executeUpdate();
			if (resul > 0)
			JdbcUtil.close(conn, pstmt, null);
		} catch (SQLException e) {
		}
	}

이때부터 오류에 지쳐 close(conn)을 포기하기 시작

jsp

	<%
	SaramDAO dao = new SaramDAO();
	dao.insert("CHAE-LIN", "82-01", "leena@c.c");
	response.sendRedirect("TestJdbcUtil.jsp");
	%>

 


selectOne과 findByName은 아직 못했지만

selectAll과 크게 다르지 않을 것 같아요..!!!!

 

728x90

'Java > 비트교육센터 과제' 카테고리의 다른 글

09/15 node.js CRUD구현  (0) 2022.09.15
09.06 과제 (박스 드래그)  (0) 2022.09.06
[09/05] 과제 (javaScript)  (0) 2022.09.05
[8/24] 장바구니 삭제/추가  (0) 2022.08.24
8/23복습  (0) 2022.08.24

댓글