728x90
반응형
* eclipse에서 mariaDB를 이미 연동한 상태로 시작합니다*
eclipse에서 mariaDB 사용하기 / mariaDB 연동 :: 러아니푸의 공부방 (tistory.com)
입력한 데이터를 DB로 저장하는 예제
데이터 입력하는.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>학생 정보 입력</title>
</head>
<body>
<h1>학생 정보 입력</h1>
<form action="./insert_studentAction.jsp">
<table border="1">
<tr>
<th>학번</th>
<th><input type="text" name="number"></th>
</tr>
<tr>
<th>이름</th>
<th><input type="text" name="name"></th>
</tr>
<tr>
<th>전공</th>
<th><input type="text" name="major"></th>
</tr>
</table>
<br>
<button type="submit">추가</button>
</form>
</body>
</html>
데이터 저장하는.jsp(insert_studentAction.jsp)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.sql.DriverManager" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.PreparedStatement" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>학생 정보 저장 완료</title>
</head>
<body>
<h1>학생 정보 저장 완료</h1>
<%
// 작성한 값 받아오기
int number = Integer.parseInt(request.getParameter("number"));
String name = request.getParameter("name");
String major = request.getParameter("major");
// mariaDB 준비
Class.forName("org.mariadb.jdbc.Driver");
System.out.println("mariadb 사용가능");
// mariaDB 연결
Connection conn = DriverManager.getConnection("jdbc:mariadb://주소값(기본은 127.0.0.1:3306 입니다)/DB명","사용자명(기본은 root입니다)","비밀번호");
System.out.println(conn + "<-- conn");
// 쿼리
PreparedStatement stmt = conn.prepareStatement("insert into 테이블명(컬럼, 컬럼, 컬럼) values(?,?,?)"); // ?표현식 : 변수자리
stmt.setInt(1, number);
stmt.setString(2, name);
stmt.setString(3, major);
System.out.println(stmt + "<-- stmt");
// 쿼리 실행
stmt.executeUpdate();
conn.close(); // DB 종료
%>
</body>
</html>
DB에서 데이터 읽어오기
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
//mariaDB 준비
Class.forName("org.mariadb.jdbc.Driver");
System.out.println("mariadb 사용가능");
// mariaDB 연결
Connection conn = DriverManager.getConnection("jdbc:mariadb://주소값(기본은 127.0.0.1:3306 입니다)/DB명","사용자명(기본은 root입니다)","비밀번호");
System.out.println(conn + "<-- conn");
// 쿼리
PreparedStatement stmt = conn.prepareStatement("select * from 테이블명");
System.out.println(stmt + "<-- stmt");
// 쿼리 실행
ResultSet rs = stmt.executeQuery();
%>
<table border="1">
<tr>
<td>학번</td>
<td>이름</td>
<td>전공</td>
</tr>
<%
while(rs.next()){
%>
<tr>
<td><%=rs.getString("number") %></td>
<td><%=rs.getString("name") %></td>
<td><%=rs.getString("major") %></td>
</tr>
<%
}
%>
</table>
</body>
</html>
예쁘게 보기위해 테이블로 만들었습니다. ResultSet을 사용하여 값에 접근하는것 이외에는 DB에 저장하는 코드와 크게 다르지 않습니다.
728x90
반응형
'Web > JSP' 카테고리의 다른 글
[jsp]에서 받은 문장의 enter값을 DB에 저장하는 방법 (1) | 2021.11.13 |
---|---|
[jsp] MultipartRequest 파일 업로드 / 이전 사진 삭제 (0) | 2021.10.07 |
[jsp] 화면 페이징 구현하기 (0) | 2021.09.27 |
JSP 다른 화면으로 값 넘기는 방법 (0) | 2021.08.23 |
JSP의 기초 (0) | 2021.08.20 |