분류 전체보기361 [서블릿] 정보 공유 - URL rewriting, 쿠키, 세션 정보 공유 📌 www은 비연결형 구조의 HTTP 사용하기 때문에, 페이지 요청과 응답이 완료되면 연결이 유지되지 않음. 따라서, 클라이언트가 다른 페이지를 요청할 때 부가적인 정보가 없으면, 서버는 클라이언트의 현재 상태 알 수 없음. 📌 위의 문제 해결 방법 ① URL rewriting ② 쿠키 ③ 세션 URL rewriting 📌 URL rewriting : HTTP의 Query String을 이용하는 방식. URL에 파라미터 추가해 서버로 요청하는 형식. 📌 단점 ① 정보 유지를 위해 파라미터를 매 페이지마다 확인하고, 계속 추가해야 함. ② 복잡한 정보 유지 어려움. 쿠키 📌 쿠키 : 클라이언트에 저장되는 작은 정보. 서버 요청에 의해 브라우저가 저장하며, 서버가 요청할 때 제공하는 방식. 📌 특.. 2022. 11. 15. [서블릿] 페이지 이동 페이지 이동 📌 서블릿은 주로 MVC 패턴 구조의 컨트롤러에서 사용되며, 컨트롤러는 사용자 요청을 받아 데이터베이스 등 작업 처리 후 결과를 적절한 페이지로 전환해주는 기능 담당함. 페이지 이동 - 데이터 포함하지 않는 경우 📌 페이지 이동 - 데이터 포함하지 않는 경우 : 해당 페이지로 바로 리디렉션. 세션에 데이터 저장한 경우, 세션이 유효한 동안 모든 페이지에서 세션 정보 참조 가능. → 리디렉션 통해 데이터 참조 가능. ① JSP, 서블릿 : resopnse.sendRedirect( ) 사용. 페이지 이동 - 데이터 포함하는 경우 📌 페이지 이동 - 데이터 포함하는 경우 : request 속성으로 데이터 넣은 후, 원하는 페이지로 포워딩. 데이터 활용 목적에 따라 session이나 applicat.. 2022. 11. 15. [서블릿] 서블릿 생명 주기 서블릿 생명 주기 📌 서블릿 생명 주기 ① 사용자 URL 요청에 따른 서블릿 실행. ② 서블릿 인스턴스가 생성되지 않았을 경우, 인스턴스 생성 후 init( ) 메서드 실행. ③ 이미 객체가 생성되어 있는 경우, 각 요청별로 서블릿 컨테이너에서 스레드 생성해 서블릿의 service( ) 메서드 호출. ④ 사용자 요청에 따라 doGet( ), doPost( ) 등 메서드 호출. ⑤ 서블릿 컨테이너 종료 또는 기존 서블릿 종료해야 할 때, destroy( ) 메서드 호출. init( ) 메서드, service( ) 메서드, destroy( )메서드 📌 init( ) 메서드 : 초기화 작업 수행. 처음 한번만 실행되며, 스레드에서 공통적으로 사용하기 위해 필요한 작업 오버라이딩해서 구현. 📌 service( .. 2022. 11. 15. [서블릿] 서블릿 정보 등록 방법 서블릿 정보 등록 방법 📌 서블릿 2.x에서 사용 가능한 web.xml으로 서블릿 선언. HelloWorld jsp.servlet.HelloServlet HelloWorld /hello 📌 서블릿 3.0에서부터는 자바 어노테이션 사용. : @WebServlet @WebServlet(description = "My first servlet", urlPatterns = { "/hello" }) public class HelloWorld extends HttpServlet { ... 💡 urlPatterns : 어떤 클라이언트 요청에 해당 서블릿을 실행할지 지정하는 것. 여러 url 등록 가능. 패턴 형식으로 특정한 경우에 실행되도록 설정 가능. 2022. 11. 15. [서블릿] 서블릿 클래스 서블릿 클래스 📌 서블릿 클래스 : javax.servlet.Servlet 인터페이스를 구현한 추상 클래스 GenericServlet 클래스 또는 HttpServlet 클래스를 상속하는 클래스. (웹 프로그래밍에서는 HTTP 프로토콜에 최적화되어 있는 HttpServlet 클래스를 상속해 구현함.) HttpServlet 클래스 📌 HttpServlet 클래스 public class HelloWorld extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ... } protected void doPost(Http.. 2022. 11. 15. [서블릿] 서블릿 서블릿 📌 서블릿 : 자바 기반 웹 프로그램 개발을 위해 만들어진 기술. 자바 중심으로 데이터 처리. → 자바에서 HTML 코드 사용. 📌 특징 ① HttpServlet 클래스를 상속해, 서블릿 틍록에 필요한 정보를 추가해야 함. ② 실행하기 위해서 서블릿 컨테이너가 필요함. ③ 웹 서비스 개발에 특화되어 있음. ④ 데이터베이스 연동, 외부 서비스 연동을 통해 정적인 웹에 동적인 정보 제공 가능하게 함. 📌 장점 ① 자바 API 모두 사용 가능. ② 운영체제나 하드웨어의 영향을 받지 않아, 다양한 서버 환경에서 실행 가능. ③ 다양한 오픈소스 라이브러리, 개발 도구 사용 가능. 📌 단점 ① HTML 응답을 위해 출력문으로 문자열 결합 사용해야 함. ② 서블릿에서 HTML 포함하는 경우, 화면 수정 어려움.. 2022. 11. 15. [Spring] 실습 : 스프링 데이터 JDBC 프로그램 생성 스프링 데이터 JDBC 프로그램 생성 - 프로젝트 생성 📌 프로젝트 생성 스프링 데이터 JDBC 프로그램 생성 - application.properties 📌 application.properties : 스프링 부트 프로젝트의 환경 설정용 파일. postgres 데이터베이스 접속에 관련된 설정함. spring.datasource.driver-class-name JDBC 드라이버의 클래스명 지정. spring.datasource.url 데이터베이스의 접속 URL 설정. spring.datasource.username 데이터베이스에 접속하는 유저명 설정. spring.datasource.password 데이터베이스에 접속하는 패스워드 설정. spring.datasource.diver-class-name=or.. 2022. 11. 5. [Spring] 스프링 데이터 JDBC O/R 매퍼 📌 O/R 매퍼(Object-relational Mapper) : 객체와 관계형 데이터베이스의 데이터를 매핑하는 것. 스프링 데이터 JDBC 📌 스프링 데이터 JDBC : O/R 매퍼. 📌 스프링 데이터가 제공하는 CrudRepository를 상속해, 자동으로 CRUD 지원하는 메서드 사용 가능. 스프링 데이터 JDBC 프로그램 생성 https://codingrecord2209.tistory.com/299 [Spring] 스프링 데이터 JDBC 프로그램 생성 스프링 데이터 JDBC 프로그램 생성 - 프로젝트 생성 📌 프로젝트 생성 스프링 데이터 JDBC 프로그램 생성 - application.properties 📌 application.properties : 스프링 부트 프로젝트의 환경 설정.. 2022. 11. 5. 이전 1 ··· 7 8 9 10 11 12 13 ··· 46 다음