JDBC

[JDBC] DB정보 조회하기(select, ResultSet(),next())

sagesse2021 2021. 11. 29. 21:07
반응형
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ 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>jsp3/select.jsp</h1>
<%
//1단계 JDBC프로그램 가져오기
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);
//3단계 sql 구문 만들기 select 
String sql = "select * from student";
PreparedStatement pstmt = con.prepareStatement(sql);

//4단계 실행 결과 => ResultSet()내장객체에 저장
ResultSet rs = pstmt.executeQuery();
//5단계 저장된 결과에 접근 rs.next() -> 다음행으로 이동 
//                          데이터가 있으면 true 열 접근 /없으면 false
while(rs.next()){
	out.println(rs.getInt(1));
	out.println(rs.getString(2) +"<br>");
	out.println(rs.getInt("num"));
	out.println(rs.getString("name") +"<br>");
}
%>

<%-- <%=rs.next() %><br> --%>

</body>
</html>

<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ 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>jsp3/select.jsp</h1>
<%
//1단계 JDBC프로그램 가져오기
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);
//3단계 sql 구문 만들기 select 
String sql = "select * from student";
PreparedStatement pstmt = con.prepareStatement(sql);

//4단계 실행 결과 => ResultSet()내장객체에 저장
ResultSet rs = pstmt.executeQuery();
//5단계 저장된 결과에 접근 rs.next() -> 다음행으로 이동 
//                          데이터가 있으면 true 열 접근 /없으면 false
// while(rs.next()){
// 	out.println(rs.getInt(1));
// 	out.println(rs.getString(2) +"<br>");
// 	out.println(rs.getInt("num"));
// 	out.println(rs.getString("name") +"<br>");
// }
%>
<table border="1">
<tr><td>학생번호</td><td>학생이름</td></tr>
<%
while(rs.next()){
	%><tr><td><%=rs.getInt("num") %></td>
		<td><%=rs.getString("name") %></td></tr><% 
}

%>
</table>
</body>
</html>

반응형
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>
<%@ 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>jsp3/selectPro.jsp</h1>
<%
//조회할 번호를 들고 서버 request 저장
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);
//3단계 sql 만들기 
String sql = "select * from student where num=?";
PreparedStatement pstmt = con.prepareStatement(sql);
pstmt.setInt(1, num);

//4단계 실행 => 결과 저장
ResultSet rs = pstmt.executeQuery();
//5단계 결과 접근 => 다음행 접근, 열 접근 => 출력
if(rs.next()==true){
	%><%=rs.getInt("num")%>,<%=rs.getString("name")%><% 
}
%>

</body>
</html>

학생 한명의 정보 조회하기

반응형