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>
<%
}%>
< 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
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 |