โถ JSP์์ ์๋ฐ๋น ์ฌ์ฉํ๊ธฐ
<jsp:useBean/> ํ๊ทธ = ์๋ฐ์์ new ์์ฑ์. ์๋ฐ๋น ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ธฐ ์ํ ์ก์ ํ๊ทธ์ด๋ค.
<jsp:setProperty/> ํ๊ทธ = ์๋ฐ์์ set() ๋ฉ์๋. ์๋ฐ๋น ํด๋์ค์ ์์ฑ ๊ฐ์ ์ค์ ํ๊ธฐ ์ํ ํ๊ทธ์ด๋ค.
โ
โโ
์์ 1) <jsp:setProperty/> ํ๊ทธ์ ์ญํ
โ
BeanTest2.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<jsp:useBean id="beantest" class="test.BeanTest" scope="page"/>
<jsp:setProperty name="beantest" property="name" value="BeanTest!"/>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaBean Test</title>
</head>
<body>
<b>์๋ฐ๋น ์ฌ์ฉ ์์ </b>
<h3><%=beantest.getName() %></h3>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โ
โโ
์์ 2) ๋ง์ฝ ํด๋ผ์ด์ธํธ์์ name์ด๋ผ๋ ์ด๋ฆ์ ํ๋ผ๋ฏธํฐ ๊ฐ์ด ์ ์ก๋์ด ์ค๊ณ ์ด ๊ฐ์ name ์์ฑ ๊ฐ์ผ๋ก ํ ๋นํ๊ณ ์ถ์๋
โ
beanTest.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="beanTest3.jsp">
์ด๋ฆ :<input type="text" name="name"/>
<br/>
<input type="submit" value="์ ์ก"/>
</form>
</body>
</html>
beanTest3.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<jsp:useBean id="beantest" class="test.BeanTest" scope="page"/>
<jsp:setProperty name="beantest" property="name" param="name"/>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaBean Test</title>
</head>
<body>
<b>์๋ฐ๋น ์ฌ์ฉ ์์ </b>
<h3><%=beantest.getName() %></h3>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
โโ
โ
์์ 3 ) ํด๋ผ์ด์ธํธ์์ ์ ์ก๋์ด ์ค๋ ํ๋ผ๋ฏธํฐ ์ด๋ฆ์ด ๋น๊ฐ์ฒด์ ์์ฑ๋ช ๊ณผ ๋ชจ๋ ๊ฐ๋ค๋ฉด ํ ๋ฒ์ ํ ๋นํ ์์ฑ๋ช ์ ํ ๋นํ ์ ์๋ค.
property="*"๋ก ์ค์ ํ๋ฉด ํด๋ผ์ด์ธํธ์์ ์ ์ก๋์ด ์ค๋ ํ๋ผ๋ฏธํฐ ๊ฐ์ด ๋ชจ๋ ๊ฐ์ ์ด๋ฆ์ ๋น ๊ฐ์ฒด์ ์์ฑ ๊ฐ์ผ๋ก ์๋์ผ๋ก ํ ๋น๋๋ค.
โ
1. ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๋น ํด๋์ค๋ฅผ ์์ฑํ๋ค.
โ
BeanTest2.java
package test;
public class BeanTest2 {
private String name;
private String addr;
private String email;
private String birthday;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddr() {
return addr;
}
public void setAddr(String addr) {
this.addr = addr;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
}
2. ํด๋ผ์ด์ธํธ ํ์ด์ง๋ฅผ ์์ฑํ๋ค.
โ
beanTest2.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
#formArea {
margin:auto;
width:400px;
border:1px solid black;
}
h1, fieldset {
text-align:center;
}
</style>
</head>
<body>
<section id="formArea">
<h1>property="*" ํ
์คํธ</h1>
<form action="beanTest4.jsp" method="post">
<fieldset>
<label for="name">์ด๋ฆ : </label><input type="text" name="name" id="name"/><br>
<label for="addr">์ฃผ์ : </label><input type="text" name="addr" id="addr"/><br>
<label for="email">์ด๋ฉ์ผ์ฃผ์ : </label><input type="text" name="email" id="email"/><br>
<label for="birthday">์๋
์์ผ : </label><input type="date" name="birthday" id="birthday"/><br>
<input type="submit" value="์ ์ก">
</fieldset>
</form>
</section>
</body>
</html>
โ
3. bean ๊ด๋ จ ์ก์ ํ๊ทธ๋ฅผ ์ฌ์ฉํ๋ beanTest4.jsp ํ์ด์ง๋ฅผ ์์ฑํ๋ค.
โ
beanTest4.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("UTF-8");
%>
<jsp:useBean id="beantest" class="test.BeanTest2" scope="page"/>
<jsp:setProperty name="beantest" property="*"/>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaBean Test</title>
</head>
<body>
<h1>์๋ฐ๋น ์์ฑ ๊ฐ ์ถ๋ ฅ</h1>
<b>์ด๋ฆ : </b><%=beantest.getName() %><br>
<b>์ฃผ์ : </b><%=beantest.getAddr() %><br>
<b>์ด๋ฉ์ผ ์ฃผ์ : </b><%=beantest.getEmail() %><br>
<b>์๋
์์ผ : </b><%=beantest.getBirthday() %><br>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
์ฌํ ) ${beantest.์์ฑ ๊ฐ}
โ
beanTest4.jsp (์์ ๋ณธ)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("UTF-8");
%>
<jsp:useBean id="beantest" class="test.BeanTest2" scope="page"/>
<jsp:setProperty name="beantest" property="*"/>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaBean Test</title>
</head>
<body>
<h1>์๋ฐ๋น ์์ฑ ๊ฐ ์ถ๋ ฅ</h1>
<b>์ด๋ฆ : </b><%=beantest.getName() %><br>
<h3>${beantest.name}</h3>
<b>์ฃผ์ : </b><%=beantest.getAddr() %><br>
<h3>${beantest.addr}</h3>
<b>์ด๋ฉ์ผ ์ฃผ์ : </b><%=beantest.getEmail() %><br>
<h3>${beantest.email}</h3>
<b>์๋
์์ผ : </b><%=beantest.getBirthday() %><br>
<h3>${beantest.birthday}</h3>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
*<jsp:getProperty/> ํ๊ทธ = ์๋ฐ์์ get() ๋ฉ์๋
<jsp:getProperty/> ํ๊ทธ๋ ์๋ฐ๋น ํด๋์ค์ ์์ฑ ๊ฐ์ ๊ฐ์ ธ์ค๊ธฐ ์ํ ํ๊ทธ์ด๋ค.
<jsp:getProperty/> ํ๊ทธ๋ <jsp:setProperty/> ํ๊ทธ์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ฉค๋ฒ ๋ณ์์์ ๊ฐ์ ์ง์ ๊ฐ์ ธ์ค์ง ์๋๋ค.
โ
beanTest5.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<jsp:useBean id="beantest" class="test.BeanTest" scope="page"/>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaBean Test</title>
</head>
<body>
<b>์๋ฐ๋น ์ฌ์ฉ ์์ </b>
<h3><%=beantest.getName() %></h3>
<h3><jsp:getProperty name="beantest" property="name"/></h3>
</body>
</html>
<์คํ ๊ฒฐ๊ณผ>
*์๋ฐ๋น์ ์์ญ = <jsp:useBean/>์ scope ์์ฑ
์๋ฐ๋น์ ์์ญ(scope)์ page, request, session, application ์ด๋ ๊ฒ 4๊ฐ์ง๋ก ๋๋์ด์ง๋ฉฐ scope๋ฅผ ์ง์ ํ์ง ์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ ๊ฐ์ page๊ฐ ๋๋ค.
์์ญ |
์ค๋ช |
page |
๋น ๊ฐ์ฒด ๊ณต์ ๋ฒ์๊ฐ ํ์ฌ ํ์ด์ง์ ๋ฒ์์๋ง ํ์ ๋๋ค. ํ์ด์ง๊ฐ ๋ณ๊ฒฝ๋๋ฉด ๊ณต์ ๊ฐ ์ ์ง๋์ง ์๋ scope์ด๋ค. |
request |
request ์์ฒญ์ ๋ฐ๊ณ ์ฒ๋ฆฌ๋ฅผ ์๋ฃํ ๋๊น์ง ์์กด๋๋ scope์ด๋ค. |
session |
ํด๋ผ์ด์ธํธ๋น ํ๋์ฉ ํ ๋น๋๋ ์์ญ์ด๋ค. ํด๋ผ์ด์ธํธ๊ฐ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ข ๋ฃํ๊ธฐ ์ ๊น์ง ์ ์ง๋๋ scope์ด๋ค. |
application |
์ฌ์ดํธ ์ ์ฒด์ ๋ฒ์๋ฅผ ๊ฐ์ง๋ฉฐ, ์๋ฒ๊ฐ ์ข ๋ฃ๋๊ธฐ ์ ์๋ ๊ณ์ ์ ์ง๋๋ scope์ด๋ค. |
โ
'JSP' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JSP] ์ค์ต (Request scope๋ฅผ ์๋ฐ๋น์์ ์ฌ์ฉํ๊ธฐ) (0) | 2021.02.24 |
---|---|
[JSP] ์๋ฐ๋น์ ์ด์ฉํ ํ์ ๊ฐ์ ํผ ์์ฑ (0) | 2021.02.24 |
[JSP] ์๋ฐ๋น (0) | 2021.02.24 |
[JSP] ์ก์ ํ๊ทธ๋ฅผ ํ์ฉํ ํ ํ๋ฆฟ ํ์ด์ง ์์ฑ (0) | 2021.02.10 |
[JSP] ์ก์ ํ๊ทธ (0) | 2021.02.10 |
๋๊ธ