국비학원/공부

29일차 jap(4) 메인페이지 + 자바빈즈 + 쿠키

mikan- 2023. 7. 3. 16:05

# form (메인)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JAVA beans</title>
</head>
<body>
	<h1>자바빈즈(입력폼) 연습</h1>
	<!-- <form method = "post" action = "bean1.jsp"> -->
	<!-- <form method = "post" action = "bean2.jsp"> -->
	<form method = "post" action = "bean3.jsp">
		이름 : <input type = "text" name = "str"><p>
		주소 : <input type = "text" name = "address"><p>
		<input type = "submit" value = "보내기">
	</form>
</body>
</html>

 

# beans

<html>
<head>
<meta charset="UTF-8">
<title>자바빈즈가 나온 배경</title>
</head>
<body>
<%
	request.setCharacterEncoding("utf-8");
%>
<%!
	// 입력하면 -> 매개변수를 전달하고 -> 저장(필드별로 따로 저장) -> 테이블 필드별로 저장 -> 
	
	// jsp (화면디자인 + 자바코드(메소드 작성))
	String str = "선언문"; // 웹상에서 입력받은 값을 저장
	String address = ""; // 주소

	public void setStr(String str) {
		this.str = str;
		System.out.println("setStr() 호출됨");
	}
	
	public void setAddress(String address) {
		this.address = address;
		System.out.println("setAddress() 호출됨");
	}
	
	public String getStr() {
		return str;
	}
	
	public String getAddress() {
		return address;
	}
%>
<%
	String str = request.getParameter("str");
	//String address = request.getParameter("address");
%>
메소드호출(Setter) : <% setStr(str); %>
<p>
저장된 값 출력(Getter) : <h1><%= getStr() %></h1>
</body>
</html>

 

# beans (2)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"
    import = "test.BeanDTO"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>자바빈즈가 나온 배경</title>
</head>
<body>
<%
	request.setCharacterEncoding("utf-8");
	String str = request.getParameter("str");
	String address = request.getParameter("address");
	
	System.out.println("str : " + str);
	System.out.println("address : " + address);
	
	// 1. 객체 생성 (목적 : 데이터 저장, 메소드호출(저장, 조회, 출력))
	BeanDTO bd = new BeanDTO();
	
	// 2. 입력받은 개수만큼 Setter method 호출
	bd.setStr(str);
	bd.setAddress(address);
	
	// 3. Getter method를 통해서 호출해서 나중에 테이블의 필드에 맞게 출력
	out.println("입력받은 이름 : " + bd.getStr() + "<br>");
	out.println("입력받은 주소 : " + bd.getAddress() + "<br>");
%>
<hr>
<b><%= bd.getStr() %></b>님 잘 오셨습니다.
<b>주소는 <%= bd.getAddress() %></b>에 사시는군요.
</body>
</html>

 

# beans (3)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"
    import = "test.BeanDTO"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>자바빈즈가 나온 배경</title>
</head>
<body>
<!-- useBean : 객체를 만들어줌 -->
<!-- useBean id="객체명" class = "패키지명.클래스명" scope = "범위" -->

<%
	request.setCharacterEncoding("utf-8");
	String str = request.getParameter("str");
	String address = request.getParameter("address");
	
	System.out.println("str : " + str);
	System.out.println("address : " + address);
	
	// 1. 객체 생성 (목적 : 데이터 저장, 메소드호출(저장, 조회, 출력))
	// BeanDTO bd = new BeanDTO();
	
	
	// 2. 입력받은 개수만큼 Setter method 호출
	// bd.setStr(str);
	// bd.setAddress(address);
	
	// 3. Getter method를 통해서 호출해서 나중에 테이블의 필드에 맞게 출력
	// out.println("입력받은 이름 : " + bd.getStr() + "<br>");
	// out.println("입력받은 주소 : " + bd.getAddress() + "<br>");
%>
<jsp:useBean id="bd" class = "test.BeanDTO" scope = "page" />
<%-- 
<jsp:setProperty property="str" name="bd" value = "<%= str %>" />
<jsp:setProperty property="address" name="bd" value = "<%= address %>" /> 
--%>
<jsp:setProperty name = "bd" property = "*" />
<hr>
액션태그를 통한 Getter method를 호출하는 경우<br>
getStr() 호출 하는 경우<br>
<jsp:getProperty property = "str" name = "bd" />
<jsp:getProperty property = "address" name = "bd" />
<b><%= bd.getStr() %></b>님 잘 오셨습니다.
<b>주소는 <%= bd.getAddress() %></b>에 사시는군요.
</body>
</html>

 

# cookie (1)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>쿠키생성</title>
</head>
<body>
<%
// 쿠키이름, 저장할 값 설정 -> 쿠키생성 -> 접속자에게 전송
String cookiename = "mycookie";

// 1. 쿠키객체를 생성하는 방법
Cookie c = new Cookie(cookiename, "홍길동"); // 저장할값(한글도 됨)

// 2. 쿠키값을 컴퓨터에 전송하기전에 설정
c.setMaxAge(60*2); // 2분동안 쿠키저장
                   // 쿠키저장시간 : 60(초)*60(초)*24 = 하루 -> 60*60*24*365 = 1년
c.setValue("Melone"); // 중간에 쿠키값을 변경하는 경우
response.addCookie(c); // addCookie(전송할 쿠키 객체명)

%>
<h1>쿠키를 생성하는 예제</h1>
<p>
쿠키가 생성되었습니다.
쿠키의 내용은 <a href = "usecookie.jsp">여기에서 확인</a>
</body>
</html>

 

# cookie (2)

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>쿠키생성</title>
</head>
<body>
<%
// 쿠키이름, 저장할 값 설정 -> 쿠키생성 -> 접속자에게 전송
String cookiename = "mycookie";

// 1. 쿠키객체를 생성하는 방법
Cookie c = new Cookie(cookiename, "홍길동"); // 저장할값(한글도 됨)

// 2. 쿠키값을 컴퓨터에 전송하기전에 설정
c.setMaxAge(60*2); // 2분동안 쿠키저장
                   // 쿠키저장시간 : 60(초)*60(초)*24 = 하루 -> 60*60*24*365 = 1년
c.setValue("Melone"); // 중간에 쿠키값을 변경하는 경우
response.addCookie(c); // addCookie(전송할 쿠키 객체명)

%>
<h1>쿠키를 생성하는 예제</h1>
<p>
쿠키가 생성되었습니다.
쿠키의 내용은 <a href = "usecookie.jsp">여기에서 확인</a>
</body>
</html>