JSP와 MyBatis
·
🗄️ Backend/JSP
JDBC의 불편함JDBC(Java Database Connectivity)는 데이터베이스와 자바 애플리케이션 간의 상호작용을 가능하게 해주는 API입니다. 하지만, JDBC를 사용할 때 여러 불편함이 존재합니다:저수준 API: JDBC는 프로그래머가 낮은 수준부터 ORM(Object-Relational Mapping)을 작성해야 하는 장점이 있지만, 그로 인해 많은 코드가 반복되는 단점이 있습니다.반복적인 코드: 데이터베이스 연결, 쿼리 실행, 결과 처리 등에서 많은 중복 코드가 발생하여 유지보수가 어렵습니다.Persistence Framework란?Persistence Framework는 애플리케이션 데이터와 데이터 저장소 간의 상호작용을 관리하는 소프트웨어 라이브러리입니다. 이 프레임워크는 데이터베이..
JSP와 MVC2 패턴
·
🗄️ Backend/JSP
MVC2 패턴 개요MVC2 패턴은 Model-View-Controller 아키텍처를 기반으로 한 웹 애플리케이션 구조로, 클라이언트의 요청을 효율적으로 처리하고 사용자에게 데이터를 표시하기 위해 데이터와 비즈니스 로직, 사용자 인터페이스를 분리합니다. 이 구조는 웹 애플리케이션의 유지보수성과 확장성을 높여줍니다.각 구성 요소의 역할M (Model): 데이터와 비즈니스 로직을 관리하는 역할입니다. 데이터베이스와의 상호작용, 데이터를 처리 및 가공하여 비즈니스 로직을 수행하는 책임이 있습니다. Model은 주로 DAO(Data Access Object)와 DTO(Data Transfer Object)로 구성됩니다.V (View): 사용자에게 데이터를 보여주는 역할을 합니다. 모델에서 가공된 데이터를 사용자에..
JSP와 MVC 패턴: DAO/DTO, 커넥션 풀, EL, JSTL
·
🗄️ Backend/JSP
PreparedStatement(pstmt) 객체Statement 객체와 PreparedStatement 객체의 차이점웹 애플리케이션에서 SQL 쿼리를 처리할 때, Statement 객체와 PreparedStatement 객체를 사용할 수 있습니다.Statement 객체: SQL 쿼리를 문자열로 작성하고 직접 실행합니다. 그러나 복잡한 쿼리나 동적인 값이 많을 경우 코드가 복잡해지고 오류 발생 가능성이 높아집니다.PreparedStatement 객체: SQL 쿼리를 미리 컴파일하여 성능을 향상시키고, 파라미터 설정 시 '?'를 사용하여 간편하게 값을 지정할 수 있습니다. 이는 코드의 가독성을 높이고, SQL 인젝션 공격을 예방하는 데 도움이 됩니다.PreparedStatement 실행 순서드라이버 로딩C..
쿠키(Cookie)와 세션(Session) 완벽 가이드
·
🗄️ Backend/JSP
#쿠키(Cookie)와 세션(Session)웹 애플리케이션을 개발하면서 쿠키와 세션은 필수적으로 이해해야 하는 개념입니다. 이 글에서는 쿠키와 세션의 개념, 특징, 사용 방법, 그리고 두 기술 간의 차이점을 자세히 설명하겠습니다.쿠키(Cookie)1. 개요쿠키는 웹 브라우저와 서버 간의 통신에서 특정 정보를 지속적으로 유지하기 위한 데이터 저장 방식입니다. HTTP 프로토콜은 비연결성(stateless) 프로토콜로, 각 요청이 끝난 후 클라이언트와의 연결을 종료합니다. 따라서 서버는 클라이언트의 상태를 유지할 방법이 필요하고, 이때 쿠키가 사용됩니다.2. 특징클라이언트 측 저장: 쿠키는 서버가 생성하여 클라이언트(웹 브라우저) 측에 저장됩니다. 이 데이터는 클라이언트의 로컬 저장소에 위치하게 됩니다.정보..
JSP와 서블릿: 동적 웹 개발의 기초
·
🗄️ Backend/JSP
서블릿(Servlet)과 JSP서블릿이란?서블릿은 클라이언트의 요청을 처리하고 동적 웹 콘텐츠를 생성하는 Java 프로그램입니다. 서블릿은 순수 자바 코드로 작성되며, 클라이언트 요청에 따라 HTML 응답을 생성합니다. 서블릿은 자바 쓰레드를 이용하여 다수의 요청을 효율적으로 처리할 수 있는 강력한 구조를 가지고 있습니다.URL 매핑서블릿은 여러 개가 있을 수 있으며, 브라우저에서 웹 컨테이너에 요청할 때 서블릿을 구분하기 위해 URL 매핑이 필요합니다. URL 매핑을 통해 보안을 강화하고, 사용자에게 이해하기 쉬운 URL을 제공할 수 있습니다.WebServlet 어노테이션@WebServlet 어노테이션을 사용하여 서블릿 클래스를 선언하고 구성할 수 있습니다. 이를 통해 다음과 같은 작업을 수행할 수 있..
HTML 기초 및 태그 정리
·
🗄️ Backend/JSP
HTML 입력 양식 태그 정리HTML에서 입력 양식 태그는 사용자가 웹 페이지를 통해 서버에 데이터를 전송할 수 있도록 돕는 매우 중요한 요소입니다. 입력 양식 태그는 사용자의 데이터를 수집하여 서버로 전달하는 역할을 합니다. 기본적으로 두 가지 주요 입력 양식 태그가 있습니다.1. input 태그input 태그는 다양한 사용자 입력을 처리할 수 있는 다목적 태그입니다. type 속성을 사용하여 다양한 입력 형식을 지정할 수 있습니다. 자주 사용되는 input 태그의 type 속성 값은 다음과 같습니다.text: 텍스트를 입력할 수 있는 일반적인 텍스트 상자password: 입력한 내용을 가려주는 비밀번호 입력 상자file: 사용자가 파일을 업로드할 수 있도록 하는 파일 선택기submit: 폼 데이터를 ..
웹 프로그래밍 기초 (SERVER/CLIENT/HTML)
·
🗄️ Backend/JSP
웹 프로그래밍이란?웹 프로그래밍은 웹 어플리케이션을 개발하는 과정으로, 사용자가 웹을 통해 상호작용할 수 있는 프로그램을 만드는 작업입니다. 웹 어플리케이션은 우리가 사용하는 브라우저를 통해 작동하는 소프트웨어입니다. 이를 통해 사용자는 서버에 데이터를 요청하고, 서버는 그에 맞는 정보를 반환하여 동적인 웹 페이지를 보여줍니다.URL의 구성 요소URL(Uniform Resource Locator)은 웹 상에서 자원의 위치를 가리키는 주소입니다. 예를 들어, 우리가 웹 페이지를 방문할 때 사용하는 주소창에 표시되는 것이 바로 URL입니다. URL의 구성 요소는 아래와 같습니다:프로토콜 (Protocol): 데이터를 주고받기 위한 통신 규약으로, 가장 흔한 예는 http 또는 https입니다.IP 주소: 인..