java7 [JAVA] 싱글스레드(Single-Thread)와 멀티스레드(Multithreading)의 차이점 및 개념 싱글스레드(Single-thread)와 멀티스레드(Multithreading)란 무엇인가? 컴퓨터 프로그램에서 '싱글스레드(Single-thread)'와 '멀티스레드(Multithreading)'는병렬 처리와 동시 실행을 가능하게 하는 중요한 개념이다. 이 두 개념은 프로그램이 어떻게 작업을 처리할지, 자원을 어떻게 효율적으로 사용할지를 결정짓는 핵심적인 차이를 나타낸다. 싱글스레드는 하나의 실행 흐름만을 사용해 순차적으로 작업을 처리하는 방식이다.멀티스레드는 여러 개의 실행 흐름을 동시에 사용해 병렬로 작업을 처리하는 방식이다. 목차 싱글스레드(Single-thread)란 무엇인가?멀티스레드(Multithreading)란 무엇인가?싱글스레드와 멀티스레드의 차이점 1. 싱글스레드(Single-thre.. 2024. 12. 29. List.of , 예외 처리 목차 [ List.of();]1. List.of();1-1. List.of 사용 예시 11-2. List of 사용 예시 2 [예외처리]2. 예외 처리 Checked Exception2-1. 예외 처리 Unchechked Exception2-2. 예외를 사용하지 않고, 'true or false'를 리턴하는 메소드로 수동으로 예외 처리를 해주면?2-3. throws 키워드를 쓰는 이유2-4. 예외 처리를 회피하기만 해서는 안된다2-5. Custom Exception 1. List.of(); 최신 자바에서 추가 된 문법List에 .of이라는 스태틱 메소드가 있다는 것.이 스태틱 메소드를 호출하게 되면 처음부터 add1, add2가 들어간 리스트를 만들 수 있다.그렇게 만들면 일일이 하나하나 추가.. 2024. 10. 25. [Spring] JPA와 Entity JPA (Java Persistence API)와 Entity는 자바에서 데이터베이스와 상호작용하기 위한 ORM(Object-Relational Mapping) 기술의 핵심 개념이다. [ JPA (Java Persistence API) ] 1. 개요JPA는 자바에서 객체를 관계형 데이터베이스에 영속화(persist)하기 위한 표준 API이다.ORM(Object-Relational Mapping) 기술을 통해 객체 지향 프로그래밍과 관계형 데이터베이스 간의 간극을 메워준다.JPA를 사용하면 SQL 쿼리를 직접 작성하는 대신, 자바 객체를 사용하여 데이터베이스 작업을 수행할 수 있다.2. 주요 기능CRUD 기능 : JPA는 Create, Read, Update, Delete 작업을 쉽게 수행할 수 있는.. 2024. 10. 7. [Java] synchronized 와 임계구역 [ Synchronized ] synchronized는 자바에서 멀티스레딩 프로그래밍 시 데이터의 일관성을 보장하기 위해 사용되는 키워드이다. 여러 스레드가 동시에 동일한 자원에 접근할 때 발생할 수 있는 문제를 해결하는 데 도움을 준다. synchronized의 주요 개념:임계 구역 (Critical Section): 여러 스레드가 동시에 접근할 수 있는 코드 블록을 의미한다. 이 구역에 대한 접근을 제어하여 데이터의 무결성을 유지한다.사용 방법:메서드 수준 : synchronized를 메서드 선언 앞에 붙여 사용한다. 이 경우, 해당 메서드는 한 번에 하나의 스레드만 실행할 수 있다.public synchronized void someMethod() { // 임계 구역} 블록 수준 : 특.. 2024. 10. 7. [Java] StringBuilder [ StringBuilder란? ] 1. 가변 문자열 (Mutable String): String 객체는 불변(immutable)이다. 즉, 한 번 생성된 문자열은 변경할 수 없다. 하지만 StringBuilder는 가변(mutable) 문자열로, 기존 문자열을 수정할 수 있다. 예를 들어, String을 사용하면 문자열을 수정할 때마다 새로운 객체가 생성된다. 반면, StringBuilder는 내부에서 기존 문자열을 변경하므로 성능이 더 좋다.2. 성능:문자열을 반복적으로 추가하거나 수정할 때 StringBuilder를 사용하면 성능이 향상된다. 특히 많은 문자열 조작이 필요한 경우 유용하다.3. 주요 메서드:append(String str) : 문자열을 추가한다.insert(int index, S.. 2024. 10. 7. [Spring] IoC(제어의 역전), DI(의존성 주입) , Mock 객체 좋은 코드를 위한 IoC(제어의 역전), DI(의존성 주입) , Mock 객체 좋은 코드란? - 논리가 간단해야 한다.- 중복을 제거하고 표현을 명확하게 한다.- 코드를 처음보는 사람도 쉽게 이해하고 수정할 수 있어야 한다.- 의존성을 최소화해야 한다.- 새로운 기능을 추가 하더라도 크게 구조의 변경이 없어야 한다. IoC(제어의 역전)와 DI(의존성 주입)는 스프링 프레임워크의 핵심 개념으로, 애플리케이션의 구성과 객체 생성을 관리하는 방식이자 좋은 코드 작성을 위한 Spring의 핵심 기술 중 하나라고 할 수 있다. 이 두 가지 개념은 스프링이 제공하는 유연성과 테스트 용이성을 높이는 데 중요한 역할을 한다. [ IoC(제어의 역전) ] IoC는 애플리케이션의 제어 흐름을 개발자가 아닌 프레임.. 2024. 10. 6. 이전 1 2 다음 728x90 반응형