본문 바로가기

전체 글

(24)
Spring Framework의 특징과 장점 1. 스프링 프레임워크(Spring Framework) 스프링 프레임 워크란 자바 엔터프라이즈 개발을 편하게 해주는 오픈 소스 경량급 애플리케이션 프레임워크. 먼저, 프레임워크와 라이브러리를 간단하게 비교한 사례로 유튜브 얄팍한 코딩사전 : MVC 웹 프레임워크가 뭔가요?(https://www.youtube.com/watch?v=AERY1ZGoYc8) 프레임워크는 건물의 기초 골격과 수도, 전기 난방이 설치된 채로 사용자가 원하는대로 집을 개조하고 꾸밀 수 있게 제공하는 것을 말하고 라이브러리는 각각 개별적인 기능들(문짝이나 욕조 등의 부속품)이라고 한다면 프레임 워크는 라이브러리등을 가져와서 기초적인 제품 골격을 갖춘 상태를 말한다. = 가져다 쓰는것이 '라이브러리', 기본틀로 삼아서 그 위에 뭘 덧붙..
DAO, DTO에 대해 알아보자 DAO DTO는 앞서 정리된 MVC 패턴에서 Model에 대한 작업이다. DTO를 통하여 상태의 값을 주고 받으며, 영속 저장된 데이터와의 통신을 위해 DAO를 사용한다. DTO DTO는 Data Transfer Object의 약자. 계층간 데이터 교환을 위한 자바빈즈. 여기서 계층이란 컨트롤러의 뷰, 비지니스 계층, 퍼시스턴트 계층을 의미. 일반적으로 DTO는 로직을 가지고 있지 않고, 순사한 객체. 필드와 getter, setter를 가진다. 추가적으로 toString(), equals(), hashCode()등의 Object메소드를 오버라이딩 할 수 있다. 데이터 테이블에 직접적으로 영향이가는 클래스를 사용할 경우, 다른 사람이 코드를 변경하다 실수 했을 때 데이터베이스에 발생할 수 있는 오류를 예..
MVC 패턴에 대해 알아보자 MVC MVC는 Model - View - Controller의 약자이다. Model : 모델은 뷰가 렌더링하는데 필요한 데이터이다. 데이터관련, 데이터형식을 지정, 저장하고 불러오는 작업에 대한 코드가 입력된다. 예를들면 사용자가 요청한 상품목록이나, 주문내역에 해당한다. View : 웹 애플리케이션에서 뷰(View)는 실제로 보이는 부분이며 모델을 사용해 렌더링을 한다. 웹의 경우 html과 css로 구현하는 요소로 볼 수 있으며, JSP, JSF, PDF, XML 등으로 결과를 표현한다. Controller : 컨트롤러는 사용자의 액션에 응답하는 컴포넌트이다. 컨트롤러는 모델을 업데이트하고, 다른액션을 수행한다. 프로그래밍적 요소가 입력된다. MVC 패턴을 사용하는 이유 웹사이트를 제작하는데 모든작..
[SPRING] 7. API-POST, PUT, DELETE 1. POST 2. put 3. Delete -끗-
[SPRING] 6. API-GET 1. API Application Programming Interface의 줄임말로 응용 프로그램에서 사용할 수 있도록, 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻함. 2. REST Representational State Transfer 의 줄임말로 하나의 URI는 하나의 고유한 리소스를 대표하도록 설계된다는 개념에 전송방식을 결합해서 원하는 작업을 지정하는 것을 뜻함. 좀 더 쉽게 풀어서, 주소에 명사, 요청방식에 동사를 사용함으로써 의도를 명확히 하는것을 의미함. REST에 쓰이는 동사는 JPA에서 나온CRUD를 지칭하며, Create(POST)/Read(GET)/Update(PUT)/Delete(DELETE)로 요청한다. 예시 GET /writers → 강의..
[SPRING] 5. Lombok, DTO 1. 배울부분 2. Lombok Lombok Lombok은 자바 프로젝트를 진행하는데 거의 필수적으로 사용하는 메서드(getter, setter 등등)를 자동생성해줌으로써 코드를 절약할 수 있도록 도와주는 플러그인이다. (설치해서 써야한다. 그건알아서 검색요망) 첨부 이미지 따라 활성화 할 수 있다. 2_1. 사용하기 첨부 이미지와 같이 getter함수가 들어가있지 않을경우 모든 get함수들은 먹통이됩니다. lombok함수를 사용하여 Annovation하나로 이 getter함수를 자동생성 할 수 있다 . 롬복을 이용하여 필요한 생성자를 자동으로 만들어서 사용할 수 있다. 2. DTO DTO DTO는 Data Transfer Object로 read, update함에 있어서 Writer 클래스 즉 데이터 테..
[SPRING] 4. JPA-2 1. CRUD CRUD란 정보관리의 기본 기능을 뜻하며 생성(Create), 조회(Read), 변경(Update), 삭제(Delete) 이다. 2. Service 더보기 ※ 객체 지향 프로그래밍 (스프링 구조) - 상세내용은 추후 글로 정리 예정입니다 1. Controller 클라이언트의 요청을 받음. 요청에 대한 처리는 Service로 요청. 클라이언트에 응답. 2. Service Controller로부터 받은 클라인트 요청 처리. DB 정보가 필요할 시 Repository로 요청. 3. Repository DB 관리 (연결 및 해제, 자원관리). DB CRUD 작업 처리. ※ Controller와 Service를 구분하는 이유 중복되는 코드가 생기기 때문이다. 비즈니스 로직 코드가 컨트롤러에 구현되어..
[SPRING] 3. 생성일자, 수정일자 1. 상속 상속이란, 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것. 상속을 사용하면 보다 적은양의 코드로 새로운 클래스를 작성할 수 있고, 코드를 공통으로 관리할 수 있기 때문에 코드의 추가 및 수정이 용이하다. 상속의 사용은 코드의 재사용성을 높히고 코드의 중복을 제거하여 프로그램의 생산성과, 유지보수에 크게 도움을 준다. 상속의 구현방법은 '새로 작성하는 클래스' + 'extends' + '상속받으려는 클래스' 로 적어주면 된다. 2. 생성일자, 수정일자 @MappedSuperclass : 클래스 상속시 상속해주는 클래스의 멤버변수를 클래스로 인식 Annotation(주석) @EntityListeners : ()의 Entity를 주시 AuditingEntityListener.class : ..