데이터 입력
데이터 입력 완료
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
String currentPage = request.getParameter("currentPage");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>insertNoticeForm</title>
</head>
<body>
<div>
<h1>
<a href="./storeList.jsp?currentPage=<%=currentPage%>">맛집 리스트</a>
</h1>
</div>
<h1>맛집 입력</h1>
<form action="./insertStoreAction.jsp" method="post">
<table>
<tr>
<td>
store_name
</td>
<td>
<input type="text" name="storeName">
</td>
</tr>
<tr>
<td>
store_category
</td>
<td>
<select name="storeCategory">
<option value="한식">한식</option>
<option value="일식">일식</option>
<option value="중식">중식</option>
</select>
</td>
</tr>
<tr>
<td>
store_address
</td>
<td>
<textarea rows="2" cols="80" name="storeAddress"></textarea>
</td>
</tr>
<tr>
<td>
store_emp_cnt
</td>
<td>
<input type="number" name="storeEmpCnt">
</td>
</tr>
<tr>
<td>
store_begine
</td>
<td>
<input type="date" name="storeBegine">
</td>
</tr>
<tr>
<td>
store_pw
</td>
<td>
<input type="password" name="storePw">
</td>
</tr>
</table>
<div>
<button type="submit">입력</button>
</div>
</form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import = "java.sql.Connection" %>
<%@ page import = "java.sql.DriverManager" %>
<%@ page import = "java.sql.PreparedStatement" %>
<%
//post방식 인코딩 처리
request.setCharacterEncoding("utf-8");
// validation(요청 파라미터값 유효성 검사)
if(request.getParameter("storeName") == null
|| request.getParameter("storePw") == null
|| request.getParameter("storeName").equals("")
|| request.getParameter("storePw").equals("")) {
response.sendRedirect("./insertStoreForm.jsp");
return;
}
String storeName = request.getParameter("storeName");
String storeCategory = request.getParameter("storeCategory");
String storeAddress = request.getParameter("storeAddress");
int storeEmpCnt = Integer.parseInt(request.getParameter("storeEmpCnt"));
String storeBegine = request.getParameter("storeBegine");
String storePw = request.getParameter("storePw");
Class.forName("org.mariadb.jdbc.Driver");
Connection conn = DriverManager.getConnection(
"jdbc:mariadb://127.0.0.1:3306/homework0419","root","java1234");
String sql = "insert into store(store_name, store_category, store_address, store_emp_cnt, store_begine, store_pw, createdate, updatedate) values(?,?,?,?,?,?,now(),now())";
PreparedStatement stmt = conn.prepareStatement(sql);
stmt.setString(1, storeName);
stmt.setString(2, storeCategory);
stmt.setString(3, storeAddress);
stmt.setInt(4, storeEmpCnt);
stmt.setString(5, storeBegine);
stmt.setString(6, storePw);
// select를 제외한 query문을 사용할때 excuteUpdate()를 사용 int값으로 return값이 나온다.
int row = stmt.executeUpdate();
// 디버깅
System.out.println(row + "<-- row");
// conn.commit(); // conn.setAutoCommit(true); 디폴트 값이 true라 자동커밋 -> commit생략 가능
// redirection
response.sendRedirect("./storeList.jsp");
%>