ํฐ์คํ ๋ฆฌ ๋ทฐ
jsp ์์ด๋ ์ค๋ณต๊ฒ์ฌ ์ ํจ์ฑ ๊ฒ์ฌ(ํ์ฌ jspํ์ผ์์ alert ๋์ฐ๊ธฐ)
๋๋์ด๋ฐ๐พ 2018. 5. 9. 23:09ํ๊ต ๊ณผ์ ์ค์ ๋๋ฅผ ๋๋ฌด ๊ดด๋กญํ๋ ๋ถ๋ถ์ด๋ค.
์ผ๋จ ๋ด๊ฐ ํ๋ ค๋ ๊ณผ์ ์
<%@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 ์ฝ๋๋ก๋ง ํ๋ ค๊ณ ํ๋๋ฐ
์ ํจ์ฑ๊ฒ์ฌ๋ ๋๋ถ๋ถ ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๋ง์ด๋ค ์ง๋ ๊ฒ๊ฐ๋ค..
'etc' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์คํ ๋ฆฌ๋ณด๋ ์ ์ ํด power mockup ๋ฌด๋ฃ ๋ผ์ด์ผ์ค ์ทจ๋ํ๊ธฐ (0) | 2018.03.28 |
---|---|
์ดํ๋ฆฌ์ผ์ด์ ์ด๋ฏธ์ง(icon, button...) (0) | 2018.03.21 |
์ดํ๋ฆฌ์ผ์ด์ ํด์๋ ๊ฐ, ๊ธฐํ ๊ณ ์ ๊ฐ๋ค (0) | 2018.03.21 |
๊ฐ์ข ๊ธฐ์ฌ, ์ฐ์ ๊ธฐ์ฌ.. ํ๊ธฐ ๊ธฐ์ถ๋ฌธ์ CBT (0) | 2018.03.21 |
- Total
- Today
- Yesterday
- node.js backend
- nestjs directory
- ํ๋ก๊ทธ๋๋จธ์ค
- Spring
- android
- @nestjs/config
- nestjs/cli
- Promise error
- foreignkey
- nestjs configService
- docker mysql
- JavaScript
- Spring Async
- ๊ธฐ์์ฒญAPI
- nestjs project
- ์๊ณ ๋ฆฌ์ฆ
- backend-framework
- nestjs module
- Request_Limit_Exceeded
- ๋น๋๊ธฐ ์์ฒญ
- typeorm
- sequelize
- nestjs config
- DeferredResult
- Promise bulk
- NestJS
- node.js
- nestjs typeorm
- typeorm ์ฐ๊ฒฐ
- nestjs doc
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |