기초공사 (html,css,javascript)
jsp코드들..write.jsp 본문
//
write.jsp 204p
<%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ page import="java.sql.*" %>
<%
//글번호 값 얻기.주어지지 않았으면 0으로 설정
String tmp = request.getParameter("id");
int id = (tmp != null && tmp.length() > 0) ? Integer.parseInt(tmp):0;
//새글쓰기 모드를 가정하고 변수 초기값 설정
String reguser = "";
String btitle = "";
String content = "";
String action = "insert.jsp";
//글 번호가 주어졌으면, 글 수정 모드
if(id > 0){
Class.forName("oracle.jdbc.driver.OracleDriver");//드라이버불러오기
try(
Connection conn = DriverManager.getConnection(
"jdbc:oracle:thin:@192.168.0.54:1525:CDSWT", "PVOICE_TEMP", "temp1234");
Statement stmt = conn.createStatement();
//쿼리실행
ResultSet rs = stmt.executeQuery(
"select * from t_board where id=" +id);
){
if (rs.next()){
//읽어들인 글 데이터를 변수에 저장
reguser = rs.getString("REGUSER");
btitle = rs.getString("BTITLE");
content = rs.getString("CONTENT");
// 글 수정 모드일때는 저장버튼을 누르면 update 실행
action = "update.jsp?id=" + id;
}
}catch(Exception e){
e.printStackTrace();//프로그램 다운 안되고,에러문출력
}
}
%>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/import.css">
<title>글쓰기양식</title>
</head>
<body>
<div class="wrapper" style="padding: 20px;">
<!-- 페이지 타이틀 -->
<div class="tit-wrap">
<h2 class="tit">뉴스&미디어</h2>
</div>
<!--// 페이지 타이틀 -->
<!-- <form method="post" encType = "multipart/form-data" class="content" action="<%=action%>"> -->
<form method="post" action="<%=action%>">
<p class="guide-txt txt-r">
<span class="colr-FF3000">*</span> 표시는 필수 입력 사항입니다.</p>
<table class="bg-grey write-cont">
<tr class="frm-inp">
<th class="lbel-wrap">
<div class="lbel-cont">
<label for="#" class="lbel">작성자</label>
<!-- <span class="required">필수 입력 사항</span> -->
</div>
</th>
<td class="inp-wrap inp-type01">
<input type="text" name="reguser" placeholder="이름을 입력해 주세요." class="inp"
value="<%=reguser%>">
</td>
</tr>
<tr class="frm-inp">
<th class="lbel-wrap">
<div class="lbel-cont">
<label for="#" class="label">제목</label>
</div>
</th>
<td class="inp-wrap inp-type01">
<input type="text" name="btitle" placeholder="제목을 입력해 주세요." class="inp"
value="<%=btitle%>">
</td>
</tr>
<tr class="frm-inp">
<th class="lbel-wrap">
<div class="lbel-cont">
<label for="#" class="lbel">내용</label>
<span class="required">필수 입력 사항</span>
</div>
</th>
<td class="txtarea-wrap txtarea-type01">
<textarea id="content" name="content" placeholder="내용을 입력해 주세요." class="txtarea">
<%=content%>
</textarea>
</td>
</tr>
<tr class="frm-inp">
<th class="lbel-wrap">
<div class="lbel-cont">
<label for="#" class="lbel">첨부파일</label>
</div>
</th>
<td class="inp-wrap inp-type01 board-flex">
<div class="inp-wrap inp-type01">
<input type="text" placeholder="10MB 이하" class="inp" readonly>
</div>
<label for="file_inp" class="btn btn-type01 btn-file">
<input type="file" id="file_inp">
<span class="btn-txt">파일 첨부</span>
</label>
<input type="file" name="fileName">
</td>
</tr>
</table>
<div class="btn-wrap">
<input type="submit" class="btn btn-type01 btn-txt long" value="저장">
<input type="button"class="btn btn-type01 white long btn-txt" value="취소" onclick="history.back()">
</div>
</form>
</div>
</body>
</html>
String tmp = request.getParameter("id");
int id = (tmp != null && tmp.length() > 0) ? Integer.parseInt(tmp):0;
이코드는 id라는 이름으로 주어진 값이 있는지 먼저 체크하고, 있을 때는 IntegerparseInt를 사용하여 정수로 바꾼다.
하지만 주어진 값이 없으면 글 번호를 0으로 설정한다.
글 번호가 0 인 글은 없으므로, 글 번호가 주어지지 않았다는 뜻으로 0을 사용하는 것이다.
(책에서는,
String tmp = request.getParameter("num");
int num = (tmp != null && tmp.length() > 0) ? Integer.parseInt(tmp):0; 이라고 씌여있다.)
// update.jsp 코드 기존
<%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.time.*" %>
<%
//글번호 값 얻기.주어지지 않았으면 0으로 설정
String tmp = request.getParameter("id");
int id = (tmp != null && tmp.length() > 0) ? Integer.parseInt(tmp):0;
//새글쓰기 모드를 가정하고 변수 초기값 설정
String reguser = "";
String btitle = "";
String content = "";
String action = "insert.jsp";
//글 번호가 주어졌으면, 글 수정 모드
if(id > 0){
Class.forName("oracle.jdbc.driver.OracleDriver");//드라이버불러오기
try(
Connection conn = DriverManager.getConnection(
"jdbc:oracle:thin:@192.168.0.54:1525:CDSWT", "PVOICE_TEMP", "temp1234");
Statement stmt = conn.createStatement();
//쿼리실행
ResultSet rs = stmt.executeQuery(
"select * from t_board where id=" +id);
){
if (rs.next()){
//읽어들인 글 데이터를 변수에 저장
reguser = rs.getString("reguser");
btitle = rs.getString("btitle");
content = rs.getString("content");
// 글 수정 모드일때는 저장버튼을 누르면 update 실행
action = "update.jsp?id=" + id;
}
}catch(Exception e){
e.printStackTrace();//프로그램 다운 안되고,에러문출력
}
}
%>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="css/import.css">
<title>글쓰기양식</title>
</head>
<body>
<div class="wrapper" style="padding: 20px;">
<!-- 페이지 타이틀 -->
<div class="tit-wrap">
<h2 class="tit">뉴스&미디어</h2>
</div>
<!--// 페이지 타이틀 -->
<form method="post" encType = "multipart/form-data" class="content" action="<%=action%>">
<p class="guide-txt txt-r">
<span class="colr-FF3000">*</span> 표시는 필수 입력 사항입니다.</p>
<table class="bg-grey write-cont">
<tr class="frm-inp"> <!-- display:flex -->
<th class="lbel-wrap">
<div class="lbel-cont">
<label for="#" class="lbel">작성자</label>
<!-- <span class="required">필수 입력 사항</span> -->
</div>
</th>
<td class="inp-wrap inp-type01">
<input type="text" name="reguser" placeholder="이름을 입력해 주세요." class="inp"
value="<%=reguser%>">
</td>
</tr>
<tr class="frm-inp">
<th class="lbel-wrap">
<div class="lbel-cont">
<label for="#" class="lbel">제목</label>
</div>
</th>
<td class="inp-wrap inp-type01">
<input type="text" placeholder="제목을 입력해 주세요." class="inp" value="<%=btitle%>">
</td>
</tr>
<tr class="frm-inp">
<th class="lbel-wrap">
<div class="lbel-cont">
<label for="#" class="lbel">내용</label>
<span class="required">필수 입력 사항</span>
</div>
</th>
<td class="txtarea-wrap txtarea-type01">
<textarea name="#" id="#" placeholder="내용을 입력해 주세요." class="txtarea">
<%=content%>
</textarea>
</td>
</tr>
<tr class="frm-inp"><!-- flex -->
<th class="lbel-wrap">
<div class="lbel-cont">
<label for="#" class="lbel">첨부파일</label>
</div>
</th>
<td class="inp-wrap inp-type01 board-flex">
<div class="inp-wrap inp-type01">
<input type="text" placeholder="10MB 이하" class="inp" readonly>
</div>
<label for="file_inp" class="btn btn-type01 btn-file">
<input type="file" id="file_inp">
<span class="btn-txt">파일 첨부</span>
</label>
<!-- <input type="file" name="fileName"> -->
</td>
</tr>
</table>
<div class="btn-wrap">
<input type="submit" class="btn btn-type01 btn-txt long" value="저장" onclick="location.href='list.jsp'">
<input type="button"class="btn btn-type01 white long btn-txt" value="취소" onclick="history.back()">
</div>
</form>
</div>
</body>
</html>
// update 수정 후 코드
'게시판' 카테고리의 다른 글
게시판 샘플 (2) | 2024.01.15 |
---|---|
rs.getString( ) / jsp 파라미터 넘겨 받는법 / write,update,list수정코드 (0) | 2024.01.12 |
NumberFormatException (0) | 2024.01.11 |
java : package와 class설명 사이트 (0) | 2024.01.11 |
sql developer : number와 int (0) | 2024.01.11 |