html ---------------- > 비지니스로직 ------------- > 프레젠테이션
자바 빈
|
jsp jsp html/jsp
|
자바코드
.<a>
.pageContext.forwar()
.jsp:forward
.sendRedirect
+
setAttribute()
j1.personInput.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="text/css">
div{background-color: lightgray; padding: 30px; width: 500px; height: 300px;}
</style>
</head>
<body>
<h2>개인정보입력</h2>
<div>
<form action="j1_2person.jsp">
이름: <input type="text" name="name" size="15" required="required"> <br>
나이: <input type="text" name="age" size="3" required="required"> <br> <!-- required 필수입력 -->
성별: <input type="radio" name="gender" value="남자" checked="checked"> 남자
<input type="radio" name="gender" value="여자"> 여자<br>
주소: <input type="text" name="addr" size="50" required="required"><br>
<input type="submit" value="확인">
</form>
</div>
</body>
</html>
j1_2person.jsp
<%@page import="java.net.URLEncoder"%>
<%@page import="javabean.Person"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%-- <%
request.setCharacterEncoding("utf-8");
String name= request.getParameter("name");
String age= request.getParameter("age");
String gender= request.getParameter("gender");
String addr= request.getParameter("addr");
Person per =new Person();
per.setName(name);
per.setAge(age);
per.setGender(gender);
per.setAddr(addr);
request.setAttribute("per", per);
pageContext.forward("j1_3person.jsp");
%> --%>
<!-- <자바빈> -->
<%--
<jsp:useBean id="per" class="javabean.Person" scope="request">
<jsp:setProperty property="name" name="per"/>
<jsp:setProperty property="age" name="per"/>
<jsp:setProperty property="gender" name="per"/>
<jsp:setProperty property="addr" name="per"/>
</jsp:useBean>
<jsp:forward page="j1_3person.jsp"></jsp:forward>
--%>
<%-- <%
request.setCharacterEncoding("utf-8");
String name= request.getParameter("name");
String age= request.getParameter("name");
String gender= request.getParameter("name");
String addr= request.getParameter("name");
%>
<a href="j1_3person.jsp?name=<%=name %>&age=<%=age %>&gender=<%gender %>&addr=<%=addr %>">결과보기</a> --%>
<%
request.setCharacterEncoding("utf-8");
String name= request.getParameter("name");
String age= request.getParameter("age");
String gender= request.getParameter("gender");
String addr= request.getParameter("addr");
String url="j1_3person.jsp?name=";
String e_name=URLEncoder.encode(name,"utf-8");
String e_age=URLEncoder.encode(age,"utf-8");
String e_gender=URLEncoder.encode(gender,"utf-8");
String e_addr=URLEncoder.encode(addr,"utf-8");
response.sendRedirect(url+e_name+"&age="+e_age+"&gender="+e_gender+"&addr="+e_addr);
%>
</body>
</html>
j1_3person.jsp.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="javabean.Person"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%--
<%
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("text/html;charset=utf-8");
Person per =(Person)request.getAttribute("per");
out.print("이름:"+per.getName()+"<br>");
out.print("나이:"+per.getAge()+"<br>");
out.print("성별:"+per.getGender()+"<br>");
out.print("주소:"+per.getAddr()+"<br>");
%>
--%>
<!-- <자바빈> -->
<%-- <jsp:useBean id="per" class=javabean.Person scope="request"> </jsp:useBean>
이름:<jsp:getProperty property="name" name="per"/>
나이:<jsp:getProperty property="age" name="per"/>
성별:<jsp:getProperty property="gender" name="per"/>
주소:<jsp:getProperty property="addr" name="per"/> --%>
<h3>결과보기</h3>
<%-- <%
String name= requerst.getParmeter("name");
String age= requerst.getParmeter("age");
String gender= requerst.getParmeter("gender");
String addr= requerst.getParmeter("adde");
이름: <%= name%>
나이
성별
주소
%> --%>
<%
String name= request.getParameter("name");
String age= request.getParameter("age");
String gender= request.getParameter("gender");
String addr= request.getParameter("addr");
%>
이름: <%= name%>
나이: <%= age %>
성별: <%= gender%>
주소: <%= addr%>
</body>
</html>
Production
입력 ------------- > 비즈니스로직처리 --------- > 프리젠테이션(출력)
. code
. name
. cost
. count
-----------------------------------------------------------------------------------------
(실습)
1) 스크립틀릿을 활용한 자바코드로 구현
2) 자바빈을 활용한 구현
3) anchor 태그를 활용한 구현
4) sendRedirect를 활용한 구현
j2.html
<html>
<head>
<meta charset="UTF-8">
<title>제품 재고등록</title>
<style type="text/css">
table{
border-collapse: collapse;
box-shadow: 1px 2px lightgray;
}
input{
border:none;
height: 25px;
text-align: center;
}
input:focus{
outline: none;
}
tr{
align-content: center;
}
td{
text-align: center;
padding: 1px;
}
input#btn{
background-color: lightgray;
box-shadow: 1px 1px gray;
font-size: 16px;
}
</style>
<script type="text/javascript">
function chk(){
if(!frm.code.value){
alert("코드를 입력해주세용!");
frm.code.focus(); //frm에 focus를 둔다
return false;
}
if(!frm.name.value){
alert("제품명을 입력해주세용!");
frm.name.focus();
return false;
}
return true;
}
</script>
</head>
<body>
<form action="j2_2.jsp" name="frm" onsubmit="return chk()">
<h3>제품 재고등록</h3>
<table border="1">
<tr><td>상품코드</td><td><input type="text" name="code"></td></tr>
<tr><td>상 품 명</td><td><input type="text" name="name"></td></tr>
<tr><td>상품가격</td><td><input type="text" name="cost"></td></tr>
<tr><td>재 고</td><td><input type="text" name="count"></td></tr>
</table><br>
<input id="btn" type="submit" value="제품등록">
</form>
</body>
</html>
j2_2.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="javabean.Production" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jsp1</title>
</head>
<body>
<%--
<jsp:useBean id="item" class="javabean.Production" scope="request"/>
<jsp:setProperty property="*" name="item"/>
<jsp:forward page="j2_3.jsp"></jsp:forward>
--%>
<%--
<jsp:include page=""></jsp:include>
<%@ include file=" " %> --%>
<a href="j2_3.jsp?code=<%=request.getParameter("code")%>&name=<%=request.getParameter("name")%>&cost=<%=request.getParameter("cost")%>&count=<%=request.getParameter("count")%>">
제품등록결과보기</a>
</body>
</html>
j2_3.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>jsp2</title>
</head>
<body>
<h3>제품 재고현황♥</h3>
<%-- .
<jsp:useBean id="item" class="javabean.Production" scope="request"/>
제품코드 : <jsp:getProperty property="code" name="item"/><br>
제품이름 : <jsp:getProperty property="name" name="item"/><br>
제품가격 : <jsp:getProperty property="cost" name="item"/><br>
제품수량 : <jsp:getProperty property="count" name="item"/> --%>
제품코드 : <%=request.getParameter("code") %><br>
제 품 명 : <%=request.getParameter("name") %><br>
상품가격 : <%=request.getParameter("cost") %><br>
재고수량 : <%=request.getParameter("count") %>
</body>
</html>