뉴렉쳐 Servlet & JSP [41 ~ 50강]Back-end/기타 (BE)2020. 10. 3. 16:46
Table of Contents
강의 41 - JSP의 코드 블록
out.write(); // 문자열을 출력해주는 전문 함수
out.print(); // 다양한 자료형 지원함
<% %>
<%= %> out.print 를 대신 써줘
<%! %> service()가 아닌 클래스 밑으로
<%@ %> page 지시자; 어떤 코드들 보다도 앞서서 서블릿 코드에 삽입
강의 42 - JSP의 내장객체 간단히 알아보기
page와 같은 변수는 jsp service 기본 변수와 겹침..
pageContext는 applicationContext (전역)와 다르게 page한정
out 출력을 위한 객체
page 현재 페이지를 참조하는 객체
강의 43 - JSP로 만드는 Hello 서블릿
옛날에 만든 java파일을 jsp로 다시 만들자
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");
String cnt_ = request.getParameter("cnt");
int cnt = 0;
if (cnt_ != null && !cnt_.equals("")) {
cnt = Integer.parseInt(cnt_);
}
System.out.println("cnt_: " + cnt_);
System.out.println("cnt: " + cnt);
%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<% for(int i=0;i<cnt;i++){ %>
hello ><
<br>
<% } %>
</body>
</html>
강의 44 - 스파게티 코드를 만드는 JSP
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
<%
String num_ = request.getParameter("num");
int num = 0;
if(num_ != null && !num_.equals("")) {
num = Integer.parseInt(num_);
}
%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<% if(num % 2 == 0) { %>
짝수입니다. <br>
<% } else { %>
홀수입니다. <br>
<% } %>
</body>
</html>
강의 45 - JSP MVC model1
코드블럭의 형성 갯수를 최소화 하자.
입력코드의 결과물을 출력코드에 넘겨주는 것을 Model이라고 함!
출력을 제어 => 넘겨줄 데이터(model)를 제어
로직은 입력 코드에서,
결과는 출력 코드에서
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
<%
String num_ = request.getParameter("num");
int num = 0;
if(num_ != null && !num_.equals("")) {
num = Integer.parseInt(num_);
}
String model;
if(num % 2 == 0)
model = "짝수";
else
model = "홀수";
%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<%= model %> 입니다.
</body>
</html>
강의 46 - JSP MVC model1을 model2 방식으로
Controller단
@WebServlet("/spagmvc2")
public class Spag extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String num_ = request.getParameter("num");
int num = 0;
if(num_ != null && !num_.equals("")) {
num = Integer.parseInt(num_);
}
String model;
if(num % 2 == 0)
model = "짝수";
else
model = "홀수";
// model을 mm쨩으로 전송함
request.setAttribute("mm", model);
// url상 같은 directory에 있는 것으로 간주하기 때문에
// 경로를 설정하지는 않았다.
// redirect : 이전 작업 내용과 상관없이 클라단에게 현재 새로운 요청을 하라고 지시.
// forward : 이전 작업한 내용을 이어갈 수 있도록, 공간을 공유
RequestDispatcher dispatcher = request.getRequestDispatcher("spagMVC2.jsp");
dispatcher.forward(request, response);
}
}
View단
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<%= request.getAttribute("mm") %> 입니다.
</body>
</html>
서블릿/JSP 강의 47 - EL(Expression Language)
'Back-end > 기타 (BE)' 카테고리의 다른 글
뉴렉쳐 Servlet & JSP [61 ~ 70강] (0) | 2020.11.01 |
---|---|
뉴렉쳐 Servlet & JSP [51 ~ 60강] (0) | 2020.10.07 |
뉴렉쳐 Servlet & JSP [11~20강] (0) | 2020.10.03 |
뉴렉쳐 Servlet & JSP [31 ~ 40강] (2) | 2020.10.03 |
뉴렉쳐 Servlet & JSP [21~30강] (0) | 2020.10.01 |
@philo0407 :: Philo의 다락방
hi hello... World >< 가장 아름다운 하나의 해답이 존재한다
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!