ํฌํ ํ๋ก๊ทธ๋จ์ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ(๋ณธ์ธ์ธ์ฆ, ์ค๋ณตํฌํํ์ธ, ํฌํ ํผ, ํฌํ์์ ์ ๊ฑฐ ํ๋ณด์์ ์ ๋ณด ์ ๋ฐ์ดํธ)์ ๋ํ ๊ฒ์ ๋ชจ๋ ๊ตฌํํ์์ง๋ง ๋ฉํ ๋์ ์กฐ์ธ์ผ๋ก ๋ช ๊ฐ์ง ๋น ํธ๋ฆฐ ๊ธฐ๋ฅ์ ์๊ฒ ๋์๋ค.
1. ํฌํ ์ทจ์
๋ณธ์ธ ์ธ์ฆ ํ์ ํฌํ ํผ์ผ๋ก ์ ๊ทผํ๊ฒ ๋๋๋ฐ ํฌํ ํผ์์ ํฌํ๋ฅผ ์ทจ์ํ๊ณ ํ์ผ๋ก ๋์๊ฐ๋ ๊ธฐ๋ฅ์ด ์์๋ค. ์๋ฅผ ๋ค์ด ์ ๊ฑฐ ํ๋ณด์๋ฅผ ๋ดค๋๋ฐ ํฌํํ๊ณ ์ถ์ ์ฌ๋์ด ์๋ค๊ฑฐ๋ ํฌํ๋ฅผ ๋์ค์ ํ๊ณ ์ถ์ด์ ธ์ ํฌํ ํผ์์ ๋น ์ ธ ๋๊ฐ๋ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํ์ง ์์๋ ๊ฒ์ด๋ค. ์๊ฐํด๋ณด๋ฉด ์ด๋ค ์ฌ์ดํธ์์ ์์ธ ํ์ด์ง์์ ๋ฉ์ธ ํ์ด์ง๋ก ๋์๊ฐ๋ ๊ธฐ๋ฅ, ๊ทธ๋ฆฌ๊ณ ํผ์ ๋ฃ์ ํ์ด์ง์ ๊ฒฝ์ฐ์๋ ํผ ์์ฑ์ ์ทจ์ํ๋ ๋ฒํผ์ด ์๋ ๊ฒ์ด ์ด์ฐ๋ณด๋ฉด ๋น์ฐํ๋ฐ ๋ฏธ์ฒ ๊ณ ๋ คํ์ง ๋ชปํ๋ ๊ฒ ๊ฐ๋ค. ๊ทธ๋์ ํฌํ ํผ์ด ์๋ VoteView.jsp ์์ ํฌํ๋ฅผ ์ทจ์ํ๊ณ ๋ฉ์ธ ํ๋ฉด์ธ index.jsp ๋ก ๋์๊ฐ๋ ๋ฒํผ์ ํ๋ ์ถ๊ฐํ๋ค.
2. ์ ๊ฑฐ ๋ํ์จ ๋ฆฌ์คํธ
์ผ๋ฐ์ ์ผ๋ก ํฌํ ํ๋ก๊ทธ๋จ์์ ์ค์๊ฐ ์ ๊ฑฐ ํ๋ณด์์ ๋ํ์จ์ ๋ฆฌ์คํธ๋ก ๋ณด์ฌ์ฃผ๋ ํ์ด์ง๋ ๋ง๋ค์ง ์๊ฒ ์ง๋ง ์ผ๋จ ์ด๊ฑด ๊ณต๋ถ๋ฅผ ์ํ ๋ฏธ๋ ํ๋ก์ ํธ์ด๊ณ , ์ค์๊ฐ์ผ๋ก ํ๋ณด์๋ค์ ๋ํ ์๊ฐ ์ ์ ๋ฐ์ดํธ ๋๋์ง๋ฅผ ๋ณผ ์ ์๋๋ก ๋ํ ์๋ฅผ ๋ณด์ฌ์ฃผ๋ ๋ฆฌ์คํธ ํ์ด์ง๋ ๋ง๋ค์ด ๋ณด์๋ค. ๊ทผ๋ฐ ๋ค ํ๊ณ ๋์ ๋ณด๋ ๋ญ๊ฐ ๋๊ฒ ์ด๋ ต๊ฒ ํ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ค์๋ค. ๊ตฌํํ๊ธฐ ์ ์๋ DB SELECT ํด์ ๋ณด์ฌ์ฃผ๋ฉด ๋์ง ์์๊น ํ๊ณ ์ฝ๊ฒ ์๊ฐํ๋๋ฐ ๊ฐ ์ ๋ณด๋ฅผ ArrayList์ add ํ๋ ๋ฐฉ์์ผ๋ก ํ๋๋ ๋ฆฌ์คํธ๋ฅผ ๋ณด์ฌ์ฃผ๋ ํ์ด์ง๋ฅผ ์๋ก๊ณ ์นจ ํ ๋๋ง๋ค ๋ฆฌ์คํธ์ ๊ฐ์ ์ ๋ณด๊ฐ ๊ณ์ add ๋์ด์ ๋ฆฌ์คํธ๊ฐ ๊ณ์ ๋์ด๋๋ ๊ฒ ๋ฌธ์ ์๋ค. ๊ทธ๊ฑฐ ๊ฐ์ ํ๋๋ผ ์ฝ์ง์ ๋ง์ด ํ๋ค.
์ ๊ฑฐ ํ๋ณด์์ index์ ์ด๋ฆ, ๋ํ ์๋ฅผ ๊ฐ๊ฐ JavaBean ๊ฐ์ฒด์ ๋ฃ์๋ค.
// President.java ํ์ผ (JavaBean)
public class President {
static ArrayList<String> name = new ArrayList<>(4);
static ArrayList<Integer> vote = new ArrayList<>(4);
static ArrayList<Integer> id = new ArrayList<>(4);
public ArrayList<Integer> getVote() {
return vote;
}
public void setVote(int pid, int pvote) {
if(vote.size() >= id.size()) {
vote.set(pid-1, pvote);
}
else{
vote.add(pvote);
}
}
public ArrayList<String> getName() {
return name;
}
public void setName(String pname) {
if(name.indexOf(pname) >= 0) {
name.set(name.indexOf(pname), pname);
}
else {
name.add(pname);
}
}
public ArrayList<Integer> getId() {
return id;
}
public void setId(int pid) {
if(id.indexOf(pid) >= 0) {
id.set(id.indexOf(pid), pid);
}
else {
id.add(pid);
}
}
}
๊ทธ๋ฐ๋ฐ setId(), setName(), setVote()์์ ๋ค์ด์ค๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ๋ฆฌ์คํธ์ add ํด๋ฒ๋ฆฌ๋๊น ๋ฆฌ์คํธ๊ฐ ๋ฌดํ์ ๋์ด๋๋ ๋ฌธ์ ๊ฐ ์๊ฒผ๋ค. ๊ทธ๋์ ๋ค์ด์ค๋ ๋ฐ์ดํฐ๊ฐ ์ด๋ฏธ ์กด์ฌํ๋ ์ธ๋ฑ์ค์ธ์ง ํ์ธ์ ํ๊ณ ์ด๋ฏธ ์กด์ฌํ๋ ์ธ๋ฑ์ค์ด๋ฉด ํด๋น ์ธ๋ฑ์ค์ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๋ set ํจ์๋ก ์ฒ๋ฆฌ๋ฅผ ํ๊ณ , ์ฒ์ ๋ค์ด์ค๋ ๋ฐ์ดํฐ์ด๋ฉด add ํจ์๋ก ๋ฆฌ์คํธ์ ์ถ๊ฐ๋๊ฒ๋ ์ฒ๋ฆฌ๋ฅผ ํ๋ค.
list() ํจ์๋ฅผ ๋๋ฆฌ๋ฉด select * from president; ๋ฅผ ์ฒ๋ฆฌํด์ ํจ์๊ฐ ๋์๊ฐ ๋๋ง๋ค president์ ๋ชจ๋ ์ ๋ณด๋ฅผ select ํด์ ํ ์ด๋ธ๋ก ๋ฐ๋ก ๋ณด์ฌ์ฃผ๋ ๋ฐฉ์์ผ๋ก ์ฒ๋ฆฌํด๋ ๋ ๊ฒ ๊ฐ๊ธด ํ๋ฐ ๊ทธ๊ฒ๋ณด๋ค๋ ๋ญ๊ฐ select๋ฅผ ํด์์ ์ ๋ฐ์ดํธ ๋ ์ ๋ณด๊ฐ ์์ผ๋ฉด ๊ทธ ๋ฐ์ดํฐ๋ง ๋ณ๊ฒฝํด์ฃผ๋ ๋ฐฉ์์ผ๋ก ํ๊ณ ์ถ์ด์ ์กฐ๊ธ ๋ณต์กํ๊ฒ ๋ค์ด๊ฐ๊ฒ ๋ ๊ฒ ๊ฐ๋ค.
'JAVA > Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JAVA] Spring Boot ํ๊ฒฝ์์ ํฐ์บฃ ์ฌ์ฉํ๊ธฐ (0) | 2021.09.27 |
---|---|
[JAVA] Spring Bean ์ฌ์ฉํ๊ธฐ (0) | 2021.09.24 |
[JAVA] Spring ์ผ๋ก ์ต๋ช ํฌํ(์ ๊ฑฐ) ํ๋ก๊ทธ๋จ ๋ง๋ค๊ธฐ (0) | 2021.09.17 |
[JAVA] Spring ๋ฐ์ดํฐ ์ฃผ๊ณ ๋ฐ๊ธฐ (0) | 2021.09.16 |
[JAVA] Spring Controller ์์ํ๊ธฐ (0) | 2021.09.16 |
๋๊ธ