본문 바로가기

수업 복습하기/JSP

Day 01 - JSP 기초 + request 01

728x90
728x90

= JSP기초 =

 

< 02 jsp-scriptlet >

스크립트릿 : jsp 페이지에서, 자바 코드 실행하려고 할 때, 사용되는 블록

<%
//자바코드 작성 가능
System.out.println("hello jsp");
for(int i = 0;i<5;i++){
out.write("<p>스크립트릿으로 작성한 html 코드</p>\r\n");
}
%>

< 03 jsp-scriptlet-js >

<%
for(int i =0;i<5;i++){
	out.write("<p>스트립트릿으로 작성한 html</p>");
}
%>
<script>
for (let i =0;i<5;i++){
	document.write("<p>js로 작성한 html </p>");
}


< 04 jsp-scriptlet-object >

<%
out.write("hello jsp");
out.print("<p>hello out object</p>");
out.println("<p>hello out println </p>");
out.println("<p>implicit object 8 개</p>");

//Object a = new Object();
//a.toString();
%>

< 05 jsp-scriptlet-out >

두가지 다른 방법 이해하기

scriptlet, out</h1>
<%
for (int i = 0; i<5;i++){
%>
<p>hello</p>
<%
}%>
<hr>

<%
for (int i = 0;i<5;i++){
	out.println("<p>hello</p>");
}
%>

< 06 commet >

<h1>주석</h1>
<!-- html 주석 -->
<!-- 소스보기하면 보이니까 주의하기 -->

<%
//자바 주석
/*
자바 여러 줄 주석
*/
%>
<script>
// js주석
/*
 * js 여러줄 주석
 */</script>

< 07 import >

<h1>scriptlet : java code 사용</h1>
<%
out.println(new java.util.Date());
%>


< 08 import >

<%@ page import="java.util.HashMap, java.util.HashSet" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.*" %>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>import</h1>
<%
	out.println(new Date());
%>
<br>
<%
	ArrayList<String> arr1 = new ArrayList<>();
	HashMap<String, String> map1 = new HashMap<>();
	HashSet<String> set1 = new HashSet<>();
%>

< 09 import >

<h1>arraylist</h1>
<%
List<String> arr1 = new ArrayList<>();
arr1.add("java");
arr1.add("jsp");
arr1.add("spring");

for(String item :arr1){
%> 
<h1>
<%
out.println(item);
%>
</h1>
<%
}
%>


< 10 expression >

<h1>expression</h1>
<%
// scriptlet
out.println(new Date());
%>
<br>
<%-- expression --%>
<%-- : out.print 메소드의 인수 --%>
<%=new Date() %>

<%--메소드의 인수로 명령문을 작성할 수 없음
<%=
if(3>5){
System.out.println(

 --%>

< 11 expression >

<%
String[] arr = {"java","html","jsp"};

for(String item : arr){
%>	
<h1><%=item %></h1>
<%
}
%>
<hr>

<%
for (String item : arr){
out.print("<h1>"+item+"</h1>");
}
%>

< 12 expression >

<%
Map<String, String> map = new HashMap<>();
map.put("java","lang");
map.put("css","style");
map.put("spring","framework");
map.put("javascript","script");
%>

<%-- code 작성 map을 어떻게 추출했던건지 
기억이 나질 않는다..--%>
<ul>
<%
for(Map.Entry<String, String> entry : map.entrySet()){
	%>
	<li><%= entry.getKey() %> : <%= entry.getValue() %> </li>
<%
}
%>

< 13 declaration >

<%!
// 선언부는 파일 윗부분에 주로 작성됨
int j = 3;

private int add(int a, int b) {
	return a + b;
}
%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

<h1>declaration : 선언부</h1>
<p>필드 또는 메소드 작성 가능 </p>
<%!
int i = 0;
%>

<%= add(3, 5) %>

< 14 declaration >

<%!
private int add(int a, int b) {
	return a + b;
}

private int subtract(int a, int b) {
	return a - b;
}

private int multiply(int i, int j) {
	return i * j;
}

private int divide(int i, int j) {
	return i / j;
}
%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>선언부 declaration</h1>

<%= add(5, 7) %> <br> <%-- 12 --%>
<%= subtract(10, 2) %> <br> <%-- 8 --%>
<%= multiply(10, 25) %> <br> <%-- 250 --%>
<%= divide(99, 3) %> <br> <%-- 33 --%>

< 15 java>

<%
List<MyBook> books = new ArrayList<MyBook>();
books.add(new MyBook("java", 50000));
books.add(new MyBook("html", 30000));
books.add(new MyBook("spring", 70000));

for (MyBook book : books) {
%>
	<p><%= book.getTitle() %> : <%= book.getPrice() %>원 </p>
<%
}
%>


< 16 java >

(문제풀이)

<%
List<MyPerson> list = new ArrayList<MyPerson>();
list.add(new MyPerson("hong", 22));
list.add(new MyPerson("kim", 33));
list.add(new MyPerson("lee", 55));

for (MyPerson p : list) {
%>
	<p><%= p.getName() %>님 : <%= p.getAge() %>세 </p>
<%
}
%>
<%--
<p>hong님 : 22세</p>
<p>kim님 : 33세</p>
<p>lee님 : 55세</p>
 --%>


 

= request 01 =

< 1 request >

<h1>Request 기본 객체(implicit object)</h1>
<h2>HttpServletRequest 타입</h2>

<%=request %>

<hr>
content length : <%= request.getContentLength() %> <br>
remote address : <%= request.getRemoteAddr()%> <br>
request uri : <%= request.getRequestURI() %> <br>
context path : <%= request.getContextPath() %> <br>
method : <%= request.getMethod() %> <br>
parameter : <%= request.getParameter("name") %> <br>

< 2 request-querystring >

<h1>query string</h1>
<p><%= request.getQueryString() %> </p>

< 3 request-parameter >

	<h1>request parameter</h1>
	<p><%= request.getParameter("q") %>
	</p>
	<hr>
	<%
String param = request.getParameter("q");

if(param ==null||!param.equals("java")){
%>
	<p>자바 사용자가 아니군요</p>
	<%
} else {
%>
<p>자바 사용자이군요 </p>
<%
}%>

q가 자바일 때, 뜨는 값


< 4 request-parameter >

<h1>request parameter</h1>

<p><%= request.getParameter("name") %></p>
<p><%= request.getParameter("age") %></p>

< 5 form-elem >

	<h1>form element</h1>
<form>
	<input name="q"> <br>
	<input name="name"> <br>
	<input type="submit">
</form>

<hr>
<p><%= request.getParameter("q") %> </p> 
<p> <%= request.getParameter("name") %> </p>


< 6 form-elem>

<form action="">
<input name = "key">
<input type ="submit">
</form>

<% 
Map<String, String> map = new HashMap<>();
map.put("java", "language"); 
map.put("spring", "framework");
map.put("react","library");
%>

<%
String param = request.getParameter("key");
%>

<p>값 : <%= map.get(param) %> </p> <%-- language / framework / library / null --%>

java입력했을 때, language가 나온다는 걸 까먹지 말기,

넣는 값과 나오는 값이 다르다는걸 인지하고 진행할 것@


< 7 form-elem>

(문제풀이)

<form>
<input name="num">
<input type="submit">
</form>

<%
List<String> list = new ArrayList<>();
list.add("apple");
list.add("phone");
list.add("coffee");
list.add("computer");
%>

<%
String num = request.getParameter("num");
%>

<%-- num이 0~3이면 --%>
<%-- num번 상품은 apple / phone / coffee / computer 입니다. --%>

<%-- 그렇지 않으면 (null 이거나 0~3이 아니면) --%>
<%-- 해당 상품이 존재하지 않습니다. --%>

<p>
<%
if (num == null) {
	out.print("해당 상품이 존재하지 않습니다.");
} else {
	switch (num) {
		case "0":
		case "1":
		case "2":
		case "3":
			int index = Integer.parseInt(num);
			out.print(index + "번 상품은 " + list.get(index) + "입니다.");
			break;
            
		default:
		out.print("해당 상품이 존재하지 않습니다.");
	}
}
%>
</p>

트릿 : jsp

 

1번 제출했을 때 뜨는 값


 

728x90

'수업 복습하기 > JSP' 카테고리의 다른 글

Day 04 - module02 + path + attribute01  (0) 2021.12.13
Day 03 - request03 + module01  (0) 2021.11.22
Day 02 - request02  (0) 2021.11.19
수업시간 내용 압축 정리  (0) 2021.10.25