Spring
-
AOP란?Spring/AOP 2024. 4. 14. 23:50
AOP(Aspect Oriented Programming) 란? 관점 지향 프로그래밍이라고 불리며 어떤 로직을 기준으로 핵심적인 관점(core concerns), 부가적인 관점(cross-cutting concerns)으로 나누어 모듈화 하는 방법을 말한다. AOP 예시 회원가입기능을 만들고 회원가입 기능의 성능을 확인하기 위해 소요시간이 얼마나 걸렸는지 계산하는 로직을 추가하고 싶다. public class MemberService { private MemberRepository memberRepository; @Autowired public MemberService(MemberRepository memberRepository) { this.memberRepository = memberRepositor..
-
[JPA] JPA 기본Spring/JPA 2024. 4. 14. 02:45
JPA(Java Persistence API) 란? Java ORM 기술에 대한 표준 명세로, JAVA에서 제공하는 API (Spring에서 제공X) ※ ORM(Obejcet-relational-mapping) 이란 객체 관계 맵핑 객체는 객체대로 설계, 관계형 데이터베이스는 관계형 데이터베이스대로 설계 객체와 관계형 데이터베이스를 ORM 프레임워크가 중간에 맵핑 해준다. JPA의 동작 과정 JPA는 어플리케이션과 JDBC 사이에서 동작한다. 개발자가 JPA를 사용하면 JPA 내부에서 JDBC API 를 사용하여 SQL을 호출하여 DB와 통신한다. 저장 과정 MemberDAO에서 객체를 저장하고 싶을 때 개발자는 JPA에 Member 객체를 넘기면 JPA는 아래와 같이 동작한다. 1) Member 엔티티..
-
[JDBC] JDBC로 DB 직접 연결Spring/JDBC 2024. 4. 10. 00:54
JDBC(Java Database Connectivity)란? JDBC는 Java 기반 애플리케이션의 데이터를 데이터베이스에 저장 및 업데이트하거나, 데이터베이스에 저장된 데이터를 Java에서 사용할 수 있도록 하는 Java API이다. JDBC가 없던 시절에는 Connection 연결 SQL 전 결과 응답 위 3가지 과정을 거쳤는데 만약 사용하는 DB를 변경하 애플리케이션의 코드 변경 및 그 DB를 사용하기위한 Connection 연결, SQL 전달, 결과 응답 받는 방법을 다시 익혀서 사용해야했다. JDBC는 3가지 기능을 표준 인터페이스로 정의하여 제공한다. java.sql.Connection - 연결 java.sql.Statement - SQL을 담은 내용 java.sql.ResultSet - S..
-
[Build] Build Tool - Maven vs GradleSpring/Spring Boot 2024. 4. 5. 00:25
Build 란? Build는 작성된 코드를 실제 기기에서 실행 될 수 있는 소프트 웨어로 변환시키는 과정을 의미한다. Build 과정의 세분화 라이브러리 다운로드 소스코드 컴파일 컴파일한 코드 패키징 테스트 코드 실행 product 배포 Build Tool이란? 규모가 작은 프로젝트라면 간단하지만 큰 프로젝트라면 위 과정을 수동으로 진행하면 많은 시간이 걸리게 된다. 이러한 Build 과정을 자동으로 진행 시키는것이 Build Tool이다. (+ 외부 라이브러리 버전 관리) Java에서 사용하는 Build Tool 종류 Ant - XML을 사용 - 간단하고 사용하기 쉬움 - 자유로운 빌드 단위 지정 - 복잡한 프로젝트 경우 장황해짐 - 외부 라이브러리 관리 기능이 없음 - 라이프 사이클 없음 Maven ..
-
[Spring Boot] MVC 패턴 기초(추후 심화로 수정)Spring/Spring Boot 2024. 4. 4. 02:38
MVC 패턴이란? MVC (Model - View - Controller) 패턴은 소프트웨어 설계와 아키텍처를 위한 디자인 패턴중 하나이다. 주로 사용자 인터페이스(UI) 를 가진 응용프로그램에 사용되며 Model, View, Controller로 구성요소를 작업을 처리하는 개발 방법론이다. MVC 패턴 동작 원리 User: 사용자가 웹 사이트에 접속한다. Manipulates: Controller는 사용자가 요청한 웹 페이지를 보여주기 위해 Model을 호출한다. Updates: Model은 비즈니스 로직을 통해 DB 및 파일과 같은 데이터를 제어한 후 결과를 반환한다. 이후 Controller는 Model에게 반환받은 결과를 View에 반영한다. Sees: 데이터를 받아온 View가 사용자에게 웹 페..
-
[Spring Boot] 간편 프로젝트 생성Spring/Spring Boot 2024. 4. 4. 01:01
Spring Boot 웹 프로젝트 생성 start.spring.io 에서 생성 start.spring.io에 접속한다. Category 설정 Project : 사용할 Build Tool을 선택한다 build tool 비교 자료 https://jamcoding.tistory.com/8 Language : 사용할 프로그래밍 언어를 선택한다. Spring Boot : 사용할 Spring Boot의 버전을 선택한다. 개발 중인 버전(SNAPSHOT), 정식 릴리즈되지 않은 버전(M~)이 붙는다. Project Metadata : 프로젝트의 속성정보를 설정한다. Group : 프로젝트를 정의하고 구분하게 해주는 고유한 식별자 정보, (기업 도메인 주소의 역순으로 주로 사용) Artifact : 프로젝트의 이름 N..