반응형 전체 글67 [Spring] Spring Boot, REST API, Oracle, MyBatis, Mapper, DTO 간의 상관관계(?) 들어가며, 예전에 스프링 프로젝트를 살짝 맛보았을 때 사용했던 기술과 프레임 워크가 있었다. 그때 정리해둔 글을 가져와봤다. 정리라고 해도 그냥 용어 뜻 알기? 정도이다. 그땐 참 막막했어서 모든 것을 찾아보며 공부했었다. 현재의 나는 인프런 스프링 강의를 바탕으로 JPA 등을 사용하지만 아래의 것들도 분명 중요한 개념이기에 그때의 글을 가져와보겠다. FrameWork - Spring Boot: 자바 기반의 프레임워크로, 웹 애플리케이션 및 마이크로서비스 개발에 사용됩니다. Spring Boot는 편리한 설정과 개발환경을 제공하며, Spring 기반 애플리케이션을 빠르게 구축할 수 있게 해줍니다. REST API: REST는 Representational State Transfer의 약자로, 네트워크 아.. 2023. 11. 10. [Java] POJO란 무엇일까? 들어가며, Spring과 Java를 공부하다가 POJO 프로그래밍이라는 것을 들어봤다. POJO가 좋다고 들어본 거 같기도한데... 싶었다. 그래서 오늘은 이 POJO 가 무엇인지 파헤쳐보려한다. POJO가 무엇일까❓ POJO는 순수 Java만을 사용하여 만든 객체이므로 특정 기술이나 환경에 종속되지 않는다. 따라서, 외부 기술이나 규약의 변화에 얽매이지 않아, 보다 유연하게 변화와 확장에 대처할 수 있습니다. 이러한 POJO를 사용하여 비즈니스 로직을 구현하면 객체지향 설계를 제한없이 적용할 수 있으며, 코드가 단순해져 테스트와 디버깅 또한 쉬워진다. 이처럼 비즈니스 로직을 구현하는 데에 POJO를 적극적으로 활용하는 프로그래밍 패러다임을 POJO 프로그래밍이라고 한다. 스프링의 가장 큰 특징은 POJ.. 2023. 11. 10. [Spring] DAO(Data Access Object) 란 무엇인가... 들어가며, 현재 인프런 야생형 로드맵 첫번째인 JPA 활용편 1을 듣고 있다. Repository 개념이 나왔는데 Entity를 찾아주는 역할이라고 들었다. DAO와 비슷하다고 했다. 그런데 DAO의 개념이 헷갈려서 다시 한 번 정리하고자 한다. DAO(Data Access Object) 란?? DB의 data에 접근하기 위한 객체로 실제로 DB에 직접 접근하는 객체이다. 프로젝트의 서비스 모델과 실제 DB를 연결하는 역할을 하며, JPA에서는 DB에 데이터를 CRUD하는 Repository 객체들이 DAO라고 볼 수 있다. 이 둘은 거의 같다고 생각해도 무방하다. repotiroy는 엔티티 객체를 보관하고 관리하는 저장소이고, dao는 데이터에 접근하도록 DB접근 관련 로직을 모아둔 객체이다. 둘다 개.. 2023. 11. 8. [Spring] [퍼옴] 스프링과 스프링 부트란 무엇인가? 개념 정리 https://melonicedlatte.com/2021/07/11/174700.html 스프링(Spring), 스프링 부트(Spring Boot)란? 개념 정리 - Easy is Perfect melonicedlatte.com 2023. 11. 8. 객체지향 프로그래밍 OOP란? 들어가며, 객체지향 프로그래밍이 무엇인지 왜 객체지향 프로그래밍이 좋은지 궁금해서 알아보게되었다. OOP의 특징 1. 캡슐화 (Encapsulation) 캡슐화란 하나의 객체에 대해 그 객체가 특정한 목적을 위한 필요한 변수나 메소드를 하나로 묶는 것을 의미한다. 따라서 클래스를 우리가 만들 떄 훗날 이 클래스에서 만들어진 객체가 특정한 목적을 잘 수행할 수 있도록 사용해야할 변수와 그 변수를 가지고 특정한 액션 즉 메서드를 관련성 있게 클래스에 구성해야한다. 정보은닉 그리고 캡슐화를 하는 중요한 목적은 바로 정보은닉이다. 유저 정보를 가지고 있는 User라는 객체에서 유저의 정보가 public으로 선언되어 있다면, 누구든 접근해서 유저 정보를 변경할 수 있다. 그렇기 때문에 private로 해서 데이터.. 2023. 11. 8. [Spring] Spring boot를 사용한 REST API 들어가며, @RequestMapping을 사용하여 모든 HTTP 메소드를 처리하던 이전 방식과는 다르게, 최신 방식은 @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @PatchMapping 등을 사용한다. URI 엔드포인트는 동일하게 사용하되, 어노테이션만 다르게 설정하여 REST API를 처리한다. 또한 메소드 이름 또한 readPerson, deletePerson 과 같이 명확하게 사용하면 REST 스타일에 가깝게 코딩할 수 있다. @RestController // Rest API를 처리하는 Controller 임을 의미 @RequiredArgsConstructor @RequestMapping("/api") public class PersonCon.. 2023. 11. 5. [Spring] CRUD 란 무엇인가 들어가며, 맨 처음 시작하는 Todo, 게시판 프로젝트를 할 때 가장 기본적으로 사용되는 기능인 CRUD를 초보자도 쉽게 이해할 수 있도록 설명해보자. CRUD란? : 대부분의 컴퓨터 소프트웨어가 가지는 기본적인 데이터 처리 기능 SQL의 기본 4대 요소 REST API에서는 CRUD 이런 작업들을 method 라고 부름 REST API는 웹의 통신 규약인 http를 이용하기 때문에 http가 가지고 있는 메소드를 이용 Create 생성 실제 웹 애플리케이션은 폼을 이용해서 데이터를 전송할 때 수정 생성 삭제를 할 때 모두 post를 사용하지만 본래 post는 생성을 위해 준비된 기능이였다. http에서 create를 위해 준비된 메소드는 post (메소드) Read 읽기 get (메소드) http에서 .. 2023. 11. 5. [Spring] Mapper란? 들어가며, 오늘은 스프링과 스프링 부트를 사용하기 위해 알아야하는 Mapper가 무엇인지 알아보겠다. Mapper란? Mapper는 MyBatis에서 DB와 객체 사이의 매핑을 담당하는 인터페이스다. Mapper 인터페이스를 작성하여 DB의 테이블과 객체 간의 매핑 작업을 수행할 수 있다. 매핑이란? 해당 값이 다른 값을 가리키도록 하는 것 Mapper인터페이스란? Mybatis 매핑XML에 기재된 SQL을 호출하기 위한 인터페이스이다. Mybatis3.0부터 생겼다. Mapper인터페이스를 사용하지 않을 경우 SqlSession을 등록해줘야 한다. DAO인터페이스와 인터페이스를 구현한 DAO클래스를 생성해줘야한다. Mapper인터페이스를 사용하지 않았을 때는 네임스페이스 + “.” + SQL ID로 지.. 2023. 11. 4. [Spring] MyBatis란? 쿼리 기반 웹 애플리케이션을 개발할 때 가장 많이 사용되는 SQL 매퍼(Mapper) 프레임워크이다. MyBatis 를 사용하지 않고 직접 JDBC를 이용할 경우 문제점: 개발자가 반복적으로 작성해야 할 코드가 많고, 서비스 로직 코드와 쿼리를 분리하기가 어렵다. 또한 커넥션 풀의 설정 등 개발자가 신경 써야 할 부분이 많아 여러 가지 어려움이 있다. 따라서, JDBC를 이용해서 직접 개발하기보다는 마이바티스와 같은 프레임워크를 사용하는 게 일반적이다. JDBC를 이용하여 프로그래밍을 하는 방식: 클래스나 JSP와 같은 코드 안에 SQL문을 작성하는 방식 따라서 SQL의 변경 등이 발생할 경우 프로그램을 수정해야 한다. 유연하지 않다, 코드가 복잡하게 섞여 있어서 가독성도 떨어짐 마이바티스에서는 SQL을.. 2023. 11. 4. REST API 와 Http... 대체 무엇인가? REST API의 특징을 잘 정리해놓은 블로그 :https://gmlwjd9405.github.io/2018/09/21/rest-and-restful.html 네트워크 OSI 7계층 7계층응용 계층HTTP, FTP, SMTP, POP3, IMAP, Telnet 등과 같은 프로토콜이 있다.6계층표현 계층 5계층세션 계층데이터가 통신하기 위한 논리적인 연결4계층전송 계층TCP프로토콜3계층네트워크 계층라우터(도로의 길을 잘 찾아갈 수 있게하는)2계층데이터 링크계층허브 등1계층물리계층통신 케이블 우리가 여기서 중요하게 볼 개념은 7계층의 HTTP이다. 그렇다면 REST API와 HTTP는 무슨 상관이 있는걸까?개념을 정리해보자. REST APIREST API 설계 시 가장 중요한 항목URI는 정보의 자원을 .. 2023. 11. 4. 이전 1 2 3 4 5 6 7 다음 반응형