본문 바로가기

JSP

(7)
서블릿(Servlet) - 로그인 기능 (onsubmit = function(); return false;) 서블릿의 주요 기능클라이언트로부터 요청을 받는다.데이터베이스 연동과 같은 비즈니스 로직을 처리한다.처리된 결과를 클라이언트에 돌려준다. 클라이언트가 서블릿에 요청을 하면 먼저 톰캣 컨테이너가 받는다. 그 다음 사용자의 요청이나 응답에 대한 HttpServletRequest 객체와 HttpServletResponse 객체를 만들고 서블릿의 doGet()이나 doPost() 메서드를 호출하면서 이 객체들을 전달한다.톰캣이 사용자의 요청에 대한 정보를 모든 HttpServletRequest 객체의 속성으로 담아 메서드로 전달하므로 각 HttpServletRequest에서 제공하는 메서드들은 매개변수로 넘어온 객체들을 이용하여 사용자가 전송한 데이터를 받아오거나 응답할 수 있는 것이다. 아이디 : ..
서블릿(Servlet) - API, 생명주기 초기 동적 웹 페이지들은 서블릿(servlet)을 이용하여 구현했다. 이 서블릿의 문제점을 보완하여 나온 것이 JSP이다. 서블릿?서블릿은 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스이다.서블릿은 일반 자바 프로그램과 다르게 독자적으로 실행되지 않고, 톰캣과 같은 JSP/Servlet 컨테이너에서 실행된다는 점이 다르다.서블릿은 서버에서 실행되다가 웹 브라우저에서 요청을 하면 해당 기능을 수행한 후 웹 브라우저에 결과를 전송한다. 서버에서 실행되기에 보안과 관련된 기능도 훨씬 안전하게 수행할 수 있다.클라이언트가 웹 서버에 요청하면 웹 서버는 그 요청을 톰캣과 같은 웹 애플리케이션 서버(WAS)에 위임한다. WAS에서는 각 요청에 해당하는 서블릿을 실행한다.그리..
JSP(08.07) - HTTP, HttpSession, Request, Response HTTP (Hyper Text Transfer Protocol)HTTP는 서버와 클라이언트가 서로 데이터를 주고받기 위해 사용되는 통신 규약(약속)을 말한다!웹문서간에 링크를 통해 연결할 수 있는 프로토콜이다.클라이언트가 요청(Request)하면 서버가 응답(Response)하는 것왜 클라이언트와 서버를 분리해놓은 것일까??클라이언트에서는 복잡한 비즈니스로직이나 데이터를 다룰 필요없고, UI를 그리는데 집중할 수 있다.서버에서는 복잡한 비즈니스 로직이나, 데이터를 다루는데만 집중할 수 있다.  HttpSessionHttpSession은 이미 이전 직접 구현한 Session 기능과 거의 같은 방식으로 제공해준다.여기서 Session이란, 비밀번호를 비롯한 인증 정보를 쿠키가 아닌, 서버 측에서 저장하고 관..
JSP(08.07) - GET, POST, TDD GET 방식url 뒤 key와 value를 붙여서 HTTP 패킷 헤더에 포함해서 서버에 데이터 요청데이터 값들이 노출된다. (url에 쿼리 스트링을 붙여서 서버로 전송하기 때문이다.)http://localhost:8080/JSP_AM_2024_08/article/doWrite?title=제목1&body=내용1상대적으로 보안 취약캐싱이 가능하므로 속도가 빠르다.캐싱은 어떤 데이터를 한번 받아온 후에 그 데이터를 불러온 저장소보다 가까운 곳에 임시로 저장하여 필요시 더 빠르게 불러온다.전송 가능한 데이터 양에 한계가 존재POST 방식데이터들을 url 뒤에 붙여서 서버로 보내는 것이 아닌 body에 담아서 전송한다.데이터들이 url에 노출되지 않기에 GET 방식보다 상대적으로 보안적이다.데이터들을 body에 ..
JSP(08.06) - set, get, sql Injection set, get//ArticleDetail 파일request.setAttribute("articleRow", articleRow); request.getRequestDispatcher("/jsp/article/detail.jsp").forward(request, response);//detail 파일Map articleRow =(Map) request.getAttribute("articleRow");ArticleDetail 파일에서 detail 파일로 parameter에서 가져오는 방식을 사용할 수 없다. request.setAttribute("articleRows", articleRows);를 하여 넘겨줄 수 있다. 여기서 attribute는 List> articleRows = dbUti..
JSP(08.05) - 절대경로, 상대경로 절대경로(Absolute Path)절대경로는 파일 위치에 대해서 최상위 디렉토리부터 시작하여 전체 주소를 표시하는 방법이다. 절대경로는 파일위치와 폴더의 위치에 대해서 정확하게 지정할 수 있는 장점이 있다.절대경로는 루트 디렉토리부터 표시를 하게 되는 https:// 부터 시작하는 url주소는 절대 경로 방식으로 표현을 한 것이다.상대경로(Relative Path)상대경로는 현재의 폴더 위치를 기준으로 파일 경로를 상대적으로 표시하는 방식이다.상대경로는 현재의 웹 페이지의 위치나 문서를 기준으로하여 자원의 상대적인 위치를 표현한느 방식으로 루트 디렉토리나 상위 디렉토리를 표시하지 않는다.폴더 구성이 짧아지고 효율적으로 표시할 수 있고, 서버가 옯겨지거나 폴더가 이동되더라도 별도의 설정이 불필요하다. 다만..
JSP(08.05) - Servlet, Tomcat JSPJSP(Java Server Pages)는 HTML 코드 안에 Java 코드를 삽입하여 웹페이지를 동적으로 구성할 수 있게 한다.HTML 태그 내에서  자바영역 %> 로 둘러싸인 스크립트 영역에 Java 문법을 적용하는 방식으로 작동한다.이 JSP 파일을 서블릿 클래스로 변환하고 실행시켜주는 역할을 하는 프로그램이 Tomcat과 같은 서블릿 컨테이너이다.Servlet을 사용해 웹을 만들 경우 화면 인터페이스 구현이 어렵다는 단점을 보완하기 위해 만든 스크립트 언어이다. Servletservlet이란 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램을 말한다. 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종이다.서블릿은 자바 웹 애플리케이션을 개발하기 위해 필요한..

728x90