본문 바로가기

SpringBoot24

스프링 DB 스프링 DB Persistence Framework 데이터는 Persistence하다 (영속성) 어플리케이션을 사용할 때에, 사용했던 데이터가 저장되고, 없어지면 안 된다 즉, 프로그램이 꺼진다고 데이터가 없어지면 안 된다 이렇게 프로그램이 꺼져도 데이터가 유지될 수 있도록 영속성을 가지게 해주는 것이 Persistence Framework이다 SQL Mapper SQL 쿼리를 개발자가 직접 작성한다 쿼리 수행 결과와 객체를 매핑한다 (쿼리를 가지고 Spring Boot와 DB가 연결이 된다) ORM (Object Relation Mapping)이 있다 java 함수를 사용하면 자동으로 SQL이 만들어진 DB 테이블과 객체를 매핑한다 (쿼리 없이 간접적으로 Spring Boot에 있는 객체와 DB에 있는.. 2023. 8. 31.
스프링 테스트 코드 스프링 테스트 코드 Test 폴더에서 테스트를 진행한다 @SpringBootTest class WeatherApplicationTests { @Test void contextLoads() { } } @SpringBootTest : 테스트를 위한 자바 파일이라는 것을 명시 @Test : 이 어노테이션이 없으면 테스트를 할 수 없다 Junit 테스트 코드를 작성할 때에 자주 사용하는 라이브러리다 세부적으로 테스트를 하는 라이브러리다 assert 종류 설명 assertSame(a,b) 객체 a, b가 같은 객체임을 확인하고 객체 자체를 비교한다 assertEquals(a,b) 객체 a, b가 일치함을 확인하고 객체에 정의된 equals를 통해 비교한다 asserArrayEquals(a,b) 배열 a와 b가 일.. 2023. 8. 30.
스프링 패키지 구조 스프링 패키지 구조 기본적인 설명 Controller 에서는 클라이언트가 요청할 수 있도록 URL과 request Parameter 또는 request body를 설정해 놓는다 Service 에서는 Controller에서 받은 요청을 중간에서 로직으로 처리를 해준다 Repository 에서는 Service에서 만든 로직 바탕으로, DB에서 필요한 데이터를 쿼리문을 통해서 DB에 저장, 수정, 삭제 그리고 조회를 해준다 일반적인 패키지 구조 aop AOP 관련된 부분 - 핵심적인 관점, 부가적인 관점으로 나누어 보고 그 관점을 기준을 각각 모듈화 하는 것 config 각종 configuration 클래스로 구성이 되어 있다 controller HTTP 요청과 응답을 위한 클래스다 @Controller 어노.. 2023. 8. 29.
스프링 구동시키기 스프링 구동시키기 build.gradle 빌드 관리 도구로서, maven 또는 gradle을 선택할 수 있다 (gradle 더 최신) build.gradle은 빌드 구성 스크립트다 gradle에서 어떻게 빌드를 할지, 미리 써 놓은 스크립트다 build.gradle은 전에 선택한 의존성 (Dependency)와 같은 스프링 부트 프로젝트의 빌드와 관련된 설정 정보를 담고 있다 IDE는 이것을 읽어서, 스프링 부트 프로젝트를 설정한다 WeatherApplication에 들어간다 @SpringBootApplication public class WeatherApplication { public static void main(String[] args) { SpringApplication.run(WeatherAp.. 2023. 8. 28.
[스프링 부트 핵심 가이드] Chapter 3. 개발 환경 구성 스프링 부트 핵심 가이드 [스프링 부트 핵심 가이드] Chapter 3. 개발 환경 구성 자바 JDK 설치 (Java Development Kit) 자바 개발을 위해 설치가 필요한 키트다 OpenJDK 를 검색해서 JDK를 설치한다 https://jdk.java.net/java-se-ri/11-MR2 - Java 11 버전이지만, 왼쪽 창에 다른 버전들도 다운로드 받을 수 있다 환경 설정 윈도우 [제어판] - [시스템 및 보안] - [시스템]에 들어간다 [고급 시스템 설정]을 들어간다 [고급 시스템 설정]에서 [환경 변수] 버튼을 클릭한다 [시스템 변수]에서 [새로 만들기] 버튼을 클릭한다 JDK가 설치된 위치를 찾아 bin 경로를 넣어 준다 개인적으로 bin 경로를 넣지 않아도, 작동하고 있다 인텔리제.. 2023. 8. 28.
[스프링 부트 핵심 가이드] Chapter 2. 개발에 앞서 알면 좋은 기초 지식 스프링 부트 핵심 가이드 [스프링 부트 핵심 가이드] Chapter 2. 개발에 앞서 알면 좋은 기초 지식 2.1 서버 간 통신 어플리케이션을 업데이트 또는 유지보수 할 때에, 블로그, 카페, 메일 등의 기능을 통합을 하면, 어플리케이션 자체를 닫아야 한다 즉 업데이트 또는 유지보수 할 때에는 유저들이 어플리케이션 자체를 못 사용한다는 것 MSA, Microservice Architecture를 통해 위의 상황을 해결했다 블로그, 카페, 메일 같은 기능들을 기능별로 따로 프로젝트를 만들어서 개발을 하는 것이다 그렇게 되면, 블로그 기능을 업데이트 또는 유지보수 할 때에 다른 기능들은 사용할 수 있게 된다 MSA를 사용하여 어플리케이션을 개발할 때에는 서버 간 통신을 해야 한다 그렇게 나온 프로토콜이 HT.. 2023. 8. 27.