JDBC

[JDBC] 조회수 제어하기

sagesse2021 2022. 2. 4. 22:29
반응형
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>jsp6/content.jsp</h1>
<% 
// content.jsp?num=1
// int num = num 파라미터값 가져오기
int num = Integer.parseInt(request.getParameter("num"));
// 1단계 드라이버로더
Class.forName("com.mysql.jdbc.Driver");
// 2단계 디비연결
String dbUrl ="jdbc:mysql://localhost:3306/jspdb3";
String dbUser = "root";
String dbPass  = "1234";
Connection con = DriverManager.getConnection(dbUrl, dbUser,  dbPass);
//readcount 조회수 증가
//3단계 sql
String sql2 = "update board set readcount=readcount+1 where num=? ";
	PreparedStatement pstmt2 = con.prepareStatement(sql2);
	pstmt2.setInt(1, num);
	
	//4단계 실행
	pstmt2.executeUpdate();


// 3단계 sql 구문 조건 num=?
String sql = "select * from board where num=?";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setInt(1, num);
// 4단계 sql구문 실행 결과 저장
ResultSet rs = pstmt.executeQuery();
// 5단계 if 다음행 이동 => 열접근 출력
 	if(rs.next()){
 		%>
		<table border="1">
 		<tr><td>글번호</td><td><%=rs.getInt("num") %></td>
    		<td>글쓴이</td><td><%=rs.getString("name") %></td></tr>
		<tr><td>글쓴날짜</td><td><%=rs.getTimestamp("date") %></td>
    		<td>조회수</td><td><%=rs.getInt("readcount") %></td></tr>    
		<tr><td>제목</td>
   			  <td colspan="3"><%=rs.getString("subject") %></td></tr>
		<tr><td>내용</td>
   			  <td colspan="3"><%=rs.getString("content") %></td></tr>
   			  <tr><td colspan="4">
   			<input type="button" value="글수정"
   			onclick="location.href='updateForm.jsp?num=<%=rs.getInt("num") %>'">  
   			<input type="button" value="글삭제"
   			onclick="location.href='deleteForm.jsp?num=<%=rs.getInt("num") %>'">  
   				 <input type="button" value="글목록" 
   				 onclick="location.href = 'list.jsp'"></td></tr> 
   				 </table>   
   		<% 
 	}
	 %>
</body>
</html>
반응형

반응형