분류 전체보기 117

스프링 웹개발 용어정리:: Spring Interceptor

Interceptor란 컨트롤러에 들어오는 요청 (HttpRequest)와 컨트롤러의 응답(HttpResponse)를 가로채는 역할을 한다. 인터셉터는 관리자만 접근할 수 있는 관리자 페이지에 접근하기 전에 관리자 인증을 하는 용도로 활용된다. 물론 servlet의 앞, 뒤에서 HttpRequest와 HttpResponse를 가로채는 Filter와 그 역할이 유사한데, Filter와 interceptor는 분명히 다르다. Filter와 Interceptor 의 차이 호출시점 Filter는 DispatcherServlet 이 실행되기 전 Interceptor는 DistpatcherServlet이 실행된 후 설정위치 Filter는 web.xml Interceptor는 spring-servlet.xml 구현 ..

웹개발 2020.10.24

1. Github ?

※이 포스트는 git bash가 설치되어있음을 전제하여 설명하고 있습니다. 1-1. Github 개념 개발을 하다보면 그런 말을 보곤 한다. "누구나 사용하는 깃허브" "쉽게 원격저장소에 올리고 팀원들과 프로젝트를 쉽게 공유하는 깃허브" 말은 좋다! 그런데 ... 도대체 이용해볼까~ 하면 뭔지 하나도 모르겠다. 아무튼 개념은 알겠어. 클라우드 저장소 같은 느낌이지만 개발할 때 용량이 크면 시간도 오래걸리는 파일을 다운받아서! 쓰는 것보다는, 간단한 명령어만으로 바로 파일을 다운받을 수 있다... 또한, 내가 그간 한 작업물을 모두가 볼 수 있도록 공개할 수도 있고,(현재는 비공개도 무료로 가능하다고 한다.) 팀원들과 동시에 작업할 수 있고 ... 개념은 알겠어. 그러면 github을 시작하려면 뭐가 필요..

GitHub 2020.10.20

스프링 웹개발 용어정리:: Spring & Spring Boot

스프링과 스프링부트의 차이점은 무엇일까. 아직은 별다른 차이점을 느껴보진 못했는데, 기본적인 개념이 부족하기 때문에 눈치채지 못한 것이란 생각이 들어 정리하기로 하였다. 그러나 모든 곳에서 프레임워크 (Framework) 라는 단어를 사용하는데, 우선은 이것부터 정리하는게 순서같다. Framework를 library 와 비교해서 설명하는 포스팅이 많았는데, Library는 특정 기능을 하는 코드의 집합이다. 개발자는 Library를 포함시켜서 원하는 기능을 사용한다. Framework는 이 라이브러리를 포함하는 개념이고, How to에 해당한다. 코드를 어떻게 실행하는지? 개발을 진행할 때 근간이 되는 환경 및 구조라고 할 수 있다. Spring은 자바 플랫폼을 위한 오픈소스 어플리케이션 프레임워크이다...

카테고리 없음 2020.10.06

스프링 웹개발 용어정리:: Web Service?

웹 서비스(Web Service) - 네트워크 상에서 서로 다른 컴퓨터들 간에 상호작용을 하기 위한 소프트웨어 시스템. - 서비스 지향적 분산 컴퓨팅 기술의 일종 - 웹서비스의 모든 메시징에는 주로 XML이 사용됨 - SOAP, WSDL, UDDI 등의 주요 표준기술로 이루어져있음 > SOAP(Simple Object Access Protocol) : XML과 HTTP등을 기본으로 하여 다른 컴퓨터에 있는 데이터나 서비스를 호출하기 위한 통신규약(Protocol) > WSDL (Web Service Description Language) : 웹서비스에서 제공하는 기능들(서비스 오퍼레이션에 해당함)을 외부에서 이용할 수 있도록 그 사용방법을 알려주는 인터페이스 언어. XML 기반으로 작성된다. > UDDI..

웹개발 2020.10.06

스프링 웹개발 용어정리:: DAO 란?

DAO Data Access Object의 약자로 간단히 Database의 data에 접근을 위한 객체이다. Database에 접근을 하기위한 로직과 비즈니스 로직을 분리하기 위해서 사용한다. 웹 서버는 DB와 연결하기 위해 매번 커넥션 객체를 생성하는데, 이것을 해결하기 위한 것이 커넥션풀(ConnectionPool)이다. ConnectionPool이란 connection 객체를 미리 만들어두고 그것을 가져가 사용하거나, 다 쓴 후 반환하는 것인데... 사용자가 접속하여 한 커넥션만 이용하고 종료하는 것이 아니고, 말그대로 액팅하는 모든 것에서 커넥션이 발생한다. 그렇기에 커넥션풀은 커넥션을 만드는 오버헤드를 효율적으로 이용하기 위해 DB에 접속하는 객체를 제한하고, 모든 페이지에서 그 객체만을 이용하..

웹개발 2020.09.28

스프링 웹개발 용어정리:: VO와 DTO의 차이점

공통점 1) 동일하게 데이터를 저장하여 사용할 때 필요하다. Vo (Value Object) - 데이터 그 자체로 의미 있는 것을 담고 있다. - Read-Only 속성의 객체이다. - 간단한 독립체(Entity)를 의미하는 작은 객체이다. - 관계데이터베이스의 레코드에 대응하는 자바 클래스이다. DTO (Data Transfer Object) - 전송되는 데이터를 담고 있는 컨테이너이다. - DTO의 경우 같은 시스템이 아닌 다른 시스템으로 전달하여 작업을 처리하는 객체이다. - 레이어간의 통신 용도로 오가는 객체를 의미하기도 한다. - 현재의 개발환경에서 데이터는 다음과 같은 흐름으로 이동한다. ▲ 서버: Database Column Data - DTO - API(JSON or XML) -> Clie..

웹개발 2020.09.28

스프링 웹개발 용어정리:: Mybatis 용어 정리

MyBatis ? 객체 지향 언어인 자바의 관계형 데이터베이스 프로그래밍을 쉽게 할 수 있도록 도와주는 개발 프레임 워크이다. JDBC를 통해 데이터베이스에 엑세스 하는 작업을 하나로 캡슐화 하여 일반 SQL 쿼리, 저장 및 고급 매핑을 지원하여 모든 JDBC 코드 및 매개 변수의 중복 작업을 제거한다. MyBatis에서는 프로그램에 있는 SQL 쿼리를 한 구성파일 안에 구성하여 프로그램 코드 및 SQL을 분리할 수 있다는 장점을 가지고 있다. 어렵게 이론적으로 쓰여있지만 MyBatis를 사용하면 개발이 쉬워진다는 의미이다. 복잡한 쿼리나 다이나믹한 쿼리에 강하지만, 비슷한 쿼리는 남발하게 되는 단점이 있다. 프로그램 코드와 SQL 쿼리의 분리로 코드를 간결하게 하고 유지 및 보수가 쉬워진다.

웹개발 2020.09.27