IT 공부/JSP

JavaBean 2

toraa 2022. 8. 1. 12:12

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>

 

'IT 공부 > JSP' 카테고리의 다른 글

Session  (0) 2022.08.02
Cookies  (0) 2022.08.01
JavaBean 1  (1) 2022.07.29
문서전환 실습  (0) 2022.07.29
문서전환  (1) 2022.07.29