분류 전체보기28 스프링의 선언적 트랜잭션(@Transactional) - 왜 사용하는가 알라딘: 그림으로 배우는 스프링 6 입문 그림으로 배우는 스프링 6 입문스프링은 자바를 배울 때 보지 못했던 새로운 개념, 이해하기 어려운 용어가 많아 입문자가 배우기 어렵다. 하지만 이 책은 『스프링3 입문』과 『스프링4 입문』을 집필한 스프링 전문가인 저www.aladin.co.kr 블로그에서 트랜잭션에 대한 글을 써볼까 한다. 먼저 트랜잭션의 단어 뜻부터 알아보자. 트랜잭션이란?트랜잭션은 여러 개의 연관된 처리를 하나의 처리로 다룰 때 단위로 사용되는 용어이다. 다양한 용어로 사용되지만 이 글에서 말하는 트랜잭션은 DB 트랜잭션을 말한다. DB는 트랜잭션 기능을 제공하여 여러 개의 SQL문 실행을 '트랜잭션'이라는 처리 단위로 바꿀 수 있다. 데이터베이스의 트랜잭션을 활용하면 여러 개의 .. 2025. 1. 8. [자바 메모리 구조] - 스택 프레임(1) 스택 프레임을 이해하기 전에 변수의 종류에 대해서 먼저 알아보자. 지역변수 : 스택 프레임에서 일생을 보낸다. 따라서 스택 프레임이 사라지면 함께 사라진다. 클래스 멤버 변수 : 스태틱 영역에서 일생을 보낸다. 스태틱 영역에 한번 자리 잡으면 JVM이 종료될 때까지 고정된(static) 상태로 그 자리를 지킨다. 객체 멤버 변수 : 객체 멤버 변수는 힙에서 일생을 보낸다. 객체 멤버 변수들은 객체와 함께 가비지 컬렉터라고 하는 힙 메모리 회수기에 의해 일생을 마치게 된다. 코드를 보자. public class Start3 { public static void main(String[] args) { int i = 10; int k = 20; if(i .. 2025. 1. 7. [자바 코딩 문제집] - 문자 개수 세기 문자열에서 문자 개수를 세는 문제다. 책에서는 나에게 조금 덜 익숙한 HashMap을 사용해서 풀었는데 이 부분에 대해서 설명하려고 한다. 책 코드 public static Map countDuplicateCharacterV1(String str){ if(str == null || str.isBlank()){ return Collections.emptyMap(); } Map map = new HashMap(); for(int i=0; i (value == null) ? 1 : ++value) ); } return map;} String 클래스의 isEmpty() 메서드의 기능은 알고 있었지만 isBlank()는 잘 몰랐다. 차이점을 간략하게 정.. 2025. 1. 2. [코딩 개념 잡는 자바 코딩 문제집]를 읽어보려고 한다 알라딘: 코딩 개념 잡는 자바 코딩 문제집 코딩 개념 잡는 자바 코딩 문제집현대 프로그래밍 언어의 트렌드를 반영하면서 자바에는 타입 추론, 함수형, 옵셔널, 널 안전 스트림, 디폴트 메서드, 중첩 기반 접근 제어, 퓨처, 개선된 동시성 기능 등이 추가되었다. 300개 이상www.aladin.co.kr 예전부터 읽고 싶었지만 비싸서 못 샀던 책...이제 읽을 수 있다. 문제 풀고 블로그에 정리하는 것이 목표! 2025. 1. 2. SpringBoot, JWT - 2 saulsol/Spring_Code: 스프링 토이 플젝 GitHub - saulsol/Spring_Code: 스프링 토이 플젝스프링 토이 플젝. Contribute to saulsol/Spring_Code development by creating an account on GitHub.github.com * 프런트 애플리케이션이 따로 있고 리액트를 사용한다는 가정으로 진행했다. JWT 인증 인가 시나리오 1. 애플리케이션에서는 '/api/member/login'(인증)을 수행해서 사용자의 정보와 발행된 accessToken, refreshToken을 전달받는다. 2. 이후 인가 작업을 진행할 때 특정 API는 보호되어야 하는 경우가 있는데 (ex: 로그인이 선행되어야 사용할 수 있는 서비스) 프.. 2024. 12. 25. [자바 메모리 구조] - main() 시작 이후의 자바 메모리 public class Start { public static void main(String[] args) { System.out.println("Hello OOP"); }} 이 코드 뒤로 자바가 어떤 방식으로 메모리를 구성하는지 궁금하지 않나요?전 옛날에 자바 공부하면서 진짜 궁금해서 네이버 지식인에 올리고 그랬는데.... 본론으로 들어갑니다 ㅎㅎ.. 먼저 설명하기에 앞서 객체 지향 프로그램의 T 메모리 사용 방식부터 보자. 요런 식으로 구성이 되는데... Static 영역 : 런타임 시작 후 클래스들이 할당되는 영역 Stack 영역 : 런타임 시작 후 메서드들이 할당되는 영역 Heap 영역 : 런타임 시작 후 객체들이 생성되어 할당되는 영역 요렇게 구분할 수 있다. 1. .. 2024. 12. 17. 이전 1 2 3 4 5 다음