Study

· Study
Nest JS 란Nest.js 는 효율적으고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기 위한 프레임워크이다.JacaScript를 사용하고, TypeScript로 구축되어 있어 서버 애플리케이션 개발 시 발생할 수 있는 오류들을 사전에 방지할 수 있기에 안정적인 코드를 작성할 수 있다는 특징이 있다. 더보기Node.jsChrome V8 JacaScript 엔진으로 빌드 된 JavaScript 런타입이다.즉, 노드를 사용해 다양한 JavaScript 애플리케이션을 실행할 수 있으며 서버를 실행하는 데 제일 많이 사용된다.- Node.js는 JavaScript를 서버에서도 사용할 수 있도록 만든 프로그램이다.- Node.js는 V8이라는 JavaScript 엔진 위에서 동작하는 자바스크립트 런..
· Study
메모 .......또 메모 1. AWS 접속 먼저 AWS 사이트 들어가서 로그인 해주고, https://aws.amazon.com/ko/ 클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services aws.amazon.com 2. EC2 대시보드 페이지로 접속 EC2 클릭하기 3. 오른쪽 상단의 토글에서 아시아 태평양(서울) 선택 그리고 EC2 대시보드에서 인스턴스 시작 4. EC2 이름 입력 내가 만들 EC2 인스턴스 이름을 입력 5. 애플리케이션 및 OS 이미지 설정 Ubuntu 20.04 LTS 선택 6. 인스턴스 유형 선택 7. 키 페어 생성 생성한 키는 외부에 노출되지 않도록 주의하자. 8. 네트워크 설정 9. 인스턴스 시작 10. 생성된 인스턴스 확인 인스턴스 이름 확인한 ..
· Study
🌐 Cloud Computing ⓐ 기존 서버의 방식 - 서버실과 같은 곳에 컴퓨터를 배치 - 컴퓨팅 능력이 더 필요하면 같은 공간에 더 많은 컴퓨터를 추가 or 컴퓨터 성능 업그레이드 ⓑ 기존 방식의 한계 - 주기적인 유지 관리가 필요 - 공간의 한계 -> 데이터 센터의 등장 -> 유휴자원 대여 🌐 Cloud ⓐ 클라우드의 단점 - 클라우드 서비스 종속되어 서비스에 영향을 미침 💁🏻‍♀️ 어떻게 문제가 발생하나? 운영 환경 자체가 클라우드 제공자에게 종속되어 버림 결국 클라우드 서비스에 문제가 생기면 내가 배포하고 관리하는 환경에도 영향을 미친다 !! 🙆🏻‍♀️ 클라우드의 목표 이런 클라우드는 모든 것을 서비스화 하는 것을 목표로 한다. ⓑ 대표적인 클라우드 서비스의 형태 3가지 1. Saas - 클라..
· Study
JDBC란? ◼ Java Database Connectivity "자바 데이터베이스 연결" ◻ Java 언어를 이용하여 데이터베이스에 접근할 수 있도록 도와주는 자바 표 준 API - 자바 언어를 통해 DB에 접근 가능 - SQL 쿼리 실행 가능 자바 표준 인터페이스인 JDBC가 필요한 이유? 1. 새로운 데이터베이스의 사용법을 배워야 한다. - 각 데이터베이스마다 사용법이 다름 - 학습의 몫은 개발자에게 있음 2. 프로덕션 코드의 변경 범위가 커질 수 있다. - DIP(의존 역전 원칙) 위배 - 기대하는 기능은 같아도, 코드 변경 범위가 클 수 있음 Java 진영에서는 이러한 문제를 해결하기 위해 표준 인터페이스인 JDBC를 만들게 된다. JDBC 동작 흐름 "Java Appilcation에서 JDBC..
· Study
MemberController.java @RestController @RequestMapping("/v5/members") @Validated public class MemberController { private final MemberService memberService; private final MemberMapper mapper; public MemberController(MemberService memberService, MemberMapper mapper) { this.memberService = memberService; this.mapper = mapper; } @PostMapping public ResponseEntity postMember(@Valid @RequestBody Member..
· Study
🍃 서비스 계층 API 계층에서 전달받은 클라이언트의 요청 데이터를 기반으로 실질적인 비즈니스 요구사항을 처리하는 계층 목표 스프링의 DI(Dependency Injection)를 이용하여 API 계층과 비즈니스 계층을 연동하고, API 계층에서 전달받은 DTO 객체를 비즈니스 계층의 도메인 엔티티(Entity) 객체로 변환해서 전달해보자. "API 계층과 서비스 계층을 연동한다는 의미는 무엇일까?" API 계층에서 구현한 Controller 클래스가 서비스 계층의 Service 클래스와 메서드 호출을 통해 상호작용한다는 것을 의미한다. 🍃 Service의 의미 - 애플리케이션의 관점으로 보면 도메인 업무 영역을 구현하는 비즈니스 로직과 관련이 있다. - 애플리케이션의 비즈니스 로직을 처리하기 위한 서비..
· Study
스프링의 핵심 스프링은 자바 언어 기반의 프레임워크 자바 언어의 가장 큰 특징 - 객체 지향 언어 스프링은 객체 지향 언어가 가진 강력한 특징을 살려내는 프레임워크 스프링은 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와주는 프레임워크 좋은 객체 지향 프로그래밍이란? 다형성 (Polymorphism) 사전적인 의미로는 하나의 객체가 여러가지 타입을 가질 수 있는 것을 말한다. 제대로 이해하기 위해 다형성을 실세계게 비유해보자. (실제로는 1:1 매칭 X..) 실세계의 역할과 구현으로 세상을 구분해보자. 예를 들어 운전자와 자동차가 있을 경우, 운전자는 자동차가 변경되었더라도 운전하는 데 있어 영향을 받지 않는다. 그 이유는 운전자(클라이언트)는 자동차의 내부 구조를 알지 않아도 된다. 즉, 역할과 구..
· Study
2. 스프링 부트에서 JPA로 데이터베이스 다루기 웹 서비스 개발 시엔 자연스레 데이터베이스를 다뤄야 하는 상황을 겪게 된다. 에전에는 iBatis(현재 MyBatis)와 같은 SQL 매퍼를 이용해서 데이터베이스의 쿼리를 작성했다. 그러다 보니 실제로 개발하는 시간보다 SQL을 다루는 시간이 훨씬 더 많았다. 현재 우리는 JPA라는 자바 표준 ORM(Object Relational Mapping) 기술을 통해 관계형 데이터베이스를 이용하는 프로젝트에서 객체지향 프로그래밍을 할 수 있게 되었다. MyBatis, iBatis는 ORM이 아닌 SQL Mapper이다. ORM은 객체를 매핑하는 것이고, SQL Mapper은 쿼리를 매핑하는 것이다. JPA란? 현대의 웹 애플리케이션에서 관계형 데이터베이스 (RD..
jeonniu
'Study' 카테고리의 글 목록