[JSP] JSPμμ μλ°λΉ μ¬μ©νκΈ°
βΆ 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μ΄λ€. |
β