ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

ํ•™๊ต ๊ณผ์ œ ์ค‘์— ๋‚˜๋ฅผ ๋„ˆ๋ฌด ๊ดด๋กญํ˜”๋˜ ๋ถ€๋ถ„์ด๋‹ค.

์ผ๋‹จ ๋‚ด๊ฐ€ ํ•˜๋ ค๋Š” ๊ณผ์ •์€


<%@page import="java.util.ArrayList"%>

<%@page import="com.test.simple.JdbcHandler"%>

<%@ page language="java" contentType="text/html; charset=UTF-8" import="java.sql.*"

    pageEncoding="UTF-8"%>

<%@page import="com.test.simple.Validation"%>    

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<% request.setCharacterEncoding("utf-8"); %>


<html>

<head>

<style>

table {

font-family: arial, sans-serif;

border-collapse: collapse;

width: 100%;

}

td, th {

border: 1px solid #2E9AFE;

padding: 8px;

}

</style>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

<form action="enrollValidation.jsp" name=form1 method=post >

<table>

<tr>

<th align="right"><span style="color:red">โ˜…</span>์•„์ด๋””</th>

<th align="left">

<input type="text" name="id" id="id">

<input type="button" value="์ค‘๋ณตํ™•์ธ" onclick="return validation()"> ์ค‘๋ณตํ™•์ธ ์ ˆ์ฐจ๋ฅผ ๊ฑฐ์ณ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

</th>

</tr>

<tr>

<th align="right"><span style="color:red">โ˜…</span>๋น„๋ฐ€๋ฒˆํ˜ธ</th>

<th align="left">

<input type="password" name="password"> ๋‹ค์‹œ ํ•œ๋ฒˆ

<input type="password" name="pwdCheck"> (์˜๋ฌธ+์ˆซ์ž 4~12์ž๋ฆฌ)

</th>

</tr>

<tr>

<th align="right"><span style="color:red">โ˜…</span>์ด๋ฆ„</th>

<th align="left">

<input type="text" name="name">

</th>

</tr>

<tr>

<th align="right"><span style="color:red">โ˜…</span>Email</th>

<th align="left">

<input type="text" name="email">

</th>

</tr>

<tr>

<th align="right"><span style="color:red">โ˜…</span>์šฐํŽธ๋ฒˆํ˜ธ</th>

<th align="left">

<input type="text" name="addr1"> - <input type="text" name="addr2">

<input type="button" name="pwdCheck" value="์šฐํŽธ๋ฒˆํ˜ธ ๊ฒ€์ƒ‰">

</th>

</tr>

<tr>

<th align="right"><span style="color:red">โ˜…</span>์ฃผ์†Œ</th>

<th align="left">

<input type="text" name="addr3">

</th>

</tr>

<tr>

<th align="right"><span style="color:red">โ˜…</span>๋‚˜๋จธ์ง€ ์ฃผ์†Œ</th>

<th align="left">

<input type="text" name="addr4"> ๋‚˜๋จธ์ง€ ์ฃผ์†Œ๋ฅผ ์ ์–ด ๋„ฃ์Šต๋‹ˆ๋‹ค.

</th>

</tr>

<tr>

<th align="right">ํ•ธ๋“œํฐ</th>

<th align="left">

<select name="ph1">

<option value="010">010</option>

<option value="011">011</option>

<option value="016">016</option>


</select>

<input type="text" name="ph2" size="5" maxlength="4"> - <input type="text" name="ph3" size="5" maxlength="4">

</th>

</tr>

</table>

<center>

<input type="submit" value="๋“ฑ๋ก" style="WIDTH: 60pt;">

<input type="reset" value="๋‹ค์‹œ์“ฐ๊ธฐ" style="WIDTH: 60pt;">

</center>

</form>

<%

JdbcHandler handler = new JdbcHandler();

handler.getConnection();

ArrayList<String> li = new ArrayList<>();

li = handler.getData();

StringBuffer values = new StringBuffer();

for(int i=0; i<li.size(); i++) {

if(values.length()>0) {

values.append(',');

}

values.append('"').append(li.get(i)).append('"');

}

%>

<script type="text/javascript">

function validation() {

var id = document.getElementById("id").value;

var flag = true;

var list = [ <%=values.toString()%>];

//์•„์ด๋”” ์ž…๋ ฅ ์—ฌ๋ถ€

if(id=="") {

alert("์•„์ด๋””๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”.");

return ;

}

for(var i=0; i<list.length; i++) {

if(id==list[i]){

flag = false;

break;

}

}

  if(flag)

alert("์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์•„์ด๋”” ์ž…๋‹ˆ๋‹ค.");

else

alert("์ค‘๋ณต๋œ ์•„์ด๋”” ์ž…๋‹ˆ๋‹ค."); 

}

</script>

</body>

</html>


์™„๋ฒฝํ•˜๊ฒŒ ์งœ๋†“์€ ์ฝ”๋“œ๋Š” ์•„๋‹Œ๋ฐ ์ œ์ผ ์•  ๋จน์—ˆ๋˜ ๋ถ€๋ถ„์ด ์•„์ด๋”” ์ค‘๋ณต ๊ฒ€์‚ฌ๋ฅผ ํ•˜๋Š” ๋ถ€๋ถ„์ด์—ˆ๋‹ค. ๋“ฑ๋ก๋ฒ„ํŠผ์„ ๋ˆŒ๋ €์„ ๋•Œ form ํƒœ๊ทธ ์•ˆ์— ์žˆ๋Š” ์ •๋ณด๋“ค์ด JDBC๋กœ ์—ฐ๊ฒฐ๋œ DB์— ์ €์žฅ๋˜๋Š” ํ˜•ํƒœ์ด๋‹ค. 


์ €์žฅ๋˜์–ด์žˆ๋Š” DB๋ฅผ ํ† ๋Œ€๋กœ ์•„์ด๋”” ์ค‘๋ณต๊ฒ€์‚ฌ๋ฅผ ํ•ด์•ผํ•˜๋Š”๋ฐ input value์˜ ๊ฐ’์€ jsp์˜ ์ฝ”๋“œ์—์„œ๋Š” post ๊ณผ์ •์ด ๋๋‚˜์ง€ ์•Š๋Š” ์ด์ƒ ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜๊ฐ€ ์—†๋‹ค. (๋“ฑ๋ก ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ธฐ ์ „๊นŒ์ง€๋Š” jsp ์ฝ”๋“œ๋กœ๋Š” input value์˜ ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜๊ฐ€ ์—†๋‹ค.)


๊ทธ๋Ÿฐ๋ฐ ์ค‘๋ณต๊ฒ€์‚ฌ๋Š” ํŽ˜์ด์ง€๊ฐ€ ๋„˜์–ด๊ฐ€๊ธฐ ์ „์— ์ด๋ฃจ์–ด์ ธ์•ผํ•˜๋Š” ๊ณผ์ •์ด๋‹ค. ํ•ด๋‹น ํŽ˜์ด์ง€์•ˆ์—์„œ ์ค‘๋ณต๊ฒ€์‚ฌ ๋กœ์ง์„ ๋Œ๋ ค์•ผํ•˜๋Š” ๊ฒƒ์ด๋‹ค.



<%

JdbcHandler handler = new JdbcHandler();

handler.getConnection();

ArrayList<String> li = new ArrayList<>();

li = handler.getData();

%>


์ด ์†Œ์Šค๋Š” DB์— ์ €์žฅ๋œ id๊ฐ’์„ ArrayList ํ˜•ํƒœ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ์ปจํŠธ๋กค๋Ÿฌ์ด๋‹ค. ( jsp ํŽ˜์ด์ง€๋งŒ ๋ณด์—ฌ์ฃผ๋‹ค๋ณด๋‹ˆ ์ปจํŠธ๋กค๋Ÿฌ์ธ java ์ฝ”๋“œ๋Š” ์ƒ๋žต)


๋ง˜๊ฐ™์•„์„œ๋Š” for๋ฌธ์„ ๋Œ๋ ค์„œ input value๋ž‘ ArrayList ๋ž‘ ๋น„๊ตํ•ด๋ฒ„๋ฆฌ๊ณ  ์‹ถ์€๋ฐ jsp์—์„œ ์ž‘์„ฑ๋œ ์ž๋ฐ”์ฝ”๋“œ์—์„œ input value ๊ฐ’์„ ๋ฐ›์„ ์ˆ˜๊ฐ€ ์—†๋‹ค. ๊ทธ๋ž˜์„œ ์ด ๊ฐ’์„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธํ•œํ…Œ ๋„˜๊ฒจ์ค˜์•ผ ํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด ๋ฐฐ์—ด์„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฐฐ์—ด์— ๊ทธ๋Œ€๋กœ ๋ณต์‚ฌํ•ด์ฃผ๊ธฐ ์œ„ํ•ด ์‚ฌ์ „์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค. (์ฐธ๊ณ ๋กœ jsp ๋ณ€์ˆ˜๋ฅผ javascript๋กœ ๋„˜๊ธธ ์ˆœ ์žˆ์ง€๋งŒ ๊ทธ ๋ฐ˜๋Œ€๋กœ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.)



StringBuffer values = new StringBuffer();

for(int i=0; i<li.size(); i++) {

if(values.length()>0) {

values.append(',');

}

values.append('"').append(li.get(i)).append('"');

}


๊ตฌ๊ธ€๋งํ•˜๋‹ค๊ฐ€ ๊ฒจ์šฐ๊ฒจ์šฐ ์ฐพ์€ ๊ตฌ๋ฌธ์ธ๋ฐ ๊ทธ๋Œ€๋กœ ์“ฐ๋‹ˆ ์ž˜ ์ž‘๋™๋˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์•„๋งˆ ๋ฐฐ์—ด ์ž๋ฃŒํ˜•์ด ArrayList ์ผ ๋•Œ๋งŒ ๊ฐ€๋Šฅํ•œ ๊ฒƒ ๊ฐ™๋‹ค.

์ž๋ฐ”์˜ ArrayList๋ฅผ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ฐฐ์—ด์— ๊ทธ๋Œ€๋กœ ๋ณต์‚ฌ๋ฅผ ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ํ˜•๋ณ€ํ™˜? ๊ฐ™์ด ์ƒ๊ฐํ•˜๋ฉด ๋  ๊ฒƒ๊ฐ™๋‹ค.


<script type="text/javascript">

function validation() {

var id = document.getElementById("id").value;

var flag = true;

var list = [ <%=values.toString()%>];

//์•„์ด๋”” ์ž…๋ ฅ ์—ฌ๋ถ€

if(id=="") {

alert("์•„์ด๋””๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”.");

return ;

}

for(var i=0; i<list.length; i++) {

if(id==list[i]){

flag = false;

break;

}

}

  if(flag)

alert("์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์•„์ด๋”” ์ž…๋‹ˆ๋‹ค.");

else

alert("์ค‘๋ณต๋œ ์•„์ด๋”” ์ž…๋‹ˆ๋‹ค."); 

}

</script>


document.getElementById ๋ฅผ ์ด์šฉํ•˜๋ฉด post ๋˜๊ธฐ ์ „์˜ input value์˜ ๊ฐ’๋„ ์•Œ ์ˆ˜๊ฐ€ ์žˆ๋‹ค. 

๊ทธ๋ฆฌ๊ณ  java ๋ณ€์ˆ˜๋ฅผ js ๋ณ€์ˆ˜๋กœ ๋Œ€์ž…ํ•˜๊ธฐ ์œ„ํ•ด์„  <%= %> ์˜ ํ˜•ํƒœ๋กœ java ๋ณ€์ˆ˜๋ฅผ ๊ฐ์‹ธ๊ณ  ์žˆ์œผ๋ฉด ๋œ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ํ˜„์žฌ input text์— ์ž‘์„ฑ๋œ ๊ฐ’๊ณผ list ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ๋ฐ˜๋ณต๋ฌธ์„ ํ†ตํ•ด ๋น„๊ตํ•ด์„œ ๋™์ผํ•œ ๊ฐ’์ด ์žˆ๋Š”์ง€๋งŒ ์ฒดํฌํ•˜๋ฉด ๋œ๋‹ค.



์ˆ˜์—…์ด jsp ์ˆ˜์—…์ด๋ผ์„œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋‚˜ ajax ์ด๋Ÿฐ๊ฑด ์ˆ˜์—…๋‚ด์šฉ์— ์—†๊ธฐ๋„ํ•ด์„œ ์ตœ๋Œ€ํ•œ java๋ž‘ jsp ์ฝ”๋“œ๋กœ๋งŒ ํ•˜๋ ค๊ณ ํ–ˆ๋Š”๋ฐ 

์œ ํšจ์„ฑ๊ฒ€์‚ฌ๋Š” ๋Œ€๋ถ€๋ถ„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ๋งŽ์ด๋“ค ์งœ๋Š” ๊ฒƒ๊ฐ™๋‹ค.. 

๋Œ“๊ธ€
๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
๋งํฌ
ยซ   2025/01   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
๊ธ€ ๋ณด๊ด€ํ•จ