전체 글 (23) 썸네일형 리스트형 RDBMS, NoSQL이란 RDB란?사용자와 DB사이에서 사용자의 요구에 따라 데이터를 생성해 주고, DB를 관리하는 시스템이다.RDB란 관계형 데이터 모델에 기초를 둔 데이터베이스다.관계형 데이터 모델이란 데이터를 구성하는데 필요한 방법 중 하나로 모든 데이터를 2차원의 테이블 형태로 표현해 준다.쉽게 말하면 각 데이터를 ‘테이블’이라는 표형태의 구조에 저장한다.데이터베이스에 들어오는 값들을 순차적으로 차곡차곡 쌓아가는 방식이다.Java의 개념 중 스택의 개념과 비슷하다고 보면 좋을 것 같다.스택이란 LIFO(Last In First Out)처럼 순차적으로 값을 추가하고 삭제하는 ArrayList 같은 배열기반 컬렉션이 적합하다.이러한 구조 덕분에 함수호출이나 수식 계산에 사용된다.[MySQL을 활용한 DB 예시]RDB의 장점은.. 모놀리식 아키텍처 소개크게 보면 마이크로서비스 아키텍처는 마이크로서비스라는 작은 단위의 컴포넌트로 구성되어 있다.서비스 전체 기능을 독립된 작은 단위로 나누어 분리하고, 각각의 컴포넌트는 독립된 시스템 형태로 개발하고 운영한다.독립된 마이크로서비들은 전체 서비스와 분리해서 개발할 수 있으므로 서비스 변화에 비교적 자유롭다. 그러므로 민첩한 대응이 가능하다. 또한 독립성과 민첩성을 확보한 마이크로서비스 아키텍처는 대규모 서비스에서 여러 장점이 발현된다.보통 마이크로서비스 아키텍처와 비교해서 설명하는 것으로 모놀리식 아키텍처가 있다. 모놀리식 아키텍처란?위의 사진처럼 하나의 시스템이 서비스 전체 기능을 처리하도록 설계한 것으로, 과거부터 현재까지 흔히 볼 수 있는 아키텍처다.모놀리식 아키텍처는 전통적인 개발 방식으로 하나의 .. 경매 프로젝트 개발/TroubleShooting 내가 맡은 역할은 크게1) 상품에 대한 대분류,2) 소분류 조회,3) 사용자가 상품을 선택했을 때의 상세 정보 확인,4) 해당 상품에 대한 입찰을 구현해야 했다. 대분류나 소분류 상품 조회를 할 경우에는 세부 로직이 크게 달라질 일이 없었기 때문에 소분류 -> 대분류 -> 상세 조회 -> 입찰 -> 순서로우선순위를 정하게 되었다.사용자가 우리 서비스에 접속하게 되면 최초에 의류라는 카테고리의 상품들이 다음과 같이 보이도록 하였다.해당 페이지가 우리 서비스의 메인 페이지이며 각 사용자가 선택하는 카테고리 별 상품을 조회할 수 있도록 하였다.상품이 조회되는 조건은 다음과 같다.1) 해당 모델번호를 가진 입찰 희망 구매(최고), 판매(최저)가 각 1개씩 출력2) 이때 구매/판매는 입찰이 PROCESS인 상태.. 경매 프로젝트 기능 설계 프로젝트 진행 기간 : 24년 6월 5일 ~ 07월 30일 (9주) 우선 프로젝트 진행 순서는 다음과 같다.1. 기능 명세서 및 요구사항 작성2. DB 모델링3. 기획서, 설계서 작성4. DB 생성 및 연결5. BackEnd 개발6. 단위 테스트7. FrontEnd 개발8. 단위 테스트9. 통합 테스트 기획 및 설계 소요 기간 : 06월 5일 ~ 06월 18일(2주)우선 프로젝트의 주제에 대해서 대출, 입출금, 보험상품의 기능을 서비스하는 은행, 공항과 교통 api를 활용한 여행 커뮤니티, 우리가 실제로 사고픈 가격에 거래를 진행할 수 있는 경매 사이트가 있었다. 하지만 은행은 정해진 시간 안에 기능 구현을 한다 해도 기능 자체가 어렵기 때문에 리스크가 클 거 같다는 의견이 대부분이었고, 여행 커뮤니티는.. [Spring Boot] JPA란 JPA : 자바 표준 인터페이스로 객체와 관계형 데이터베이스 사이의 매핑을 처리하는 기술이다.주로 객체를 데이터베이스에 저장하고 검색하는 데 사용된다.이때 데이터에 해당하는 객체를 엔티티 객체라는 것으로 다루고 JPA로 이를 DB와 연동, 관리Spring Data JPA는 자동으로 객체를 생성하고 이를 통해서 예외 처리등을 자동으로 처리하는 인터페이스다.@Entity // JPA를 사용하여 데이터베이스와 연동하겠다.@Getter@Builder@AllArgsConstructor@NoArgsConstructor@ToStringpublic class Board extends BaseEntity { /* @Id는 pk(Primary Key)로 정의하는 의미 @G2neratedBalue(stra.. [Spring Boot] 스프링 부트란? [스프링 부트란?]스프링 부트는 스프링에서 파생된 여러 서브 프로젝트에서 시작해서 완전한 메인 프로젝트가 되버린 케이스이다.스프링 부트의 중요한 특징으로 자동설정이 있다.데이터베이스와 관련된 모듈을 추가하면 자동으로 데이터베이스관련 설정을 찾아서 실행한다.별도의 서버 설정 없이 개발 및 실행이 가능하다.스프링 MVC에서는 JSP 대신 Thymeleaf라는 템플릿 엔진을 활용하는 경우가 많다.또한 MyBatis도 사용 가능하지만, JPA를 주로 이용한다.스프링 부트에서는 main()메서드를 통해 단독으로 실행이 가능하고 자동으로 내장된 톰캣이 실행된다.서블릿과 스프링은 root-context, servlet-context.xml파일을 따로 만들어서 빈을 설정해주었지만,스프링 부트는 application.p.. [Spring] 스프링 프레임워크란 [스프링 프레임워크란]최초에 사용자로부터 요청한 값이 들어오게 되면 컨트롤러 → 서비스 → 뷰 순서로 진행된다.스프링 프레임워크는 객체지향의 의존성 주입기법을 적용한 객체지향 프레임워크였다.또한 자체적으로 객체를 생성하고 관리하면서 필요한 곳으로 객체를 주입해 주는 역할을 한다.스프링 프레임워크의 중요한 특징 중 하나는 다른 프레임워크들을 쉽게 결합해서 사용할 수 있다는 점이다.스프링 프레임워크가 웹이나 데이터베이스와 같이 특정한 영역을 구애받지 않고 시스템의 객체지향 구조를 만드는 데 이용된다는 성격 때문이다.이 역할들은 설정 파일이나 어노테이션을 이용해야 한다.스프링이 관리하는 객체들을 빈이라는 이름으로 불린다.→ 빈은 보통 root-context.xml이라는 파일에서 관리한다. [의존성이란??]과.. 디자인 패턴 [PRG 패턴]최초에 브라우저에서 서버로 값을 넘겨준다.(이전에 사용자가 입력한 데이터들은 GET, 입력한 데이터들을 POST방식으로 넘겨줌)브라우저의 값을 POST방식으로 암호화해서 다른 주소로 Redirect 하도록 응답브라우저에 이동할 주소를 받음브라우저에서 서버에 POST방식으로 넣어둔 값을 GET방식으로 호출서버에서 GET방식으로 처리해서 브라우저에게 전달(새로 고침을 해도 이전에 입력한 데이터를 다시 제출하지 않게 되기 때문에 중복 제출을 막는다.)@GetMapping("/carrotWrite") public String carrotWrite(HttpSession session) { if (session.getAttribute("member_id") == nul.. 이전 1 2 3 다음