[Spring] 게시판(Board) 만들기
·
Back-End/Back-End
[작성일: 2023. 04. 23] 게시판(Board) 만들기게시판 메인 테이블 생성각 row(게시물)마다 달라져야 하는 번호가 key가 되어야 하며, 이를 채번하는 2가지 방법이 있음.가장 큰 번호를 찾아 +1 하기단점 : 게시물이 많아질수록 채번 속도가 느려짐.시퀀스에서 채번하기물리 Object인 시퀀스에서 숫자를 하나씩 꺼내옴.시퀀스는 꺼내갈 경우 1씩 증가함.   테이블 및 시퀀스 생성-- 시퀀스를 만들 때는 seq를 붙이는 것이 일반적임.CREATE SEQUENCE seq_board nocache;-- 테이블 생성 시 TB 또는 TBL을 붙이는 경우가 많음.-- 단, 대형 사이트의 경우는 거의 붙이지 않음.CREATE TABLE tbl_board( BNO INT(10), TITLE VARCHAR..
[Spring] 3-tier 구조
·
Back-End/Back-End
[작성일: 2023. 04. 18] 3-tier 구조Spring Project는 3-tier로 구성함.   Presentation Tier화면계층화면을 보여주는 기술을 사용하는 영역컨트롤러에서 사용자의 요청에 맞는 응답처리 진행HTML엔진(thymeleaf), HTML이 담당하는 영역화면 구성이 이 영역   Business Tier순수한 비즈니스 로직을 담고 있는 영역고객이 원하는 요구사항을 반영하는 계층으로 매우 중요한 영역이 영역의 설계는 고객의 요구사항과 정확하게 일치해야 하며, 서비스 영역임.   Persistence Tier영속 계층 또는 데이터 계층데이터를 어떤 방식으로 보관하고 사용할 것인가에 대한 설계일반적으로 DBMS를 많이 이용하지만, 상황에 따라 원격 호출 기술 접목   각 영역은 독..
[Spring] Front-Controller, @GetMapping, @PostMapping, 에러처리
·
Back-End/Back-End
[작성일: 2023. 04. 17] MyBatisDB를 다루는 라이브러리SQL을 다루는 방식에는 annotation 방식과 XML 방식이 있음.SQL이 복잡하거나 길어지는 경우 annotation보다 XML 을 이용하는 방식 선호     Front-Controller사용자의 request는 Front-controller인 DispatcherServlet을 통해 처리HandlerMapping은 Request의 처리를 담당하는 Controller를 찾기 위한 존재여러 객체 중 @RequestMapping Annotation이 적용된 것을 기준으로 판단적절한 컨트롤러를 찾아내면 HandlerAdaptor를 통해 해당 컨트롤러 동작Controller는 Request를 처리하는 비지니스 로직을 작성View(htm..
[Spring] Spring Framework
·
Back-End/Back-End
[작성일: 2023. 04. 15]  Framework뼈대나 근간을 이루는 코드들의 묶음개발자들은 개인별 능력자가 크고, 개발자 구성에 따라 프로젝트 성패가 좌우됨.이런 상황을 극복하기 위한 코드의 결과물이 프레임워크라고 할 수 있음.프로그램의 기본적인 흐름이나 구조는 정해져 있고, 여기에 자신의 코드를 추가하는 방식으로 개발함.    Framework의 장점개발에 필요한 구조를 이미 코드로 구현해 놓았기 때문에 실력이 부족한 개발자라고 하더라도 일정 부분 완성한 상태에서 필요한 부분을 조립하는 형태의 개발이 가능함.기업 입장에서는 일정한 품질이 얻어지는 결과물을 기대 가능함.개발자 입장에서는 완성된 구조에 자신의 코드를 개발해서 넣기 때문에 개발 시간을 단축시킬 수 있음.     Spring Frame..
[JSP] 내장 객체, GET과 POST
·
Back-End/Back-End
[작성일: 2023. 04. 07] 내장 객체객체화 없이 사용할 수 있는 객체JSP가 서블릿으로 변환될 때 웹 컨테이너 가 자동으로 메모리에 할당request    웹 브러우저의 요청 정보 저장response    웹 브러우저 요청에 대한 응답 정보 저장out    JSP 페이지에 출력할 내용 정보를 저장session    하나의 웹 브라우저의 정보를 저장하기 위한 세션 정보 저장(로그인 정보 등)pageContext    JSP 페이지에 대한 정보 저장config    JSP 페이지에 대한 설정 정보 저장exception    JSP 페이지에서 예외가 발생한 경우 사용하는 객체     GET과 POST전송할 데이터량이 적고 노출되어도 될 경우 GET 방식 사용전송할 데이터량이 많거나 중요한 정보일 경우..
[JSP] 쿠키와 세션
·
Back-End/Back-End
[작성일: 2023. 04. 05] 쿠키(Cookie)웹 브라우저가 보관하고 있는 데이터웹 서버에 요청을 보낼 때 쿠키를 헤더에 담아서 전송함.웹 브라우저는 쿠키가 삭제되기 전까지 웹 서버에 쿠키를 전송함.    쿠키의 장단점클라이언트의 특정 폴더에 정보를 저장하므로 서버의 부하를 줄임.정보가 사용자 PC에 저장되기 때문에 보안의 위협 존재데이터 저장 용량에 한계가 있음.일반 사용자가 브라우저 내 기능 "쿠키 차단"을 사용하면 쿠키 사용 불가    동작 방식쿠키 생성웹 서버에 쿠키를 생성하고 쿠키에 응답 데이터를 담아서 웹 브라우저에 전송함.   쿠키 저장웹 브라우저는 응답 데이터에 있는 쿠키를 메모리나 파일에 저장함.   쿠키 전송웹 브라우저는 쿠키 요청이 있을 때마다 웹 서버에 전송함.웹 서버는 쿠키..