일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 비트 #바이트 #이진수
- aws #아키텍트 #과정 #vpc #인프라 구축 #amazon sns #server #less #architecture
- aws #아키텍트 #과정 #vpc #인프라 구축 #haproxy #round robin #process #high ability #auto scailling #app server #launch template
- aws #아키텍트 #과정 #vpc #인프라 구축 #db #장애조치 #reand only #replica #events
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #웹개발
- aws #아키텍트 #과정 #vpc #인프라 구축 #alb #load balancer #t.g #target #group #haproxy #high ability #db #replica #region
- 공간복잡도 #공간자원 #캐시메모리 #SRAM #DRAM #시간복잡도
- aws #아키텍트 #과정 #vpc #인프라 구축 #rds #replica #복제본 #aurora #database #고가용성
- aws #아키텍트 #과정 #vpc #인프라 구축 #auto scailling #lauch template #ec2 instace #private #subnet
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #딥러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스
- 프로세스 #CPU #시공유 #커널
- aws #아키텍트 #과정 #vpc #인프라 구축
- 쓰레드 #쓰레드풀 #프로세스
- aws #아키텍트 #과정 #vpc #인프라 구축 #s3 #bucket #객체 스토리지 #objects storage #events #upload #알림
- aws #아키텍트 #과정 #vpc #인프라 구축 #rds #endpoint #cloudwatch #monitoring
- aws #아키텍트 #과정 #vpc #인프라 구축 #sqs #trigger #python3.9 #패키지 #
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #KDT #기본문법 #데이터베이스 #Computer #Science #CPU #메모리
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #OSI #ISO #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #DBMS #Oracle #MongoDB #아키텍쳐 #DB
- aws #아키텍트 #과정 #vpc #인프라 구축 #t.g #target group #alb #application #load #balancer #web #server
- aws #아키텍트 #과정 #vpc #인프라 구축 #aurora #database #rds #rdbs #load #balancer #web #page #haproxy
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #딥러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #DBMS #Oracle #MongoDB #아키텍쳐 #DB
- aws #아키텍트 #과정 #vpc #인프라 구축 #s3 #bucket #객체 #스토리지 #isci #이미지 #업로드
- aws #아키텍트 #과정 #vpc #인프라 구축 #sqs #message #queue #sns구독
- 업로드 #lambda #함수 #모바일 이미지 #썸네일 이미지
- aws #아키텍트 #과정 #vpc #인프라 구축 #haproxy #고가용성 #테스트 #alb #application #load balancer #application
- aws #아키텍트 #과정 #vpc #인프라 구축 #ec2 #instance #launch #template #생성 #ami #amazone #machine #image
- aws #아키텍트 #과정 #vpc #인프라 구축 #second nat #gateway #routing table #route53 #고가용성 #private subnet #
- aws #아키텍트 #과정 #vpc #인프라 구축 #php #alb #application #load #balancer #security #group #igw #ec2 #vpc #virtual #private #cloud
- 썸네일 #이미지
- Today
- Total
목록Spring (56)
요리사에서 IT개발자로
Entity란 JPA에서 관리되는 클래스이며 객체를 의미한다.Entity클래스는 DB의 테이블과 매핑되어 JPA에 의해 관리된다.@Entity // JPA가 관리할 수 있는 Entity 클래스 지정@Table(name = "memo") // 매핑할 테이블의 이름을 지정public class Memo { @Id private Long id; // nullable: null 허용 여부 // unique: 중복 허용 여부 (false 일때 중복 허용) @Column(name = "username", nullable = false, unique = true) private String username; // length: 컬럼 길이 지정 @Column(name = "c..
ORM : Object - Relational Mapping 객체와 DB의 관계를 매핑 해주는 도구이다. Object : 객체지향언어 (자바, 파이썬)Relational : 관계형 데이터 베이스(H2, MySQL)JPA : Java Persistence API JPA는 Java ORM 기술에 대한 표준명세이다. JPA는 애플리케이션과 JDBC 사이에서 동작된다.JPA를 사용하면 DB연결 과정을 직접 개발하지 않아도 자동 처리해준다.객체를 통해 간접적 DB를 다루기에 매우 쉽게 DB 작업을 처리한다. 하이버네이트(Hibernate)JPA는 표준명세이며이를 실제로구현한 프레임 워크 중 표준이 하이버 네이트이다. 스프링 부트에서는 기본적으로 하이버네이트 구현체를 사용한다.
IoC(제어의 역전) , DI(의존성 주입)객체지향의 SOLID원칙 & GoF의 디자인 패턴과 같은 설계원칙 및 디자인 패턴이다. IoC는 설계원칙에 해당DI는 디자인 패턴에 해당 좋은 코드의 정의논리가 간단해야한다중복을 제거하고 표현이 명확해야한다코드를 처음 보는사람도 쉽게 이해하며 수정이 가능해야한다.의존성을 최소화 해야한다.새로운 기능 추가 시 크게 구조변경이 없어야한다.Spring은 개발자가 Java를 사용하여위와 같이 좋은 코드를 작성할 수 있게 도와준다. IoC와 DI는 좋은 코드 작성을 위한 Spring의 핵심 기술 중 하나이다.IoC는 DI로도 알려져 있다 => DI패턴을 사용하여 IoC 설계 원칙을 구현하고 있다. Controller가 각각 Service 1을 생성하여 사용한다.Repo..
서버 개발자들은서버에서의 처리과정을 크게Controller, Service, Repository 로 분리하였다.Controller클라이언트의 API 요청을 받는다.요청에 대한 로직 처리는 Service에게 전담한다.(Request데이터가 있다면 Service에 같이 전달한다.)Service에서 처리 완료된 결과를 클라이언트에게 응답한다.ServiceDB를 저장 하거나 조회가 필요할 때는 Repository에게 요청한다.RepositoryDB를 관리(연결, 해제, 자원관리)합니다.DB의 CRUD 작업을 처리한다.클라이언트에게 API요청을받고Service에 받아온 데이터와 함께 요청을 넘긴다. DB관리의 CRUD작업은 Repository에게 전달 하여 처리 후DB에 저장한다.
애플리케이션 서버에서 DB에 접근 하는 작업DB에 연결하기 위한 커넥션을 연결SQL을 작성한 후 커넥션을 통해 SQL요청요청한 SQL에 대한 결과를 응답받는다기존에 사용하던 서버를 변경하면서버에서 작성했던 DB연결 오직들을 전부 수정해야한다.위와 같은 문제를 해결하기 위해서 JDBC 표준 인터페이스 등장했다.JDBC(Java Database Connectivity) = DB에 접근할 수 있는 Java에서 제공하는 API기존 서버드라이버에서 다른 서버로 변경이 필요할 때 드라이버만 교체하면된다. JDBC 등장으로 DB교체가 편해졌으나여러가지 작업을 직접 작성해야하는 번거로움을 해결하기위해커넥션 연결, sttement 준비 및 실행, 커넥션 종료 등의반복적이고 중복되는 작업들을 대신 처리해주는것이JDBC ..
DTO(Data Transfer Object)란데이터 전송 및 이동을 위해 생서외는 객체Client에서 보내오는 데이터를 객체로 처리할 때 사용서버의 계층간 이동에 사용 DB와의 소통을 담당하는 Java클래스를 그대로 반환하지않고DTO로 변환한 후 반환할 때 사용한다 Request의 데이터를 처리할 때 사용하는 RequestDto, Response를 사용할 때의 객체는 ResponseDto라는 이름을 붙여서 DTO클래스 만들 수 있다(조직에 따라 규칙이 다를 수 있음)
@PostMapping("/form/model") @ResponseBody public String helloRequestBodyForm(@ModelAttribute Star star) { return String.format("Hello, @ModelAttribute. (name = %s, age = %d) ", star.name, star.age); }@ModelAttribute에너테이션을 사용하여 HTTP 내에 Body데이터를 받아올 Star star객체를 선언@RequestParam 에너테이션으로 데이터를 하나씩 받아오기 힘들 때@ModelAttribute를 사용하면 Java의 객체로 데이터를 받아올 수 있다.@PostMapping("/form/json") @ResponseBody..
// [Request sample] // GET http://localhost:8080/hello/request/star/Robbie/age/95 @GetMapping("/star/{name}/age/{age}") @ResponseBody public String helloRequestPath(@PathVariable String name, @PathVariable int age) { return String.format("Hello, @PathVariable. name = %s, age = %d", name, age);}@PathVariable데이터를 받기위해서 /star/{name}/age/{age} 이처럼 URL경로에서 데이터를 받고자하는 위치의 경로에 {} 중괄호를 사용한다.(@P..
Jackson이란JSON데이터 구조를 처리해주는 라이브러리이다.Object를 JSON타입의 String으로Json타입의 String을 Object로 변환해줄 수 있다. Spirng 3.0 버전 이후 Jackson과 관련된 API를 제공함으로우리가 직접 소스코드를 작성하여 JSON데이터를 처리하지 않아도 자동으로 처리해준다.Object TO JSON@Test@DisplayName("Object To JSON : get Method 필요")void test1() throws JsonProcessingException { Star star = new Star ("Robbie", 95); ObjectMapper objectMapper = new ObjectMapper(); //Jac..
MVC란 Model -View- Controller의 약자Model데이터와 비즈니스 로직을 담당데이터베이스와 연동하여 데이터를 저장, 불러오기 등의 작업을 수행 View 사용자 인터페이스를 담당사용자가 보는 화면과 버튼, 폼 등을 디자인하고 구현한다.ControllerModel과 View 사이의 상호작용을 조정 및 제어한다.사용자의 입력을 받아 Model에게 전달, Model의 결과를 바탕으로 View를 업데이트 한다. MVC패턴은 소프트웨어 구성요소를 분리하고 코드의 재사용성과 유지보수를 높인다.Spring MVC란Spring Web MVC는 Servlet API 기반으로 구축된 독창적 웹프레임워크. Spring MVC는 중앙에있는 DispatcherServlet이 요청을 처리하기 위한 공유 알고리즘을..