bean

기혁·2023년 3월 22일

JSP 학습

목록 보기
17/19

MemberDao.java

package com.codingbox.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import com.codingbox.vo.MemberBean;

public class MemberDao {
	
	
	Connection conn;
	PreparedStatement pstm;
	ResultSet rs;
	
	public int getAge(String name) {
		String sql = "SELECT age FROM MEMBER WHERE name=?";
		int age = 0;
		
		try {
			conn = DBconnection.getConnection();
		
			PreparedStatement pstm = conn.prepareStatement(sql);
			pstm.setString(1, name);
		
			ResultSet rs = pstm.executeQuery();
			
			if (rs.next()) {
				age = rs.getInt(1);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return age;
		
		}
	
	
	public ArrayList<MemberBean> selectAll(){
		String sql = "SELECT * FROM MEMBER";
		ArrayList<MemberBean> result = new ArrayList<>();
		
		try {
			conn = DBconnection.getConnection();
		
			PreparedStatement pstm = conn.prepareStatement(sql);
			ResultSet rs = pstm.executeQuery();
			
			while(rs.next()) {
				MemberBean member = new MemberBean();
				member.setName(rs.getString(1));
				member.setAge(rs.getInt(2));
				result.add(member);
				}
			
		} 
			catch (SQLException e) {
			e.printStackTrace();
		}
		
		return result;
	}
}

MemberDao.java

package com.codingbox.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import com.codingbox.vo.MemberBean;

public class MemberDao {
	
	
	Connection conn;
	PreparedStatement pstm;
	ResultSet rs;
	
	public int getAge(String name) {
		String sql = "SELECT age FROM MEMBER WHERE name=?";
		int age = 0;
		
		try {
			conn = DBconnection.getConnection();
		
			PreparedStatement pstm = conn.prepareStatement(sql);
			pstm.setString(1, name);
		
			ResultSet rs = pstm.executeQuery();
			
			if (rs.next()) {
				age = rs.getInt(1);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return age;
		
		}
	
	
	public ArrayList<MemberBean> selectAll(){
		String sql = "SELECT * FROM MEMBER";
		ArrayList<MemberBean> result = new ArrayList<>();
		
		try {
			conn = DBconnection.getConnection();
		
			PreparedStatement pstm = conn.prepareStatement(sql);
			ResultSet rs = pstm.executeQuery();
			
			while(rs.next()) {
				MemberBean member = new MemberBean();
				member.setName(rs.getString(1));
				member.setAge(rs.getInt(2));
				result.add(member);
				}
			
		} 
			catch (SQLException e) {
			e.printStackTrace();
		}
		
		return result;
	}
}

검색 창

age_search.jsp

<%@ 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>
	<form action="age_db.jsp">
		<label>이름
			<input type="text" name="name"/><br>
		</label>
			<input type="submit" value="검색"/>
	</form>
	<input type="button" value="전체확인하기" onclick="selectAll();"/>
	
	<script>
		function selectAll(){
			location.href = "age_all.jsp";
		}
	</script>
</body>
</html>

결과값
이름 치면 DB에 저장된 인원 정보 나오게 출력하기
전체 확인하기를 누르면 DB에 저장된 인원 정보를 전체 출력

<%@page import="com.codingbox.dao.MemberDao"%>
<%@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>
	<%	
		String name = request.getParameter("name");
		MemberDao mdao = new MemberDao();
		int age = mdao.getAge(name);
	%>
	<%if(age !=0){%>
		이름 : <%=name %><br>
		나이 : <%=age %><br>
	<%} else { %>
		찾는 이름이 없습니다.
	<%} %>
	
	<input type="button" value="다시 검색하기"
	onclick="location.href='age_search.jsp'">
</body>
</html>

검색 결과값 출력

<%@page import="com.codingbox.dao.MemberDao"%>
<%@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>
	<%	
		String name = request.getParameter("name");
		MemberDao mdao = new MemberDao();
		int age = mdao.getAge(name);
	%>
	<%if(age !=0){%>
		이름 : <%=name %><br>
		나이 : <%=age %><br>
	<%} else { %>
		찾는 이름이 없습니다.
	<%} %>
	
	<input type="button" value="다시 검색하기"
	onclick="location.href='age_search.jsp'">
</body>
</html>

결과값
DB MEMBER 테이블에 저장된 데이터값

강해린 입력시 결과 // 다시 돌아가기 누르면 초기화면으로 복귀

결과값 전체출력

<%@page import="com.codingbox.vo.MemberBean"%>
<%@page import="java.util.ArrayList"%>
<%@ 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>
	<jsp:useBean id="mdao" class="com.codingbox.dao.MemberDao"></jsp:useBean>
	<%
		ArrayList<MemberBean> result = mdao.selectAll();
	%>
	<table border="1">
		<tr>
			<th>이름</th>
			<th>나이</th>
		</tr>
		<% for(MemberBean member : result){ %>
			<tr>
				<td><%=member.getName() %></td>
				<td><%=member.getAge() %></td>
			</tr>
		<%} %>
	</table>
	<input type="button" value="다시 검색하기"
	onclick="location.href='age_search.jsp'">
</body>
</html>

결과값
DB에 저장된값

전체확인하기 클릭시

profile
⭐️내가만든쿠키⭐️

0개의 댓글