2025/03 38

Servlet 코드가 없으면 로그인 기능이 작동할 수 없는가?

>> YES.  서블릿 또는 그에 준하는 서버측 처리 코드가 있어야 동작할 수 있다. 왜냐하면 로그인은 단순히 입력값만 받는 게 아니기 때문에.로그인은 아래와 같은 작업이 필요하다.클라이언트에서 사용자 입력 (아이디/비밀번호 등) 전송서버가 DB에서 사용자 정보 조회입력값과 DB값 비교 → 일치 여부 확인일치하면 세션 저장, 아니면 에러 처리로그인 성공 후 다른 페이지로 redirect이 전체 흐름을 서블릿 또는 컨트롤러가 담당한다. 그렇기 때문에 서블릿이 없을 땐 로그인 불가!DB와 통신하거나 로그인/회원가입 같은 서버 로직이 있을 때는 반드시 서블릿이 존재해야 해당 기능이 작동할 수 있다.

웹 개발 2025.03.31

Servlet과 AJAX의 관계

1. Servlet : 자바로 작성된 서버 프로그램.  브라우저에서 보내주는 요청을 받아서 처리하고, 다시 응답을 보내준다.---> 서버쪽 기술에 해당 2. AJAX : JS를 통해 페이지 전체를 새로고침하지 않아도 서버에 요청을 보내고 응답을 받을 수 있는 기술을 뜻함.---> 클라이언트쪽 기술에 해당Servlet과 AJAX의 흐름AJAX가 요청을 보내면 (요청)Servlet이 받아서 처리하고 (처리)결과를 다시 AJAX에게 전달 (응답)■ 비동기 방식 : 사용자가 버튼을 눌러 서버에 정보를 요청했을 떄, 페이지 전체를 새로고침하지 않고, 그동안 다른 작업도 가능하게 만드는 방식.□ 로그인 시, 댓글 작성, 좋아요 누르기 등에 사용한다.□ 사용자 UI가 좋아지고, 필요한 데이터만 받고 새로고침은 하지 ..

웹 개발 2025.03.31

JPA

JPA는 아직 배우지 않았지만 POJO 예시 중에 JPA라는 게 있고, 많이 들어본 단어라서 궁금한 마음에 찾아보았다. [ JPA ]: 자바 객체와 DB를 자동으로 연결해주는 기술 (객체를 테이블처럼 사용) SpringBoot에서 쓰이는 @Entity도 JPA 기술이다. 즉, Entity는 테이블과 매칭되는 클래스인거고, DTO는 데이터 전달을 위한 객체!DTO와 Entity의 차이가 뭔지 헷갈렸는데 궁금증 해결 완료..

웹 개발 2025.03.30

POJO란?

[ POJO ] : 순수한 자바 클래스- 프레임워크 사용 X, 어노테이션 X, 상속 X NOT POJO란?                  프레임워크에 의존 O, 어노테이션 O, 특수한 기능이 붙은 객체                  ex) Servlet : 서블릿 구현을 위해서는 HttpServlet을 반드시 상속해야 함.                   그 외에도 Spring Controller / Service, JPA Entity 클래스, JSP 등이 있다.                    (JSP는 스크립틀릿 쓰니까..)

웹 개발 2025.03.29

JSTL과 EL

[ JSTL, EL ]: JSP 내에서 자바코드를 VIEW에서 없애는 방식. 1. EL : "값을 꺼내는 용도"■ $ { ... } 방식으로 사용■ JSP에서 자바코드를 사용하지 않고도 데이터 값을 편히 꺼내쓸 수 있음■ request, session, application 등 같은 범위 내 값을 꺼낼 때 유용■ 배열, 리스트, 맵 등도 OK2. JSTL : "조건/반복 등의 로직을 태그로 표현하는 도구"■ JSP에서 자주 쓰는 기능을 태그 형태로 제공하는 라이브러리■ JSP 내 (스크립틀릿) 사이에 들어가는 자바 코드를 제거할 수 있음■ 종류 : , , 등.. ※ JSTL 예시1) 조건문성인입니다. 2) 반복문{item}

웹 개발 2025.03.28

FrontController

MVC 패턴에서 Controller 역할을 하는 Servlet 파일.Spring 구조를 결정짓는 요소. 스프링에서 사용한다. 여태까지는 JSP를 사용해서 Controller 코드를 작성해왔지만, 이제 JSP는 오직 VIEW의 역할을 하도록 만들 것이다(JSTL, EL 등 사용) FrontController 란 ?     ---> VIEW에 JAVA가 없도록 하자!              즉, JSTL, EL, 커스텀 태그 등으로만 구성될 것 ■ 여태까지의 controller.jsp□ 컴파일 후 .java (not POJO, Servlet)로 변환됨□ 어짜피 서블릿으로 변환될 거 처음부터 서블릿으로 만들자고 생각□ 서블릿으로 만든 컨트롤러를 "FrontController"라고 한다. (여러 요청을 경로에 ..

웹 개발 2025.03.27

[오라클로 배우는 DB 입문] 03-1 오라클 DB 설치 및 접속

오라클 DB를 설치하기 위해서는 하드웨어, 소프트웨어, 운영체제 최소 사양을 맞추어야 한다.오라클 사이트에 들어가 계정을 만들고 파일을 다운로드하여 설치하면 된다. ■ 설치할 때 sqlplus라고 오라클 데이터베이스 접속용 프로그램이 함께 설치된다.■ system은 오라클 DB에 접속하는 계정(아이디)이며, oracle은 설치하면서 설정한 비밀번호. 즉, 관리자 아이디/비밀번호에 해당함.■ system 계정은 오라클 DB에서 최고 권한을 가진 SYS 계정의 DB 관리 권한을 위임받은 관리용 계정이다. DBA가 아닌 이상 사용할 일이 거의 없다.■ 오라클은 기본 학습을 위해 테이블과 데이터가 미리 구현된 SCOTT 계정을 제공한다. 설치 직후 잠겨 있으므로 직접 사용 가능 상태로 전환 해주어야 한다.

IT/DB 2025.03.25

[오라클로 배우는 DB 입문] 04-2 데이터 조회

[ SELECT문 3가지 방식 ]출력 데이터 선정 방식에 따라 크게 3가지 방식으로 나뉨 1. 셀렉션 (selection) : 행 단위 조회 행 단위로 원하는 데이터를 조회하는 방식. 테이블 전체 데이터 중 몇몇 가로줄의 데이터만 선택할 때 사용 2. 프로젝션(projection) : 열 단위 조회 -> 특정 테이블에서 조회하려는 행과 열을 모두 선별할 때 위의 2개를 함께 사용할 수 있음. 더욱 상세한 데이터 조회 가능 3. 조인(join) : 2개 이상의 테이블 사용해서 조회 2개 이상의 테이블을 양 옆에 연결하여 마치 하나의 테이블인 것 마냥 데이터를 조회하는 방식.외래키 등으로 연결해서 사용한다.여러 테이블의 데이터를 하나의 테이블처럼 조회실무에서 SELECT문을 사용할 때 JOIN을 많이 사용한다.

IT/DB 2025.03.25

[오라클로 배우는 DB 입문] 04-3 SELECT, FROM

[ SELECT ]데이터베이스에 보관되어 있는 데이터를 조회하는 데 사용SELECT와 FROM은 기본 구성 [ FROM ] SELECT절은 FROM절에 명시한 테이블에서 조회할 열이나 여러 열에 저장된 데이터 조합 또는 연산식을 지정함SELECT [조회할 열1 이름], [열2 이름[, ..., [열N 이름]FROM [조회할 테이블 이름]; ※ 쿼리문을 작성할 때 띄어쓰기와 줄 바꿈을 적극 사용해서 가독성을 높이자!

IT/DB 2025.03.25

[오라클로 배우는 DB 입문] 04-6 ORDER BY

[ ORDER BY ] 데이터를 정렬하는 데 사용SELECT [조회할 열1 이름], [열2 이름], ... [열N 이름]FROM [조회할 테이블 이름]... 그 밖의 절...ORDER BY [정렬하려는 열 이름(여러 열 지정 가능)] [정렬 옵션(ASC/DESC)]■ 먼저 지정한 열을 우선으로 정렬. 정렬 옵션을 지정하지 않으면 기본값으로 오름차순 정렬된다.■ 우선순위 고려하여 여러 개의 정렬 기준 지정 가능■ 특정 기준에 따라 데이터 순서를 맞추는 정렬은 많은 비용을 소모하기 때문에 ORDER BY절은 꼭 필요한 경우에만 사용■ 정렬 때문에 서비스 응답 시간이 느려질 수 있음

IT/DB 2025.03.25