Til45 [내일배움캠프] TIL : 관점 지향 프로그래밍 AOP AOPAOP(Aspect-Oriented Programming, 관점 지향 프로그래밍)은 제가 이해한 대로 표현하자면"여러 클래스나 메소드에서 반복적으로 사용되는 코드(CrossCutting Concerns, 흩어진 관심사)를 분리하여 모듈화하는 것"이라고 말할 수 있을 것 같습니다.이를 통해 코드의 가독성을 올리고 유지보수가 좀 더 쉬워질 것이라고 생각합니다.AOP의 주요 개념-. Aspect: 흩어진 관심사를 모듈화한 단위입니다. -. Join Point: AOP가 적용될 수 있는 지점을 말합니다. 메서드 호출, 필드 접근, 예외 처리 등이 해당 지점이 될 수 있습니다.: Spring AOP에서는 메서드 실행만이 조인 포인트로 지원됩니다. -. Pointcut: AOP를 적용할 실제 지점을 정의하는 .. 2024. 11. 18. [내일배움캠프] TIL : RawJPA 기본 쿼리 파일 만들기 (Query Mapper)Query Mapper를 사용하여 SQL 쿼리를 관리하여 코드의 가독성과 유지보수성을 높입니다.MyBatisJava 기반의 SQL Mapper Framwork로 객체 지향 프로그래밍 언어와 관계형 데이터베이스(SQL)을 쉽게 연결할 수 있도록 도와주는 ORM 도구입니다.MyBatis의 특징-. SQL Mapper FramworkSQL을 XML파일이나 어노테이션으로 정의하여 데이터베이스와 Java 객체를 쉽게 매핑합니다.-. 직접적인 SQL 제어개발자가 직접 SQL을 작성함으로써 SQL의 복잡한 로직을 제어하고 최적하할 수 있기 때문에 복잡한 쿼리 작업을 ORM 프레임워크보다 더 자유롭게 작성할 수 있습니다.-. XML Mapper와 annotationXML Ma.. 2024. 11. 14. [내일배움캠프] TIL : Transaction TransactionTransaction은 데이터베이스 관리에서 데이터의 일관성을 보장하기 위해 여러 데이터 작업들을 하나의 단위로 묶어서 처리하는 방법으로 성공 시 모든 작업이 수행되고 실패 시 모든 작업이 취소되어 원래의 상태로 돌아게 되어 데이터의 일관성, 안정성, 무결성을 유지할 수 있습니다.ACID1. Atomicity (원자성)-. 모든 작업이 완전히 수행되거나 아니면 전혀 수행되지 않아야 합니다.-. 트랜잭션 내의 모든 작업은 하나의 원자적 단위로 보고 하나라도 실패할 경우 모든 작업이 취소되어야 합니다.-. 예) 계좌 이체 작업 시 한 계좌에서 출금되어 다른 계좌로 입급되는 과정이 발생하는데 이 과정에서 하나의 작업이라도 실패할 경우 출금과 입금 작업 자체가 전부 취소되어야 합니다.2. C.. 2024. 11. 13. [내일배움캠프] TIL : Projection Projection프로젝션은 JPA로 조회 시 원하는 컬럼을 가져오는 방법입니다.보통 Spring Data JPA에서 사용하는 방식과 QueryDSL에서 사용하는 방식으로 나뉩니다. 프로젝션은 데이터 최적화 및 간결한 데이터 구조를 제공해 성능 향상과 유지보수성에서 큰 장점이 있지만, 수정이 불가능한 읽기 전용 구조와 프로젝션 사용이 많아질수록 복잡해지는 쿼리 관리라는 단점이 있습니다. Base : Store.java@Entity@Table(name = "store")public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(length = 20, unique =.. 2024. 11. 13. 이전 1 2 3 4 ··· 12 다음