전체 글(122)
-
[Network] WAS(Web Application Server)
주로 데이터베이스 서버와 같이 수행되는 미들웨어로, 복잡한 분산 시스템에서 이 기종 간에 통신 및 데이터 관리가 가능하도록 해준다. 웹 서버만으로 단독으로 처리할 수 없는 DB 조회와 비즈니스 로직 처리와 같은 동적 데이터 처리를 담당한다. JSP, Servlet 구동 환경을 제공해주기 때문에 JSP를 통해 Java언어로 SQL문을 제어하고 DB에 접근할 수 있다. package com.ict.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import java.util.Scanner; public class JDBC { public stat..
2022.03.31 -
[Network] Cookie와 Session
쿠키는 사용자가 방문한 웹사이트에서 사용자의 브라우저에 전송하는 작은 텍스트 조각이다. key(쿠키이름)-value(쿠키값) 쌍으로 이루어져 있는 쿠키는 사이트를 방문한 사용자 웹 브라우저의 내부 저장소에 저장된다. HTTP 통신의 특성 상 웹 브라우저가 서버에 request하면 서버는 요청에 response하고 연결이 끊어지지만, 발급된 쿠키는 지정한 만료 시간까지 클라이언트의 로컬 저장소에 저장이 되어있다. 쿠키가 있으면 로그인한 사용자가 브라우저를 끄더라도, 쿠키의 만료 시간만큼 사용자의 로그인 상태를 유지할 수 있다. 쿠키는 사용자가 삭제할 수 있고, HTTPS가 아닌 HTTP 프로토콜을 사용하는 경우 외부인이 중간에서 쿠키의 값을 가로챌 수 있지만 서버를 여러개 쓰더라도 쿠키값을 공유할 수 있는..
2022.03.30 -
[Network] Http methods : GET과 POST
사용자가 URL을 입력하면 웹 클라이언트가 웹 서버에게 URL을 요청하고, 웹 서버는 화면 구성에 필요한 파일을 전달한다. 이 웹 서버는 비대해질 시 WAS(JSP)와 프론트(HTML, CSS, JS) 서버로 분리된다. 이벤트가 발생되면 클라이언트는 필요한 시점에 백엔드 서버에게 API를 요청한다. API는 DB와 통신한 후 적절한 정보를 클라에게 응답한다. HTTP Method로 API 통신을 할 수 있다는 것은 알겠는데, CRUD의 관점에서 Create에 해당하는 메소드가 GET, Read에 해당하는 메소드가 POST인 것도 알겠는데.. 언제 GET을 쓰고 언제 POST를 써야하지?라고 생각해보면 답을 낼 수가 없었다. 앞으로 더 알아가봐야겠지만, 수업 내용을 나름의 스토리를 붙여 정리해본 것이 아래..
2022.03.29 -
[Network] API, RESTful API
웹클라이언트가 서버에 url을 요청하면, 서버는 요청에 따라 적합한 처리를 해서 응답을 준다. 클라이언트의 요청이 어떤 요청인지 구분할 수 있도록, 구분할 수 있는 체계를 API라고 부르며, 서버와 클라이언트는 API로 통신한다. API는 서버 개발자가 개발하고, 클라이언트 개발자는 그 API를 사용한다. API로 요청과 응답을 할 때에는 데이터도 같이 담긴다. (ex. 로그인 요청 시 클라에서 서버에게 아이디와 비밀번호 데이터 전송 -> 서버는 데이터를 받아 로그인 기능을 수행) 즉, API에는 클라의 요청을 어떤 요청인지 구분하고 적절한 처리를 하는 기능과 함께, 데이터를 주고 받는 기능도 들어간다. 소프트웨어가 서버에게 요청을 보낼 때는 CRUD의 관점에서 바라볼 수 있으며, 이 4가지 요청은 개발..
2022.03.29 -
[JavaScript] 우아하게 이벤트 바인딩하는 방법
이벤트란, 브라우저에서 일어나는 사용자의 입력 작업이나 시스템 상황의 변화 등의 사건이다. 바인딩이란? 서로 묶어서 연결해준다는 뜻이다. 이벤트 바인딩이란, 이벤트와 이벤트 실행 시 어떤 일이 벌어질지 알려주는 함수(콜백 함수)와 묶어서 연결해 준다는 뜻이다. 이때의 콜백함수를 이벤트 핸들러라고 한다. JavaScript에서는 3가지 방법으로 이벤트를 바인딩할 수 있다. 1. HTML요소의 attribute에 이벤트 핸들러 대응 2. DOM 요소의 property로 이벤트 핸들러 대응 3. addEventListener 메소드를 이용하여 요소(EventTarget)에 이벤트를 바인딩하고 이벤트 핸들러 지정 (가장 권장되는 방법) ①자바스크립트로 함수를 작성하고, html 요소의 속성으로 함수를 등록하는 ..
2022.03.27 -
[Git] 새로운 repository로 연결하기
1. 현재 연결된 repository 확인 git remote -v 2. 특정 repository에 연결되어있을 경우 아래와 같은 문구가 뜸 origin https://github.com/developedbyssony/Repository이름.git (fetch) origin https://github.com/developedbyssony/Repository이름.git (origin) 3. 일단 연결 끊기. 코드 실행 후 다시 연결된 repository를 확인해보면, 아무 문구도 뜨지 않는다. git remote remove origin 4. 깃 페이지에서 새로운 repository만들고 터미널에 아래의 코드 입력 git remote add origin https://github.com/developedb..
2022.03.23