전체 글 238

자바 기초 정리

식별자(identifier) : 클래스, 상수, 메소드 등에 붙이는 이름 식별자 규칙 특수문자와 공백은 식별자로 사용 X( _ , $ 는 예외적으로 사용 가능) 한글도 식별자 사용 가능 if, while, class 등 자바 언어의 키워드는 식별자로 사용 불가능 '_', '$' 는 식별자의 첫 번째 문자로 사용할 수 있으나 일반적으로 사용 X 대소문자 구별 길이 제한 X 리터럴(literal) : 프로그램에 직접 표현한 값으로 정수, 실수, 문자, 논리, 문자열 타입 모두 리터럴이 있음 정수 리터럴 : 정수 인터럴은 int 타입으로 자동 컴파일 → long 타입으로 지정하려면 숫자 뒤에 L을 붙임 유형 설명 사례 10진수 0으로 시작하지 않는 수 15 -> 10진수 15 8진수 0으로 시작하는 수 015..

Back-end/Java 2023.01.30

Servlet 비즈니스 로직 처리

7장 Servlet 비즈니스 로직 처리 (1) Servlet 비즈니스 로직 처리 방법 서블릿 비즈니스 처리 작업 : Servlet이 Client로부터 요청을 받으면 그 요청에 대해 작업을 수행하는 것을 말한다. 웹 프로그램에서 대부분의 비즈니스 처리 작업은 DB 연동 작업이지만 다른 서버와 연동하여 데이터를 얻은 작업도 수행할 수 있다. ex) 웹 사이트 회원 등록 요청 처리 작업 웹 사이트 로그인 요청 처리 작업 쇼핑몰 상품 주문 처리 작업 클라이언트로부터 요청을 받음 데이터베이스 연동과 같은 비즈니스 로직 처리 처리 결과를 클라이언트에게 돌려줌 (2) Servlet의 데이터베이스 연동 : Client로부터 요청을 받으면 Servlet은 SQL문을 사용해 데이터베이스 접근하여 작업 . DAO/VO 클래..

Back-end/JSP 2023.01.24

Servlet 기초

6장 Servlet 기초 WAS(Web Application Server)가 처음 등장했을 때 웹 브라우저의 요청을 스레드 방식으로 처리하는 기술이 Servlet이다. 모든 웹 프로그램은 아래에서 서술한 기능을 바탕으로 동작한다. (1) Servlet의 세 가지 기본 기능 Client로부터 요청을 받아 비즈니스 로직을 처리하고 결과를 다시 클라이언트에게 돌려주는 과정 Client로부터 요청을 받는다. DB 연동과 같은 비즈니스 로직 처리 처리된 결과를 Client에게 돌려준다. ex. 로그인 과정 1. 사용자가 입력한 ID와 PW가 Server 쪽 Servlet으로 전송 Servlet은 메서드를 이용해 사용자가 전송한 ID와 PW를 받아 온다. 2. 사용자의 로그인 요청에 따라 DB와 연동해 사용자가 등..

Back-end/JSP 2023.01.21

Servlet 이란?

5장 서블릿 이해하기 동적 웹 페이지를 처음 구현한 것은 Servlet이므로 JSP에 대해 공부하기 이전에 Servlet 부터 이해하자. (1) Servlet이란? 서버 쪽에서 실행되면서 클라이언트의 요청에 따라 동적으로 서비스를 제공하는 자바 클래스 서블릿은 java로 이루어져있지만 독자적으로 실행되지 못하고 JSP/Servlet 컨테이너에서 실행된다. Servlet 특징 자바로 이루어져있어 자바의 특징을 가진다. 서버 쪽에서 실행되면서 기능을 수행 스레드 방식으로 실행 동적인 여러가지 기능을 제공 컨테이너에서 실행 플랫폼이 독립적으므로 컨테이너 종류에 상관없이 실행된다 보안 기능을 적용하기 쉽다 웹 브라우저에서 요청시 기능을 수행 (2) Servlet API 계층 구조와 기능 Servlet API는 ..

Back-end/JSP 2023.01.20

Git & Github 정리 (2)

1. 초기 설정 (1) github에 repository를 생성한다. (2) 로컬 저장소 생성한다. (3) 그 후 git init을 통해 local repository도 생성한다. (4) git branch -M main github은 기본 branch 이름을 main으로 하는 것을 권장하기 때문에 기분 branch이름을 main으로 바꾼다. (5) local repository 완성 2. git push - u (원격 저장소 주소) (업로드할 로컬 브랜치명) : 로컬 → 원격 저장소 업로드, 역기서 -u는 주소를 기억하라는 뜻으로 이 다음부터는 git push만 입력해도 된다. online repository에 잘 업로드 되었음을 확인할 수 있다. 3. git remote add (변수) (원격 저장소..

공부기록 2023.01.19

웹 애플리케이션

4장 웹 애플리케이션 이해하기 (1) 웹 애플리케이션 기존의 정적인 웹 애플리케이션의 기능을 그대로 사용하면서 Servlet, JSP, 자바 클래스 등을 추가하여 사용자에게 동적인 서비스 웹 컨테이너에서 실행되는 JSP, 서블릿, 자바 클래스 들을 사용해 정적 웹 프로그래밍 방식의 단점을 보완하여 서비스를 제공하는 서버 프로그램 정적 웹 애플리케이션 기능 그대로 사용 가능 웹 애플리케이션 기본 구조 : 톰캣 같은 컨테이너에서 실행되는 웹 애플리케이션은 일정한 디렉토리 구조를 갖추어야한다. 기본 구조를 갖추지 않고 컨테이너에서 웹 애플리케이션 실행시 오류가 발생한다. 웹 애플리케이션 구성 요소 구성요소 기능 만든 웹 애플리케이션 이름 웹 애플리케이션의 루트 디렉토리 다른 웹 애플리케이션 이름과 중복이 허용..

Back-end/JSP 2023.01.19

프로그램의 발전 과정, 웹 프로그래밍과 JSP

1장 프로그램의 발전 과정 웹 프로그램은 클라이언트 PC 기반 프로그램 → 클라이언트 서버 기반 프로그램 → 웹 기반 프로그램 순으로 발전해왔다. (1) 클라이언트 PC 기반 프로그램 :일반 클라이언트 PC에서 클라이언트가 직접 설치해서 사용한다. (한계점) 1. 기능이 자주 변경되는 프로그램의 경우 수시로 사용자 PC마다 프로그램을 업데이트하거나 새로 설치해야한다. 2. 만약에 클라이언트 프로그램에 데이터베이스 접속정보가 들어 있다면 정보가 쉽게 노출될 수 있어 보안에 취약하다. (2) 클라이언트 - 서버 기반 프로그램 : 기존 클라이언트가 수행하는 모든 기능을 서버에서 수행하며 클라이언트는 데이터 송신과 수신, 화면 출력만 한다. (장점) 1. 클라이언트 - 서버 기반 프로그램은 기능이 변경되어도 모..

Back-end/JSP 2023.01.19

Git & Github 정리 (1)

1. git init : 작업 폴더에서 git을 쓰고 싶으면 git init 입력 2. git add 파일명 git commit-m '메시지' : 파일 현재 상태를 기록(버전 만들기) staging area는 git add를 commit할 파일을 선택해 놓는 곳(staging area에 파일을 넣는 행위를 staging이라 한다) → git commit을 통해 repository로 옮긴다. 1) 여러 파일을 staging 하려면 git add 파일1 파일2.. 2) git add . 는 모든 파일을 staging 3) git status는 지금까지 변경된 파일, staging된 파일을 알려준다. 4) git log --all --oneline은 commit 내역 조회 3. git diff : 최근 com..

공부기록 2023.01.18

11월 4주차 공부정리

DTO(Data Transfer Object) 다른 레이어 간의 데이터 교환에 활용, 교환하는 용도로만 사용하는 객체로 별도의 로직에 포함되지 않음 각 클래스 및 인터페이스를 호출하면서 전달하는 매개변수로 사용되는 데이터 객체 스프링 부트의 예외 처리 방식 @(Rest)ControllerAdvice와 @ExceptionHandler를 통해 모든 컨트롤러의 예외를 처리한다 @ExceptionHandler를 통해 특정 컨트롤러의 예외를 처리한다. Filter 유일하게 ServletRequest, ServletResponse의 객체를 변환할 수 있음 웹 어플리케이션에서 관리되는 영역으로써 Spring Boot Framework에서 Client로 부터 오는 요청/응답에 대해서 최초/최종 단계의 위치에 존재한다...