장뽕뽕의 개발일기
close
프로필 배경
프로필 로고

장뽕뽕의 개발일기

  • 분류 전체보기 (153)
    • Java (61)
      • Springboot (28)
      • Architecture (0)
      • Algorithm (17)
      • Trouble-Shooting (3)
      • Basic (13)
    • Security (20)
      • Practice (4)
      • System (7)
      • Network (4)
      • Application (5)
    • Mobile (0)
      • Android (0)
      • Flutter (0)
    • JavaScript (16)
      • Node.js (16)
    • Linux (8)
    • Network (6)
    • Docker (4)
    • Project (5)
      • SecuriSuite (5)
    • Certificate (2)
      • 정보처리기사 (1)
      • 정보보안기사 (1)
    • Legacy (27)
      • JS+PHP+SQL (27)
    • 루트권한 없는 나의 하루 (4)
  • 홈
Spring Boot - 통합 테스트

Spring Boot - 통합 테스트

이전에 단위 테스트를 했다면,이번엔 스프링을 실제로 띄우고 DB 연동까지 하는 통합 테스트를 해보겠습니다..순수 자바 코드를 통해서 테스트를 하지 않고 스프링을 구동해야 되는 경우@SpringBootTest 어노테이션을 사용합니다.그리고 테스트 과정에서 쿼리문을 실제 commit 시키지 않고 테스트가 끝난 뒤에 Rollback시키려면@Transactional 어노테이션을 사용합니다. MemberServiceIntegrationTest>> package hello.hellospring.service;import hello.hellospring.domain.Member;import hello.hellospring.repository.MemberRepository;import org.assertj.core.a..

  • format_list_bulleted Java/Springboot
  • · 2025. 3. 3.
  • textsms
Spring Boot - JDBC를 이용해 리포지토리를 DB로 변경

Spring Boot - JDBC를 이용해 리포지토리를 DB로 변경

개방-폐쇄의 원칙(OCP, Open-Closed Principle)란, 확장에는 열려있고 수정 및 변경에는 닫혀있습니다.무슨 뜻이냐면..이때까지 회원관리 프로젝트를 하면서 데이터베이스가 정해지지 않은 상태에서 개발을 하게 되어서메모리에 회원정보를 저장시켰는데, 이 저장하는 부분을 메모리가 아닌 DB로 변경하겠다는 곳에 있습니다.변경을 하는 과정에서, DI를 이용하여 기존 코드에는 전혀 손대지 않고, 설정만으로 구현 클래스를 변경할 수 있습니다. 기존에 MemberService에서 MemberRepository 인터페이스에구현체가 MemoryMemberRepository가 있었다면, 이건 놔두고구현체를 JDBCMemberRepository를 만들어줘서 스프링 빈으로 사용할 겁니다. 먼저, build.gra..

  • format_list_bulleted Java/Springboot
  • · 2025. 3. 1.
  • textsms
Spring Boot - H2 데이터베이스 설치

Spring Boot - H2 데이터베이스 설치

H2는 자바로 작성된 오픈 소스 내장형 관계형 데이터베이스 관리 시스템입니다.주로 개발 및 테스트 목적으로 사용되며, 인메모리 데이터베이스로도 활용될 수 있습니다.https://www.h2database.com/html/main.html H2 Database EngineH2 Database Engine Welcome to H2, the Java SQL database. The main features of H2 are: Very fast, open source, JDBC API Embedded and server modes; in-memory databases Browser based Console application Small footprint: around 2.5 MB jar file size   ..

  • format_list_bulleted Java/Springboot
  • · 2025. 2. 28.
  • textsms
Spring Boot 회원관리 6 - 웹 MVC

Spring Boot 회원관리 6 - 웹 MVC

마지막으로 만들어놓은 기능을 사용하여웹에서 데이터를 전달받고, 저장한 데이터를 뿌려주게끔 만들어볼게요.. 우선 제일 처음 보일 Home 페이지 >> HomeController>>package hello.hellospring.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;@Controllerpublic class HomeController { @GetMapping("/") public String home(){ return "home"; }} Home.html >> 회원 기능 회원 가..

  • format_list_bulleted Java/Springboot
  • · 2025. 2. 27.
  • textsms

Spring Boot 회원관리 5 - 스프링 빈과 의존관계

이전 게시글에 이어서.. 스프링 컨테이너에MemberController --> MemberService --> MemberRepository요런 비즈니스 로직을 요구할 때 스프링 빈을 등록한 뒤, 첫 번째로 컴포넌트 스캔을 이용해 자동으로 의존관계를 설정해 볼게요.. 우선 Controller를 만든 후.. package hello.hellospring.controller;import hello.hellospring.service.MemberService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;@Controllerpublic class MemberC..

  • format_list_bulleted Java/Springboot
  • · 2025. 2. 27.
  • textsms
Spring Boot 회원관리 4 - 회원관리 테스트

Spring Boot 회원관리 4 - 회원관리 테스트

먼저 테스트를 위해 껍데기를 만듭니다..  회원가입의 경우 @Test void 회원가입() { //given Member member = new Member(); member.setName("member"); //when Long saveId = memberService.join(member); Member findMember = memberService.findOne(saveId).get(); Assertions.assertThat(member.getName()).isEqualTo(findMember.getName()); //then } 생성한 객체와 생성 후 서비스에서 가져온 객체의 I..

  • format_list_bulleted Java/Springboot
  • · 2025. 2. 27.
  • textsms
  • navigate_before
  • 1
  • ···
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • ···
  • 11
  • navigate_next
공지사항
  • 장뽕뽕 사이트를 오픈합니다.
  • 개발 일기 사이트 이전 안내
전체 카테고리
  • 분류 전체보기 (153)
    • Java (61)
      • Springboot (28)
      • Architecture (0)
      • Algorithm (17)
      • Trouble-Shooting (3)
      • Basic (13)
    • Security (20)
      • Practice (4)
      • System (7)
      • Network (4)
      • Application (5)
    • Mobile (0)
      • Android (0)
      • Flutter (0)
    • JavaScript (16)
      • Node.js (16)
    • Linux (8)
    • Network (6)
    • Docker (4)
    • Project (5)
      • SecuriSuite (5)
    • Certificate (2)
      • 정보처리기사 (1)
      • 정보보안기사 (1)
    • Legacy (27)
      • JS+PHP+SQL (27)
    • 루트권한 없는 나의 하루 (4)
최근 글
인기 글
최근 댓글
태그
  • #java
  • #php
  • #springboot
  • #Spring
  • #phpMyAdmin
  • #dothome
  • #SQL
  • #javascript
  • #html
  • #algorithm
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바