설정파일들의 실제 위치

 

----------------------------------------

 

자바 파일들의 실제 위치

 

워크스페이스에서 작성한 파일들이 위의 작업 위치에 올라가지 않는 경우가 있다

그럴 경우에는 기존 서버를 지우고 서버를 새로 만들어서 연결시키면 모두 올라가게 된다

 

--------------------------------------

 

스크립트릿 예제1

<%@ page import="java.util.Random"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    
<%
	Random r = new Random();
	int num = r.nextInt(5); // 0 ~ 4
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>랜덤 값 알아보기</title>
</head>
<body>
	<h1>랜덤 값은 : <%= num %> </h1>
</body>
</html>

 

-----------------------------------------

 

스크립트릿 예제2

 

---------------------------------------

 

if문 예제3

 

---------------------------------------

 

표현식에는
1. 변수
2. 리턴값이 있는 메소드
3. 수식
이 들어갈 수 있다

 

--------------------------------------

'Web > Jsp' 카테고리의 다른 글

서버 부하 관리  (0) 2020.05.27
JSP 서블릿 실제 서버에서의 파일들의 위치  (0) 2020.05.27
JSP 페이지 인코딩  (0) 2020.05.27
서버 내부에서 web.xml 세팅하기  (0) 2020.05.27
SSL  (0) 2020.05.27

인코딩 관련

<%@ %> 안의 인코딩은 외부로 보낼 때의 인코딩 타입이다.

html 내부의 인코딩은 현재 페이지의 문자 인코딩 설정이다.

 

----------------------------------------

'Web > Jsp' 카테고리의 다른 글

JSP 서블릿 실제 서버에서의 파일들의 위치  (0) 2020.05.27
JSP 스크립트릿 / 표현식 예제  (0) 2020.05.27
서버 내부에서 web.xml 세팅하기  (0) 2020.05.27
SSL  (0) 2020.05.27
JSP / web.xml 과 server.xml  (0) 2020.05.27

 

 

 

서버의 web-app을 복사한다

 

내가 만든 web.xml에 복사한다

 

한글 인코딩 설정 내용을 복사한다

 

 

 

---------------------------------------

'Web > Jsp' 카테고리의 다른 글

JSP 스크립트릿 / 표현식 예제  (0) 2020.05.27
JSP 페이지 인코딩  (0) 2020.05.27
SSL  (0) 2020.05.27
JSP / web.xml 과 server.xml  (0) 2020.05.27
200527  (0) 2020.05.27

SSL 
본문데이터를 암호화한다

 

https 표준에 맞는 SSL 인증을 암호화를 담당하는 전문 업체가 있다.
전문 업체를 이용하다가 정보 관리에 문제가 생기면 해당 업체가 피해를 보상한다.

 

SSL을 적용하면

8000번 포트로 접속하면 8443포트로 자동으로 이동한다.

 

'Web > Jsp' 카테고리의 다른 글

JSP 페이지 인코딩  (0) 2020.05.27
서버 내부에서 web.xml 세팅하기  (0) 2020.05.27
JSP / web.xml 과 server.xml  (0) 2020.05.27
200527  (0) 2020.05.27
서블릿 특정 페이지 포워딩(이동) 방식  (0) 2020.05.26

web.xml -> 서버의 문지기를 설정하는 페이지

30초 간 소식이 없으면 세션종료

 

 

server.xml -> 서버자체를 설정하는 페이지

8005번으로 서버를 셧다운 할 수 있음

 

연결 타임아웃과 포트를 설정 할 수 있다

 

컨텍스트 명 설정 가능

 

----------------------------------------

 

'Web > Jsp' 카테고리의 다른 글

서버 내부에서 web.xml 세팅하기  (0) 2020.05.27
SSL  (0) 2020.05.27
200527  (0) 2020.05.27
서블릿 특정 페이지 포워딩(이동) 방식  (0) 2020.05.26
서블릿에서 세션 session 살펴보기  (0) 2020.05.26

 

JSP파일은 카멜표기법

-------------------------------------

데이터 저장소

로컬스토리지 - 노출되도 되는 데이터들 저장
쿠키 - 중요한 데이터들 저장

-------------------------------------

서블릿 -> JSP(모델1) -> 서블릿 + JSP(모델2)

---------------------------------------

현재 진행중이지 않은 프로젝트는 close해주자

-------------------------------------

최근에는 이모티콘 등을 사용하기 때문에

UTF-8 -> UTF-8 MB4

---------------------------------------

HTML의 submit은

form태그 내용의 모든 값을 전송할 때 사용한다.

태그내의 input 태그의 name을 기준으로 저장하여 전송.

---------------------------------------

JSP안에 자바 코드 DB로직 HTML CSS Javascript 등이 들어가기 때문에 협업이 힘들고 유지보수가 어렵다

---------------------------------------

서블릿을 디스패쳐 용도로 사용(FrontController)

페이지 이동할 때 서블릿파일을 경유해서 이동하게 되는 방식

MVC패턴, MVC패턴2

https://hyoje420.tistory.com/36

 

[JSP]MVC 패턴(MVC Pattern)

MVC 패턴(Model-View-Controller Pattern) MVC 패턴은 여러가지 디자인 패턴 중에 하나이다. 즉, 건축으로 비유하자면 공법이며, 소프트웨어에 빗대어 말하자면 어떻게 소프트웨어를 개발할 것인지의 개발

hyoje420.tistory.com

모델과 뷰는 컨트롤러를 무조건 경유 해야한다(MVC2)

------------------------------------------

 

 

 

 

서버가 자기 자신에게 request 할 수 있다 - redirect , dispatcher

세션은 인증 정보 같은 것만 담아야한다.

다른 데이터 들은 req, resp 에 담아야하는데 redirect 리다이렉트를 하면 유저정보를 다른페이지에 넘길 방법이 없다.

그럴 때 dispatcher 디스패쳐를 사용한다 .

 dispatcher 디스패쳐는 req, resp 객체를 유지한다.

ex)

A페이지가 유저정보를 들고 있는데

B페이지로 이동할 때 유저정보가 필요없다면 redirect

B페이지로 이동할 때 유저정보가 필요하다면 dispatcher

 

--------------------------------------

 

1) Dispatcher 방식

주소가 바뀌지 않는다.

같은 request 영역을 공유한다.


import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class DispatcherServlet
 */
@WebServlet("/DispatcherServlet")
public class DispatcherServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public DispatcherServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		RequestDispatcher dispatcher = request.getRequestDispatcher("dispatcher.jsp");
		request.setAttribute("request", "requestValue");
		dispatcher.forward(request, response);
	}

}

 

<%@ 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 속성 값: <%= request.getAttribute("request") %>
</body>
</html>

 

 

 

 

2) Redirect 방식

주소가 바뀐다.

request 영역에 공유한 속성 값에 접근 할 수 없다.


import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class RedirectServlet
 */
@WebServlet("/RedirectServlet")
public class RedirectServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public RedirectServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		request.setAttribute("request", "requestValue");
		response.sendRedirect("redirect.jsp");
	}

}

 

<%@ 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 속성 값 :<%= request.getAttribute("request") %>
</body>
</html>

 

 

+ Recent posts