1.BoardRepositry 만들기
@Repository
어노테이션:@Repository
어노테이션이 붙은 클래스는 스프링의 IoC 컨테이너에서 관리하는 빈(Bean)으로 등록됩니다. 즉, 스프링이 이 클래스의 인스턴스를 생성(new)하여 IoC 컨테이너에 저장합니다.
- 이 어노테이션은 주로 데이터베이스 접근을 위한 예외 처리(예: SQLException을 DataAccessException으로 변환)를 쉽게 할 수 있도록 도와줍니다.


- 빈 생성자 만들기

실행하면


@Autowired
어노테이션:@Autowired
어노테이션은 IoC 컨테이너에 있는 빈을 주입받을 때 사용됩니다. 즉,EntityManager
같은 데이터베이스 관련 객체를 IoC 컨테이너에서 찾아와BoardRepository
클래스에 주입합니다.
- Spring은
@Autowired
가 붙은 필드에 해당 타입의 빈을 자동으로 주입해줍니다. 이로 인해 개발자는 객체 생성과 관련된 코드(예:new
키워드 사용)를 작성할 필요가 없습니다


2.Transactional
@Transactional
은 주로 Java의 스프링 프레임워크(Spring Framework)에서 사용되는 어노테이션(annotation)으로, 메소드나 클래스에 트랜잭션(Transaction)을 적용할 때 사용됩니다. 이 어노테이션을 통해 데이터베이스 연산이 트랜잭션 안에서 수행되도록 보장할 수 있습니다. 이를 통해 데이터의 일관성과 무결성을 유지하고, 특정 작업이 모두 성공하거나 모두 실패하도록 할 수 있습니다.주요 개념:
- 일의 최소 단위: 트랜잭션은 작업의 최소 단위로 간주됩니다. 트랜잭션 내의 모든 작업은 하나의 작업으로 처리되며, 이 작업이 완전히 성공하거나 완전히 실패해야 합니다.
- 고립성(Isolation)이 시작됨: 트랜잭션 내의 데이터는 다른 트랜잭션이 접근할 수 없도록 고립됩니다. 이는 데이터의 일관성을 유지하고, 동시성 문제를 방지하기 위함입니다. 예를 들어, 한 사용자가 특정 데이터에 접근하여 수정 중이라면, 해당 트랜잭션이 완료될 때까지 다른 사용자는 동일한 데이터에 접근할 수 없습니다.
- 유효성 검사: 트랜잭션이 시작되기 전에 데이터의 유효성을 검증하는 것이 중요합니다. 이를 통해 불필요한 트랜잭션 발생을 줄일 수 있으며, 이는 시스템의 성능 최적화에 도움이 됩니다.

- Transactional 두 가지 목적
※OLAP(Online Analytical Processing),OLTP(Online Transaction Processing)
OLAP(Online Analytical Processing)와 OLTP(Online Transaction Processing)는 데이터베이스 시스템의 두 가지 주요 개념으로, 각각 다른 목적과 용도를 가지고 있습니다. 이 두 시스템은 데이터 처리 방식, 구조, 그리고 사용 사례에 따라 크게 구분됩니다.
OLTP (Online Transaction Processing):
- 목적: OLTP 시스템은 실시간으로 다수의 사용자 요청을 처리하는 데 중점을 둡니다. 주로 일상적인 비즈니스 운영을 지원하며, 빠른 응답 시간과 높은 처리 속도가 중요합니다.
- 특징:
- 거래 처리: OLTP 시스템은 간단하고 빈번한 트랜잭션(예: 주문 처리, 입출금, 예약 등)을 처리합니다.
- 데이터 구조: 데이터베이스는 정규화된 구조를 사용하여 데이터 중복을 최소화하고, 데이터 무결성을 유지합니다.
- 작업 유형: INSERT, UPDATE, DELETE와 같은 CRUD(Create, Read, Update, Delete) 작업이 주로 이루어집니다.
- 사용자: 다수의 사용자(예: 고객, 직원)가 동시에 시스템을 사용하며, 실시간으로 데이터를 입력하고 조회합니다.
- 성능: 높은 처리 성능과 빠른 응답 시간이 중요합니다. 주로 회계, 재고 관리, 주문 처리와 같은 업무에 사용됩니다.
- 예시: 은행의 ATM 시스템, 온라인 쇼핑몰의 주문 시스템, 항공사의 예약 시스템.
OLAP (Online Analytical Processing):
- 목적: OLAP 시스템은 대규모의 데이터 분석을 위해 설계되었습니다. 주로 의사 결정 지원을 위한 데이터 분석, 보고서 작성, 데이터 마이닝 등에 사용됩니다.
- 특징:
- 데이터 분석: OLAP 시스템은 복잡한 쿼리와 다차원적인 데이터 분석(예: 매출 분석, 시장 동향 분석 등)을 수행합니다.
- 데이터 구조: 데이터는 다차원적인 구조로 저장되며, 일반적으로 비정규화된 형태로 유지됩니다. 데이터 웨어하우스와 큐브 형식으로 관리됩니다.
- 작업 유형: SELECT 쿼리와 같은 복잡한 읽기 작업이 주로 이루어집니다.
- 사용자: 주로 데이터 분석가, 관리자, 경영진이 의사 결정을 위해 사용합니다.
- 성능: 분석 작업의 성능이 중요하며, 대량의 데이터를 처리하는 능력이 요구됩니다. 데이터가 시간이 지나도 자주 변하지 않으며, 주기적인 배치 처리로 데이터를 갱신합니다.
- 예시: 경영 보고 시스템, 비즈니스 인텔리전스(BI) 도구, 매출 분석 시스템.
요약:
- OLTP는 실시간 트랜잭션을 처리하고, OLAP는 대규모 데이터를 분석합니다.
- OLTP는 데이터 입력과 빠른 처리 속도가 중요하며, OLAP는 복잡한 쿼리와 분석 성능이 중요합니다.
- OLTP 시스템의 데이터베이스는 정규화되어 있으며, OLAP 시스템은 비정규화된 다차원 데이터를 사용합니다.
3.Insert 하기

- insert 테스트하기


※ insert 가 되었다.(테이블 안에 query가 들어감)

4.Client → 순차적으로 확인하기

이름이 같아야함




강사님 쪽지시험
- 테이블 명 post_tb 바꾸기

※ 대문자는 언더바+소문자로 만들어진다.

2..title -> subtitle, content -> postContent (엔티티 변수명)
board


BoardRepository

boardRepository

3.글쓰기가 잘 동작하게



끝!!
Share article